// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.28.1
// 	protoc        v3.19.4
// source: ultipa.proto

package ultipa

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 ResultType int32

const (
	ResultType_RESULT_TYPE_UNSET ResultType = 0
	ResultType_RESULT_TYPE_PATH  ResultType = 1
	ResultType_RESULT_TYPE_NODE  ResultType = 2
	ResultType_RESULT_TYPE_EDGE  ResultType = 3
	ResultType_RESULT_TYPE_ATTR  ResultType = 4
	ResultType_RESULT_TYPE_TABLE ResultType = 5
)

// Enum value maps for ResultType.
var (
	ResultType_name = map[int32]string{
		0: "RESULT_TYPE_UNSET",
		1: "RESULT_TYPE_PATH",
		2: "RESULT_TYPE_NODE",
		3: "RESULT_TYPE_EDGE",
		4: "RESULT_TYPE_ATTR",
		5: "RESULT_TYPE_TABLE",
	}
	ResultType_value = map[string]int32{
		"RESULT_TYPE_UNSET": 0,
		"RESULT_TYPE_PATH":  1,
		"RESULT_TYPE_NODE":  2,
		"RESULT_TYPE_EDGE":  3,
		"RESULT_TYPE_ATTR":  4,
		"RESULT_TYPE_TABLE": 5,
	}
)

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

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

func (ResultType) Descriptor() protoreflect.EnumDescriptor {
	return file_ultipa_proto_enumTypes[0].Descriptor()
}

func (ResultType) Type() protoreflect.EnumType {
	return &file_ultipa_proto_enumTypes[0]
}

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

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

type InsertType int32

const (
	InsertType_NORMAL    InsertType = 0
	InsertType_OVERWRITE InsertType = 1
	InsertType_UPSERT    InsertType = 2
)

// Enum value maps for InsertType.
var (
	InsertType_name = map[int32]string{
		0: "NORMAL",
		1: "OVERWRITE",
		2: "UPSERT",
	}
	InsertType_value = map[string]int32{
		"NORMAL":    0,
		"OVERWRITE": 1,
		"UPSERT":    2,
	}
)

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

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

func (InsertType) Descriptor() protoreflect.EnumDescriptor {
	return file_ultipa_proto_enumTypes[1].Descriptor()
}

func (InsertType) Type() protoreflect.EnumType {
	return &file_ultipa_proto_enumTypes[1]
}

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

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

type PropertyType int32

const (
	PropertyType_UNSET     PropertyType = 0
	PropertyType_INT32     PropertyType = 1
	PropertyType_UINT32    PropertyType = 2
	PropertyType_INT64     PropertyType = 3
	PropertyType_UINT64    PropertyType = 4
	PropertyType_FLOAT     PropertyType = 5
	PropertyType_DOUBLE    PropertyType = 6
	PropertyType_STRING    PropertyType = 7
	PropertyType_DATETIME  PropertyType = 8
	PropertyType_TIMESTAMP PropertyType = 9
	PropertyType_TEXT      PropertyType = 10
	PropertyType_BLOB      PropertyType = 11
	PropertyType_POINT     PropertyType = 12
	PropertyType_DECIMAL   PropertyType = 13
	PropertyType_LIST      PropertyType = 14
	PropertyType_SET       PropertyType = 15
	PropertyType_MAP       PropertyType = 16
	PropertyType_NULL_     PropertyType = 17
)

// Enum value maps for PropertyType.
var (
	PropertyType_name = map[int32]string{
		0:  "UNSET",
		1:  "INT32",
		2:  "UINT32",
		3:  "INT64",
		4:  "UINT64",
		5:  "FLOAT",
		6:  "DOUBLE",
		7:  "STRING",
		8:  "DATETIME",
		9:  "TIMESTAMP",
		10: "TEXT",
		11: "BLOB",
		12: "POINT",
		13: "DECIMAL",
		14: "LIST",
		15: "SET",
		16: "MAP",
		17: "NULL_",
	}
	PropertyType_value = map[string]int32{
		"UNSET":     0,
		"INT32":     1,
		"UINT32":    2,
		"INT64":     3,
		"UINT64":    4,
		"FLOAT":     5,
		"DOUBLE":    6,
		"STRING":    7,
		"DATETIME":  8,
		"TIMESTAMP": 9,
		"TEXT":      10,
		"BLOB":      11,
		"POINT":     12,
		"DECIMAL":   13,
		"LIST":      14,
		"SET":       15,
		"MAP":       16,
		"NULL_":     17,
	}
)

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

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

func (PropertyType) Descriptor() protoreflect.EnumDescriptor {
	return file_ultipa_proto_enumTypes[2].Descriptor()
}

func (PropertyType) Type() protoreflect.EnumType {
	return &file_ultipa_proto_enumTypes[2]
}

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

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

type ErrorCode int32

const (
	ErrorCode_SUCCESS                        ErrorCode = 0
	ErrorCode_FAILED                         ErrorCode = 1
	ErrorCode_PARAM_ERROR                    ErrorCode = 2
	ErrorCode_BASE_DB_ERROR                  ErrorCode = 3
	ErrorCode_ENGINE_ERROR                   ErrorCode = 4
	ErrorCode_SYSTEM_ERROR                   ErrorCode = 5
	ErrorCode_RAFT_REDIRECT                  ErrorCode = 6
	ErrorCode_RAFT_LEADER_NOT_YET_ELECTED    ErrorCode = 7
	ErrorCode_RAFT_LOG_ERROR                 ErrorCode = 8
	ErrorCode_UQL_ERROR                      ErrorCode = 9
	ErrorCode_NOT_RAFT_MODE                  ErrorCode = 10
	ErrorCode_RAFT_NO_AVAILABLE_FOLLOWERS    ErrorCode = 11
	ErrorCode_RAFT_NO_AVAILABLE_ALGO_SERVERS ErrorCode = 12
	//鉴权失败
	ErrorCode_PERMISSION_DENIED ErrorCode = 13
)

// Enum value maps for ErrorCode.
var (
	ErrorCode_name = map[int32]string{
		0:  "SUCCESS",
		1:  "FAILED",
		2:  "PARAM_ERROR",
		3:  "BASE_DB_ERROR",
		4:  "ENGINE_ERROR",
		5:  "SYSTEM_ERROR",
		6:  "RAFT_REDIRECT",
		7:  "RAFT_LEADER_NOT_YET_ELECTED",
		8:  "RAFT_LOG_ERROR",
		9:  "UQL_ERROR",
		10: "NOT_RAFT_MODE",
		11: "RAFT_NO_AVAILABLE_FOLLOWERS",
		12: "RAFT_NO_AVAILABLE_ALGO_SERVERS",
		13: "PERMISSION_DENIED",
	}
	ErrorCode_value = map[string]int32{
		"SUCCESS":                        0,
		"FAILED":                         1,
		"PARAM_ERROR":                    2,
		"BASE_DB_ERROR":                  3,
		"ENGINE_ERROR":                   4,
		"SYSTEM_ERROR":                   5,
		"RAFT_REDIRECT":                  6,
		"RAFT_LEADER_NOT_YET_ELECTED":    7,
		"RAFT_LOG_ERROR":                 8,
		"UQL_ERROR":                      9,
		"NOT_RAFT_MODE":                  10,
		"RAFT_NO_AVAILABLE_FOLLOWERS":    11,
		"RAFT_NO_AVAILABLE_ALGO_SERVERS": 12,
		"PERMISSION_DENIED":              13,
	}
)

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

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

func (ErrorCode) Descriptor() protoreflect.EnumDescriptor {
	return file_ultipa_proto_enumTypes[3].Descriptor()
}

func (ErrorCode) Type() protoreflect.EnumType {
	return &file_ultipa_proto_enumTypes[3]
}

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

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

type FollowerRole int32

const (
	FollowerRole_ROLE_UNSET           FollowerRole = 0
	FollowerRole_ROLE_READABLE        FollowerRole = 1
	FollowerRole_ROLE_ALGO_EXECUTABLE FollowerRole = 2
	FollowerRole_ROLE_LEARNER         FollowerRole = 4
)

// Enum value maps for FollowerRole.
var (
	FollowerRole_name = map[int32]string{
		0: "ROLE_UNSET",
		1: "ROLE_READABLE",
		2: "ROLE_ALGO_EXECUTABLE",
		4: "ROLE_LEARNER",
	}
	FollowerRole_value = map[string]int32{
		"ROLE_UNSET":           0,
		"ROLE_READABLE":        1,
		"ROLE_ALGO_EXECUTABLE": 2,
		"ROLE_LEARNER":         4,
	}
)

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

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

func (FollowerRole) Descriptor() protoreflect.EnumDescriptor {
	return file_ultipa_proto_enumTypes[4].Descriptor()
}

func (FollowerRole) Type() protoreflect.EnumType {
	return &file_ultipa_proto_enumTypes[4]
}

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

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

type ServerStatus int32

const (
	ServerStatus_DEAD  ServerStatus = 0
	ServerStatus_ALIVE ServerStatus = 1
)

// Enum value maps for ServerStatus.
var (
	ServerStatus_name = map[int32]string{
		0: "DEAD",
		1: "ALIVE",
	}
	ServerStatus_value = map[string]int32{
		"DEAD":  0,
		"ALIVE": 1,
	}
)

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

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

func (ServerStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_ultipa_proto_enumTypes[5].Descriptor()
}

func (ServerStatus) Type() protoreflect.EnumType {
	return &file_ultipa_proto_enumTypes[5]
}

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

// Deprecated: Use ServerStatus.Descriptor instead.
func (ServerStatus) EnumDescriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{5}
}

type DBType int32

const (
	DBType_DBNODE   DBType = 0
	DBType_DBEDGE   DBType = 1
	DBType_DBGLOBAL DBType = 2
)

// Enum value maps for DBType.
var (
	DBType_name = map[int32]string{
		0: "DBNODE",
		1: "DBEDGE",
		2: "DBGLOBAL",
	}
	DBType_value = map[string]int32{
		"DBNODE":   0,
		"DBEDGE":   1,
		"DBGLOBAL": 2,
	}
)

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

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

func (DBType) Descriptor() protoreflect.EnumDescriptor {
	return file_ultipa_proto_enumTypes[6].Descriptor()
}

func (DBType) Type() protoreflect.EnumType {
	return &file_ultipa_proto_enumTypes[6]
}

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

// Deprecated: Use DBType.Descriptor instead.
func (DBType) EnumDescriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{6}
}

type TASK_STATUS int32

const (
	TASK_STATUS_TASK_PENDING   TASK_STATUS = 0
	TASK_STATUS_TASK_COMPUTING TASK_STATUS = 1
	TASK_STATUS_TASK_WRITING   TASK_STATUS = 2
	TASK_STATUS_TASK_DONE      TASK_STATUS = 3
	TASK_STATUS_TASK_FAILED    TASK_STATUS = 4
	TASK_STATUS_TASK_STOPPED   TASK_STATUS = 5
)

// Enum value maps for TASK_STATUS.
var (
	TASK_STATUS_name = map[int32]string{
		0: "TASK_PENDING",
		1: "TASK_COMPUTING",
		2: "TASK_WRITING",
		3: "TASK_DONE",
		4: "TASK_FAILED",
		5: "TASK_STOPPED",
	}
	TASK_STATUS_value = map[string]int32{
		"TASK_PENDING":   0,
		"TASK_COMPUTING": 1,
		"TASK_WRITING":   2,
		"TASK_DONE":      3,
		"TASK_FAILED":    4,
		"TASK_STOPPED":   5,
	}
)

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

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

func (TASK_STATUS) Descriptor() protoreflect.EnumDescriptor {
	return file_ultipa_proto_enumTypes[7].Descriptor()
}

func (TASK_STATUS) Type() protoreflect.EnumType {
	return &file_ultipa_proto_enumTypes[7]
}

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

// Deprecated: Use TASK_STATUS.Descriptor instead.
func (TASK_STATUS) EnumDescriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{7}
}

type AuthenticateType int32

const (
	AuthenticateType_PERMISSION_TYPE_UQL                   AuthenticateType = 0
	AuthenticateType_PERMISSION_TYPE_INSERTNODES           AuthenticateType = 1
	AuthenticateType_PERMISSION_TYPE_INSERTEDGES           AuthenticateType = 2
	AuthenticateType_PERMISSION_TYPE_EXPORT                AuthenticateType = 3
	AuthenticateType_PERMISSION_TYPE_DOWNLOADFILE          AuthenticateType = 4
	AuthenticateType_PERMISSION_TYPE_INSTALLALGO           AuthenticateType = 5
	AuthenticateType_PERMISSION_TYPE_UNINSTALLALGO         AuthenticateType = 6
	AuthenticateType_PERMISSION_TYPE_UPLOADER              AuthenticateType = 7
	AuthenticateType_PERMISSION_TYPE_CREATEGRAPHBYUPLOADER AuthenticateType = 8
	AuthenticateType_PERMISSION_TYPE_INSTALLEXTA           AuthenticateType = 9
	AuthenticateType_PERMISSION_TYPE_UNINSTALLEXTA         AuthenticateType = 10
)

// Enum value maps for AuthenticateType.
var (
	AuthenticateType_name = map[int32]string{
		0:  "PERMISSION_TYPE_UQL",
		1:  "PERMISSION_TYPE_INSERTNODES",
		2:  "PERMISSION_TYPE_INSERTEDGES",
		3:  "PERMISSION_TYPE_EXPORT",
		4:  "PERMISSION_TYPE_DOWNLOADFILE",
		5:  "PERMISSION_TYPE_INSTALLALGO",
		6:  "PERMISSION_TYPE_UNINSTALLALGO",
		7:  "PERMISSION_TYPE_UPLOADER",
		8:  "PERMISSION_TYPE_CREATEGRAPHBYUPLOADER",
		9:  "PERMISSION_TYPE_INSTALLEXTA",
		10: "PERMISSION_TYPE_UNINSTALLEXTA",
	}
	AuthenticateType_value = map[string]int32{
		"PERMISSION_TYPE_UQL":                   0,
		"PERMISSION_TYPE_INSERTNODES":           1,
		"PERMISSION_TYPE_INSERTEDGES":           2,
		"PERMISSION_TYPE_EXPORT":                3,
		"PERMISSION_TYPE_DOWNLOADFILE":          4,
		"PERMISSION_TYPE_INSTALLALGO":           5,
		"PERMISSION_TYPE_UNINSTALLALGO":         6,
		"PERMISSION_TYPE_UPLOADER":              7,
		"PERMISSION_TYPE_CREATEGRAPHBYUPLOADER": 8,
		"PERMISSION_TYPE_INSTALLEXTA":           9,
		"PERMISSION_TYPE_UNINSTALLEXTA":         10,
	}
)

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

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

func (AuthenticateType) Descriptor() protoreflect.EnumDescriptor {
	return file_ultipa_proto_enumTypes[8].Descriptor()
}

func (AuthenticateType) Type() protoreflect.EnumType {
	return &file_ultipa_proto_enumTypes[8]
}

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

// Deprecated: Use AuthenticateType.Descriptor instead.
func (AuthenticateType) EnumDescriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{8}
}

type UserSettingRequest_OPTION int32

const (
	UserSettingRequest_OPT_GET UserSettingRequest_OPTION = 0
	UserSettingRequest_OPT_SET UserSettingRequest_OPTION = 1
)

// Enum value maps for UserSettingRequest_OPTION.
var (
	UserSettingRequest_OPTION_name = map[int32]string{
		0: "OPT_GET",
		1: "OPT_SET",
	}
	UserSettingRequest_OPTION_value = map[string]int32{
		"OPT_GET": 0,
		"OPT_SET": 1,
	}
)

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

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

func (UserSettingRequest_OPTION) Descriptor() protoreflect.EnumDescriptor {
	return file_ultipa_proto_enumTypes[9].Descriptor()
}

func (UserSettingRequest_OPTION) Type() protoreflect.EnumType {
	return &file_ultipa_proto_enumTypes[9]
}

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

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

//------------------------1.SayHello------------------------------
type HelloUltipaRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

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

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

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

func (*HelloUltipaRequest) ProtoMessage() {}

func (x *HelloUltipaRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_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 HelloUltipaRequest.ProtoReflect.Descriptor instead.
func (*HelloUltipaRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{0}
}

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

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

	Status  *Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	Message string  `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
}

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

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

func (*HelloUltipaReply) ProtoMessage() {}

func (x *HelloUltipaReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_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 HelloUltipaReply.ProtoReflect.Descriptor instead.
func (*HelloUltipaReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{1}
}

func (x *HelloUltipaReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

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

//
//uql : ab.src(1).dest(2).depth(1).limit(10).select(*)
//db_name : default
//timeout  1s 单位:秒
type UqlRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Uql       string `protobuf:"bytes,1,opt,name=uql,proto3" json:"uql,omitempty"`
	Timeout   uint32 `protobuf:"varint,2,opt,name=timeout,proto3" json:"timeout,omitempty"`
	GraphName string `protobuf:"bytes,3,opt,name=graph_name,json=graphName,proto3" json:"graph_name,omitempty"`
	UserName  string `protobuf:"bytes,4,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
	ThreadNum uint32 `protobuf:"varint,5,opt,name=thread_num,json=threadNum,proto3" json:"thread_num,omitempty"`
	Tz        string `protobuf:"bytes,6,opt,name=tz,proto3" json:"tz,omitempty"`
	TzOffset  string `protobuf:"bytes,7,opt,name=tz_offset,json=tzOffset,proto3" json:"tz_offset,omitempty"`
}

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

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

func (*UqlRequest) ProtoMessage() {}

func (x *UqlRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_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 UqlRequest.ProtoReflect.Descriptor instead.
func (*UqlRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{2}
}

func (x *UqlRequest) GetUql() string {
	if x != nil {
		return x.Uql
	}
	return ""
}

func (x *UqlRequest) GetTimeout() uint32 {
	if x != nil {
		return x.Timeout
	}
	return 0
}

func (x *UqlRequest) GetGraphName() string {
	if x != nil {
		return x.GraphName
	}
	return ""
}

func (x *UqlRequest) GetUserName() string {
	if x != nil {
		return x.UserName
	}
	return ""
}

func (x *UqlRequest) GetThreadNum() uint32 {
	if x != nil {
		return x.ThreadNum
	}
	return 0
}

func (x *UqlRequest) GetTz() string {
	if x != nil {
		return x.Tz
	}
	return ""
}

func (x *UqlRequest) GetTzOffset() string {
	if x != nil {
		return x.TzOffset
	}
	return ""
}

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

	Alias      string     `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"`
	ResultType ResultType `protobuf:"varint,2,opt,name=result_type,json=resultType,proto3,enum=ultipa.ResultType" json:"result_type,omitempty"`
}

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

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

func (*ResultAlias) ProtoMessage() {}

func (x *ResultAlias) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_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 ResultAlias.ProtoReflect.Descriptor instead.
func (*ResultAlias) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{3}
}

func (x *ResultAlias) GetAlias() string {
	if x != nil {
		return x.Alias
	}
	return ""
}

func (x *ResultAlias) GetResultType() ResultType {
	if x != nil {
		return x.ResultType
	}
	return ResultType_RESULT_TYPE_UNSET
}

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

	Status         *Status        `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	TotalTimeCost  int32          `protobuf:"varint,2,opt,name=total_time_cost,json=totalTimeCost,proto3" json:"total_time_cost,omitempty"`
	EngineTimeCost int32          `protobuf:"varint,3,opt,name=engine_time_cost,json=engineTimeCost,proto3" json:"engine_time_cost,omitempty"`
	Alias          []*ResultAlias `protobuf:"bytes,4,rep,name=alias,proto3" json:"alias,omitempty"`
	Paths          []*PathAlias   `protobuf:"bytes,5,rep,name=paths,proto3" json:"paths,omitempty"`
	Nodes          []*NodeAlias   `protobuf:"bytes,6,rep,name=nodes,proto3" json:"nodes,omitempty"`
	Edges          []*EdgeAlias   `protobuf:"bytes,7,rep,name=edges,proto3" json:"edges,omitempty"`
	Attrs          []*AttrAlias   `protobuf:"bytes,8,rep,name=attrs,proto3" json:"attrs,omitempty"`
	Tables         []*Table       `protobuf:"bytes,10,rep,name=tables,proto3" json:"tables,omitempty"`
	Statistics     *Table         `protobuf:"bytes,11,opt,name=statistics,proto3" json:"statistics,omitempty"`
	ExplainPlan    *ExplainPlan   `protobuf:"bytes,12,opt,name=explain_plan,json=explainPlan,proto3" json:"explain_plan,omitempty"`
}

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

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

func (*UqlReply) ProtoMessage() {}

func (x *UqlReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_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 UqlReply.ProtoReflect.Descriptor instead.
func (*UqlReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{4}
}

func (x *UqlReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

func (x *UqlReply) GetTotalTimeCost() int32 {
	if x != nil {
		return x.TotalTimeCost
	}
	return 0
}

func (x *UqlReply) GetEngineTimeCost() int32 {
	if x != nil {
		return x.EngineTimeCost
	}
	return 0
}

func (x *UqlReply) GetAlias() []*ResultAlias {
	if x != nil {
		return x.Alias
	}
	return nil
}

func (x *UqlReply) GetPaths() []*PathAlias {
	if x != nil {
		return x.Paths
	}
	return nil
}

func (x *UqlReply) GetNodes() []*NodeAlias {
	if x != nil {
		return x.Nodes
	}
	return nil
}

func (x *UqlReply) GetEdges() []*EdgeAlias {
	if x != nil {
		return x.Edges
	}
	return nil
}

func (x *UqlReply) GetAttrs() []*AttrAlias {
	if x != nil {
		return x.Attrs
	}
	return nil
}

func (x *UqlReply) GetTables() []*Table {
	if x != nil {
		return x.Tables
	}
	return nil
}

func (x *UqlReply) GetStatistics() *Table {
	if x != nil {
		return x.Statistics
	}
	return nil
}

func (x *UqlReply) GetExplainPlan() *ExplainPlan {
	if x != nil {
		return x.ExplainPlan
	}
	return nil
}

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

	Paths []*Path `protobuf:"bytes,1,rep,name=paths,proto3" json:"paths,omitempty"`
	Alias string  `protobuf:"bytes,2,opt,name=alias,proto3" json:"alias,omitempty"`
}

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

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

func (*PathAlias) ProtoMessage() {}

func (x *PathAlias) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_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 PathAlias.ProtoReflect.Descriptor instead.
func (*PathAlias) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{5}
}

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

func (x *PathAlias) GetAlias() string {
	if x != nil {
		return x.Alias
	}
	return ""
}

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

	EdgeTable *EntityTable `protobuf:"bytes,1,opt,name=edge_table,json=edgeTable,proto3" json:"edge_table,omitempty"`
	Alias     string       `protobuf:"bytes,2,opt,name=alias,proto3" json:"alias,omitempty"`
}

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

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

func (*EdgeAlias) ProtoMessage() {}

func (x *EdgeAlias) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_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 EdgeAlias.ProtoReflect.Descriptor instead.
func (*EdgeAlias) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{6}
}

func (x *EdgeAlias) GetEdgeTable() *EntityTable {
	if x != nil {
		return x.EdgeTable
	}
	return nil
}

func (x *EdgeAlias) GetAlias() string {
	if x != nil {
		return x.Alias
	}
	return ""
}

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

	NodeTable *EntityTable `protobuf:"bytes,1,opt,name=node_table,json=nodeTable,proto3" json:"node_table,omitempty"`
	Alias     string       `protobuf:"bytes,2,opt,name=alias,proto3" json:"alias,omitempty"`
}

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

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

func (*NodeAlias) ProtoMessage() {}

func (x *NodeAlias) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_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 NodeAlias.ProtoReflect.Descriptor instead.
func (*NodeAlias) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{7}
}

func (x *NodeAlias) GetNodeTable() *EntityTable {
	if x != nil {
		return x.NodeTable
	}
	return nil
}

func (x *NodeAlias) GetAlias() string {
	if x != nil {
		return x.Alias
	}
	return ""
}

//key = alias.name, value = ly
type AttrAlias struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Alias string `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"`
	Attr  *Attr  `protobuf:"bytes,2,opt,name=attr,proto3" json:"attr,omitempty"`
}

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

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

func (*AttrAlias) ProtoMessage() {}

func (x *AttrAlias) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_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 AttrAlias.ProtoReflect.Descriptor instead.
func (*AttrAlias) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{8}
}

func (x *AttrAlias) GetAlias() string {
	if x != nil {
		return x.Alias
	}
	return ""
}

func (x *AttrAlias) GetAttr() *Attr {
	if x != nil {
		return x.Attr
	}
	return nil
}

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

	ValueType PropertyType `protobuf:"varint,1,opt,name=value_type,json=valueType,proto3,enum=ultipa.PropertyType" json:"value_type,omitempty"`
	Values    [][]byte     `protobuf:"bytes,2,rep,name=values,proto3" json:"values,omitempty"`
}

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

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

func (*Attr) ProtoMessage() {}

func (x *Attr) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_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 Attr.ProtoReflect.Descriptor instead.
func (*Attr) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{9}
}

func (x *Attr) GetValueType() PropertyType {
	if x != nil {
		return x.ValueType
	}
	return PropertyType_UNSET
}

func (x *Attr) GetValues() [][]byte {
	if x != nil {
		return x.Values
	}
	return nil
}

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

	Type   ResultType   `protobuf:"varint,1,opt,name=type,proto3,enum=ultipa.ResultType" json:"type,omitempty"`
	Nodes  *EntityTable `protobuf:"bytes,2,opt,name=nodes,proto3" json:"nodes,omitempty"`
	Edges  *EntityTable `protobuf:"bytes,3,opt,name=edges,proto3" json:"edges,omitempty"`
	Paths  []*Path      `protobuf:"bytes,4,rep,name=paths,proto3" json:"paths,omitempty"`
	Attrs  []*Attr      `protobuf:"bytes,5,rep,name=attrs,proto3" json:"attrs,omitempty"`
	IsNull bool         `protobuf:"varint,6,opt,name=is_null,json=isNull,proto3" json:"is_null,omitempty"`
}

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

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

func (*AttrListData) ProtoMessage() {}

func (x *AttrListData) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_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 AttrListData.ProtoReflect.Descriptor instead.
func (*AttrListData) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{10}
}

func (x *AttrListData) GetType() ResultType {
	if x != nil {
		return x.Type
	}
	return ResultType_RESULT_TYPE_UNSET
}

func (x *AttrListData) GetNodes() *EntityTable {
	if x != nil {
		return x.Nodes
	}
	return nil
}

func (x *AttrListData) GetEdges() *EntityTable {
	if x != nil {
		return x.Edges
	}
	return nil
}

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

func (x *AttrListData) GetAttrs() []*Attr {
	if x != nil {
		return x.Attrs
	}
	return nil
}

func (x *AttrListData) GetIsNull() bool {
	if x != nil {
		return x.IsNull
	}
	return false
}

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

	Key   *Attr `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	Value *Attr `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
}

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

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

func (*AttrMapData) ProtoMessage() {}

func (x *AttrMapData) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_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 AttrMapData.ProtoReflect.Descriptor instead.
func (*AttrMapData) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{11}
}

func (x *AttrMapData) GetKey() *Attr {
	if x != nil {
		return x.Key
	}
	return nil
}

func (x *AttrMapData) GetValue() *Attr {
	if x != nil {
		return x.Value
	}
	return nil
}

//------------------------3.UserSetting------------------------------
type UserSettingRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	UserName string                    `protobuf:"bytes,1,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
	Opt      UserSettingRequest_OPTION `protobuf:"varint,2,opt,name=opt,proto3,enum=ultipa.UserSettingRequest_OPTION" json:"opt,omitempty"`
	//key
	Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"`
	//value
	Data string `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"`
}

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

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

func (*UserSettingRequest) ProtoMessage() {}

func (x *UserSettingRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_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 UserSettingRequest.ProtoReflect.Descriptor instead.
func (*UserSettingRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{12}
}

func (x *UserSettingRequest) GetUserName() string {
	if x != nil {
		return x.UserName
	}
	return ""
}

func (x *UserSettingRequest) GetOpt() UserSettingRequest_OPTION {
	if x != nil {
		return x.Opt
	}
	return UserSettingRequest_OPT_GET
}

func (x *UserSettingRequest) GetType() string {
	if x != nil {
		return x.Type
	}
	return ""
}

func (x *UserSettingRequest) GetData() string {
	if x != nil {
		return x.Data
	}
	return ""
}

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

	Status *Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	Data   string  `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
}

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

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

func (*UserSettingReply) ProtoMessage() {}

func (x *UserSettingReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_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 UserSettingReply.ProtoReflect.Descriptor instead.
func (*UserSettingReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{13}
}

func (x *UserSettingReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

func (x *UserSettingReply) GetData() string {
	if x != nil {
		return x.Data
	}
	return ""
}

//下载算法生成文件
type DownloadFileRequestV2 struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FileName string `protobuf:"bytes,1,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
	TaskId   string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
}

func (x *DownloadFileRequestV2) Reset() {
	*x = DownloadFileRequestV2{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[14]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DownloadFileRequestV2) ProtoMessage() {}

func (x *DownloadFileRequestV2) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[14]
	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 DownloadFileRequestV2.ProtoReflect.Descriptor instead.
func (*DownloadFileRequestV2) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{14}
}

func (x *DownloadFileRequestV2) GetFileName() string {
	if x != nil {
		return x.FileName
	}
	return ""
}

func (x *DownloadFileRequestV2) GetTaskId() string {
	if x != nil {
		return x.TaskId
	}
	return ""
}

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

	Status    *Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	TotalSize int32   `protobuf:"varint,2,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
	Chunk     []byte  `protobuf:"bytes,3,opt,name=chunk,proto3" json:"chunk,omitempty"`
}

func (x *DownloadFileReply) Reset() {
	*x = DownloadFileReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[15]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DownloadFileReply) ProtoMessage() {}

func (x *DownloadFileReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[15]
	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 DownloadFileReply.ProtoReflect.Descriptor instead.
func (*DownloadFileReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{15}
}

func (x *DownloadFileReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

func (x *DownloadFileReply) GetTotalSize() int32 {
	if x != nil {
		return x.TotalSize
	}
	return 0
}

func (x *DownloadFileReply) GetChunk() []byte {
	if x != nil {
		return x.Chunk
	}
	return nil
}

//导出数据
// limit < 0 全量导出
// limit >= 0 导出limit条
type ExportRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	DbType           DBType   `protobuf:"varint,1,opt,name=db_type,json=dbType,proto3,enum=ultipa.DBType" json:"db_type,omitempty"`
	Limit            int32    `protobuf:"varint,2,opt,name=limit,proto3" json:"limit,omitempty"`
	SelectProperties []string `protobuf:"bytes,3,rep,name=select_properties,json=selectProperties,proto3" json:"select_properties,omitempty"`
	Schema           string   `protobuf:"bytes,4,opt,name=schema,proto3" json:"schema,omitempty"`
}

func (x *ExportRequest) Reset() {
	*x = ExportRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[16]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ExportRequest) ProtoMessage() {}

func (x *ExportRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[16]
	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 ExportRequest.ProtoReflect.Descriptor instead.
func (*ExportRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{16}
}

func (x *ExportRequest) GetDbType() DBType {
	if x != nil {
		return x.DbType
	}
	return DBType_DBNODE
}

func (x *ExportRequest) GetLimit() int32 {
	if x != nil {
		return x.Limit
	}
	return 0
}

func (x *ExportRequest) GetSelectProperties() []string {
	if x != nil {
		return x.SelectProperties
	}
	return nil
}

func (x *ExportRequest) GetSchema() string {
	if x != nil {
		return x.Schema
	}
	return ""
}

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

	Status    *Status      `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	NodeTable *EntityTable `protobuf:"bytes,2,opt,name=node_table,json=nodeTable,proto3" json:"node_table,omitempty"`
	EdgeTable *EntityTable `protobuf:"bytes,3,opt,name=edge_table,json=edgeTable,proto3" json:"edge_table,omitempty"`
}

func (x *ExportReply) Reset() {
	*x = ExportReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[17]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ExportReply) ProtoMessage() {}

func (x *ExportReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[17]
	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 ExportReply.ProtoReflect.Descriptor instead.
func (*ExportReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{17}
}

func (x *ExportReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

func (x *ExportReply) GetNodeTable() *EntityTable {
	if x != nil {
		return x.NodeTable
	}
	return nil
}

func (x *ExportReply) GetEdgeTable() *EntityTable {
	if x != nil {
		return x.EdgeTable
	}
	return nil
}

//------------------------6.GetLeader------------------------------
type GetLeaderRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *GetLeaderRequest) Reset() {
	*x = GetLeaderRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[18]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetLeaderRequest) ProtoMessage() {}

func (x *GetLeaderRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[18]
	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 GetLeaderRequest.ProtoReflect.Descriptor instead.
func (*GetLeaderRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{18}
}

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

	Status *Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
}

func (x *GetLeaderReply) Reset() {
	*x = GetLeaderReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[19]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetLeaderReply) ProtoMessage() {}

func (x *GetLeaderReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[19]
	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 GetLeaderReply.ProtoReflect.Descriptor instead.
func (*GetLeaderReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{19}
}

func (x *GetLeaderReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

//------------------------7.InsertNodes------------------------------
type InsertNodesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	NodeTable *EntityTable `protobuf:"bytes,1,opt,name=node_table,json=nodeTable,proto3" json:"node_table,omitempty"`
	//if true return ids
	Silent     bool       `protobuf:"varint,2,opt,name=silent,proto3" json:"silent,omitempty"`
	GraphName  string     `protobuf:"bytes,3,opt,name=graph_name,json=graphName,proto3" json:"graph_name,omitempty"`
	InsertType InsertType `protobuf:"varint,4,opt,name=insert_type,json=insertType,proto3,enum=ultipa.InsertType" json:"insert_type,omitempty"`
}

func (x *InsertNodesRequest) Reset() {
	*x = InsertNodesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[20]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*InsertNodesRequest) ProtoMessage() {}

func (x *InsertNodesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[20]
	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 InsertNodesRequest.ProtoReflect.Descriptor instead.
func (*InsertNodesRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{20}
}

func (x *InsertNodesRequest) GetNodeTable() *EntityTable {
	if x != nil {
		return x.NodeTable
	}
	return nil
}

func (x *InsertNodesRequest) GetSilent() bool {
	if x != nil {
		return x.Silent
	}
	return false
}

func (x *InsertNodesRequest) GetGraphName() string {
	if x != nil {
		return x.GraphName
	}
	return ""
}

func (x *InsertNodesRequest) GetInsertType() InsertType {
	if x != nil {
		return x.InsertType
	}
	return InsertType_NORMAL
}

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

	Status          *Status  `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	TimeCost        int32    `protobuf:"varint,2,opt,name=time_cost,json=timeCost,proto3" json:"time_cost,omitempty"`
	EngineTimeCost  int32    `protobuf:"varint,3,opt,name=engine_time_cost,json=engineTimeCost,proto3" json:"engine_time_cost,omitempty"`
	Uuids           []uint64 `protobuf:"varint,4,rep,packed,name=uuids,proto3" json:"uuids,omitempty"`
	Ids             []string `protobuf:"bytes,5,rep,name=ids,proto3" json:"ids,omitempty"`
	IgnoreIndexes   []uint32 `protobuf:"varint,6,rep,packed,name=ignore_indexes,json=ignoreIndexes,proto3" json:"ignore_indexes,omitempty"`
	IgnoreErrorCode []uint32 `protobuf:"varint,7,rep,packed,name=ignore_error_code,json=ignoreErrorCode,proto3" json:"ignore_error_code,omitempty"`
}

func (x *InsertNodesReply) Reset() {
	*x = InsertNodesReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[21]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*InsertNodesReply) ProtoMessage() {}

func (x *InsertNodesReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[21]
	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 InsertNodesReply.ProtoReflect.Descriptor instead.
func (*InsertNodesReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{21}
}

func (x *InsertNodesReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

func (x *InsertNodesReply) GetTimeCost() int32 {
	if x != nil {
		return x.TimeCost
	}
	return 0
}

func (x *InsertNodesReply) GetEngineTimeCost() int32 {
	if x != nil {
		return x.EngineTimeCost
	}
	return 0
}

func (x *InsertNodesReply) GetUuids() []uint64 {
	if x != nil {
		return x.Uuids
	}
	return nil
}

func (x *InsertNodesReply) GetIds() []string {
	if x != nil {
		return x.Ids
	}
	return nil
}

func (x *InsertNodesReply) GetIgnoreIndexes() []uint32 {
	if x != nil {
		return x.IgnoreIndexes
	}
	return nil
}

func (x *InsertNodesReply) GetIgnoreErrorCode() []uint32 {
	if x != nil {
		return x.IgnoreErrorCode
	}
	return nil
}

//------------------------8.InsertEdges------------------------------
type InsertEdgesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	EdgeTable *EntityTable `protobuf:"bytes,1,opt,name=edge_table,json=edgeTable,proto3" json:"edge_table,omitempty"`
	//if true return ids
	Silent               bool       `protobuf:"varint,2,opt,name=silent,proto3" json:"silent,omitempty"`
	GraphName            string     `protobuf:"bytes,3,opt,name=graph_name,json=graphName,proto3" json:"graph_name,omitempty"`
	CreateNodeIfNotExist bool       `protobuf:"varint,4,opt,name=create_node_if_not_exist,json=createNodeIfNotExist,proto3" json:"create_node_if_not_exist,omitempty"`
	InsertType           InsertType `protobuf:"varint,5,opt,name=insert_type,json=insertType,proto3,enum=ultipa.InsertType" json:"insert_type,omitempty"`
}

func (x *InsertEdgesRequest) Reset() {
	*x = InsertEdgesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[22]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*InsertEdgesRequest) ProtoMessage() {}

func (x *InsertEdgesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[22]
	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 InsertEdgesRequest.ProtoReflect.Descriptor instead.
func (*InsertEdgesRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{22}
}

func (x *InsertEdgesRequest) GetEdgeTable() *EntityTable {
	if x != nil {
		return x.EdgeTable
	}
	return nil
}

func (x *InsertEdgesRequest) GetSilent() bool {
	if x != nil {
		return x.Silent
	}
	return false
}

func (x *InsertEdgesRequest) GetGraphName() string {
	if x != nil {
		return x.GraphName
	}
	return ""
}

func (x *InsertEdgesRequest) GetCreateNodeIfNotExist() bool {
	if x != nil {
		return x.CreateNodeIfNotExist
	}
	return false
}

func (x *InsertEdgesRequest) GetInsertType() InsertType {
	if x != nil {
		return x.InsertType
	}
	return InsertType_NORMAL
}

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

	Status          *Status  `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	TimeCost        int32    `protobuf:"varint,2,opt,name=time_cost,json=timeCost,proto3" json:"time_cost,omitempty"`
	EngineTimeCost  int32    `protobuf:"varint,3,opt,name=engine_time_cost,json=engineTimeCost,proto3" json:"engine_time_cost,omitempty"`
	Uuids           []uint64 `protobuf:"varint,4,rep,packed,name=uuids,proto3" json:"uuids,omitempty"`
	IgnoreIndexes   []uint32 `protobuf:"varint,5,rep,packed,name=ignore_indexes,json=ignoreIndexes,proto3" json:"ignore_indexes,omitempty"`
	IgnoreErrorCode []uint32 `protobuf:"varint,6,rep,packed,name=ignore_error_code,json=ignoreErrorCode,proto3" json:"ignore_error_code,omitempty"`
}

func (x *InsertEdgesReply) Reset() {
	*x = InsertEdgesReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[23]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*InsertEdgesReply) ProtoMessage() {}

func (x *InsertEdgesReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[23]
	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 InsertEdgesReply.ProtoReflect.Descriptor instead.
func (*InsertEdgesReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{23}
}

func (x *InsertEdgesReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

func (x *InsertEdgesReply) GetTimeCost() int32 {
	if x != nil {
		return x.TimeCost
	}
	return 0
}

func (x *InsertEdgesReply) GetEngineTimeCost() int32 {
	if x != nil {
		return x.EngineTimeCost
	}
	return 0
}

func (x *InsertEdgesReply) GetUuids() []uint64 {
	if x != nil {
		return x.Uuids
	}
	return nil
}

func (x *InsertEdgesReply) GetIgnoreIndexes() []uint32 {
	if x != nil {
		return x.IgnoreIndexes
	}
	return nil
}

func (x *InsertEdgesReply) GetIgnoreErrorCode() []uint32 {
	if x != nil {
		return x.IgnoreErrorCode
	}
	return nil
}

//------------------------10.InstallAlgo------------------------------
type InstallAlgoRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FileName string `protobuf:"bytes,1,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
	Md5      string `protobuf:"bytes,2,opt,name=md5,proto3" json:"md5,omitempty"`
	Chunk    []byte `protobuf:"bytes,3,opt,name=chunk,proto3" json:"chunk,omitempty"`
}

func (x *InstallAlgoRequest) Reset() {
	*x = InstallAlgoRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[24]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*InstallAlgoRequest) ProtoMessage() {}

func (x *InstallAlgoRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[24]
	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 InstallAlgoRequest.ProtoReflect.Descriptor instead.
func (*InstallAlgoRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{24}
}

func (x *InstallAlgoRequest) GetFileName() string {
	if x != nil {
		return x.FileName
	}
	return ""
}

func (x *InstallAlgoRequest) GetMd5() string {
	if x != nil {
		return x.Md5
	}
	return ""
}

func (x *InstallAlgoRequest) GetChunk() []byte {
	if x != nil {
		return x.Chunk
	}
	return nil
}

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

	Status *Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
}

func (x *InstallAlgoReply) Reset() {
	*x = InstallAlgoReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[25]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*InstallAlgoReply) ProtoMessage() {}

func (x *InstallAlgoReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[25]
	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 InstallAlgoReply.ProtoReflect.Descriptor instead.
func (*InstallAlgoReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{25}
}

func (x *InstallAlgoReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

//------------------------11.UninstallAlgo------------------------------
type UninstallAlgoRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AlgoName string `protobuf:"bytes,1,opt,name=algo_name,json=algoName,proto3" json:"algo_name,omitempty"`
}

func (x *UninstallAlgoRequest) Reset() {
	*x = UninstallAlgoRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[26]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UninstallAlgoRequest) ProtoMessage() {}

func (x *UninstallAlgoRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[26]
	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 UninstallAlgoRequest.ProtoReflect.Descriptor instead.
func (*UninstallAlgoRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{26}
}

func (x *UninstallAlgoRequest) GetAlgoName() string {
	if x != nil {
		return x.AlgoName
	}
	return ""
}

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

	Status *Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
}

func (x *UninstallAlgoReply) Reset() {
	*x = UninstallAlgoReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[27]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UninstallAlgoReply) ProtoMessage() {}

func (x *UninstallAlgoReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[27]
	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 UninstallAlgoReply.ProtoReflect.Descriptor instead.
func (*UninstallAlgoReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{27}
}

func (x *UninstallAlgoReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

//------------------------12.RemoteGraphLoader------------------------------
type UploaderRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	DbType          DBType `protobuf:"varint,1,opt,name=db_type,json=dbType,proto3,enum=ultipa.DBType" json:"db_type,omitempty"`
	GraphName       string `protobuf:"bytes,2,opt,name=graph_name,json=graphName,proto3" json:"graph_name,omitempty"`
	TotalFileCounts uint64 `protobuf:"varint,3,opt,name=total_file_counts,json=totalFileCounts,proto3" json:"total_file_counts,omitempty"`
	FileName        string `protobuf:"bytes,4,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
	FileSize        uint64 `protobuf:"varint,5,opt,name=file_size,json=fileSize,proto3" json:"file_size,omitempty"`
	Chunk           []byte `protobuf:"bytes,6,opt,name=chunk,proto3" json:"chunk,omitempty"`
}

func (x *UploaderRequest) Reset() {
	*x = UploaderRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[28]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UploaderRequest) ProtoMessage() {}

func (x *UploaderRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[28]
	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 UploaderRequest.ProtoReflect.Descriptor instead.
func (*UploaderRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{28}
}

func (x *UploaderRequest) GetDbType() DBType {
	if x != nil {
		return x.DbType
	}
	return DBType_DBNODE
}

func (x *UploaderRequest) GetGraphName() string {
	if x != nil {
		return x.GraphName
	}
	return ""
}

func (x *UploaderRequest) GetTotalFileCounts() uint64 {
	if x != nil {
		return x.TotalFileCounts
	}
	return 0
}

func (x *UploaderRequest) GetFileName() string {
	if x != nil {
		return x.FileName
	}
	return ""
}

func (x *UploaderRequest) GetFileSize() uint64 {
	if x != nil {
		return x.FileSize
	}
	return 0
}

func (x *UploaderRequest) GetChunk() []byte {
	if x != nil {
		return x.Chunk
	}
	return nil
}

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

	Status *Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
}

func (x *UploaderReply) Reset() {
	*x = UploaderReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[29]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UploaderReply) ProtoMessage() {}

func (x *UploaderReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[29]
	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 UploaderReply.ProtoReflect.Descriptor instead.
func (*UploaderReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{29}
}

func (x *UploaderReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

//------------------------13.RemoteGraphLoader------------------------------
type CreateGraphByUploaderRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	GraphName        string `protobuf:"bytes,1,opt,name=graph_name,json=graphName,proto3" json:"graph_name,omitempty"`
	GraphDescription string `protobuf:"bytes,2,opt,name=graph_description,json=graphDescription,proto3" json:"graph_description,omitempty"`
}

func (x *CreateGraphByUploaderRequest) Reset() {
	*x = CreateGraphByUploaderRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[30]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateGraphByUploaderRequest) ProtoMessage() {}

func (x *CreateGraphByUploaderRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[30]
	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 CreateGraphByUploaderRequest.ProtoReflect.Descriptor instead.
func (*CreateGraphByUploaderRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{30}
}

func (x *CreateGraphByUploaderRequest) GetGraphName() string {
	if x != nil {
		return x.GraphName
	}
	return ""
}

func (x *CreateGraphByUploaderRequest) GetGraphDescription() string {
	if x != nil {
		return x.GraphDescription
	}
	return ""
}

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

	Status *Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
}

func (x *CreateGraphByUploaderReply) Reset() {
	*x = CreateGraphByUploaderReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[31]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateGraphByUploaderReply) ProtoMessage() {}

func (x *CreateGraphByUploaderReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[31]
	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 CreateGraphByUploaderReply.ProtoReflect.Descriptor instead.
func (*CreateGraphByUploaderReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{31}
}

func (x *CreateGraphByUploaderReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

//------------------------14.InstallExta------------------------------
type InstallExtaRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FileName string `protobuf:"bytes,1,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
	Md5      string `protobuf:"bytes,2,opt,name=md5,proto3" json:"md5,omitempty"`
	Chunk    []byte `protobuf:"bytes,3,opt,name=chunk,proto3" json:"chunk,omitempty"`
}

func (x *InstallExtaRequest) Reset() {
	*x = InstallExtaRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[32]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*InstallExtaRequest) ProtoMessage() {}

func (x *InstallExtaRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[32]
	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 InstallExtaRequest.ProtoReflect.Descriptor instead.
func (*InstallExtaRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{32}
}

func (x *InstallExtaRequest) GetFileName() string {
	if x != nil {
		return x.FileName
	}
	return ""
}

func (x *InstallExtaRequest) GetMd5() string {
	if x != nil {
		return x.Md5
	}
	return ""
}

func (x *InstallExtaRequest) GetChunk() []byte {
	if x != nil {
		return x.Chunk
	}
	return nil
}

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

	Status *Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
}

func (x *InstallExtaReply) Reset() {
	*x = InstallExtaReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[33]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*InstallExtaReply) ProtoMessage() {}

func (x *InstallExtaReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[33]
	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 InstallExtaReply.ProtoReflect.Descriptor instead.
func (*InstallExtaReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{33}
}

func (x *InstallExtaReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

//------------------------15.UninstallExta------------------------------
type UninstallExtaRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ExtaName string `protobuf:"bytes,1,opt,name=exta_name,json=extaName,proto3" json:"exta_name,omitempty"`
}

func (x *UninstallExtaRequest) Reset() {
	*x = UninstallExtaRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[34]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UninstallExtaRequest) ProtoMessage() {}

func (x *UninstallExtaRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[34]
	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 UninstallExtaRequest.ProtoReflect.Descriptor instead.
func (*UninstallExtaRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{34}
}

func (x *UninstallExtaRequest) GetExtaName() string {
	if x != nil {
		return x.ExtaName
	}
	return ""
}

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

	Status *Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
}

func (x *UninstallExtaReply) Reset() {
	*x = UninstallExtaReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[35]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UninstallExtaReply) ProtoMessage() {}

func (x *UninstallExtaReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[35]
	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 UninstallExtaReply.ProtoReflect.Descriptor instead.
func (*UninstallExtaReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{35}
}

func (x *UninstallExtaReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

//------------------------16.Backup------------------------------
type BackupRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	BackupPath string `protobuf:"bytes,1,opt,name=backup_path,json=backupPath,proto3" json:"backup_path,omitempty"`
}

func (x *BackupRequest) Reset() {
	*x = BackupRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[36]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*BackupRequest) ProtoMessage() {}

func (x *BackupRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[36]
	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 BackupRequest.ProtoReflect.Descriptor instead.
func (*BackupRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{36}
}

func (x *BackupRequest) GetBackupPath() string {
	if x != nil {
		return x.BackupPath
	}
	return ""
}

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

	Status *Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
}

func (x *BackupReply) Reset() {
	*x = BackupReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[37]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*BackupReply) ProtoMessage() {}

func (x *BackupReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[37]
	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 BackupReply.ProtoReflect.Descriptor instead.
func (*BackupReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{37}
}

func (x *BackupReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

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

	ErrorCode   ErrorCode    `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3,enum=ultipa.ErrorCode" json:"error_code,omitempty"`
	Msg         string       `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`
	ClusterInfo *ClusterInfo `protobuf:"bytes,3,opt,name=cluster_info,json=clusterInfo,proto3" json:"cluster_info,omitempty"`
}

func (x *Status) Reset() {
	*x = Status{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[38]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Status) ProtoMessage() {}

func (x *Status) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[38]
	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 Status.ProtoReflect.Descriptor instead.
func (*Status) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{38}
}

func (x *Status) GetErrorCode() ErrorCode {
	if x != nil {
		return x.ErrorCode
	}
	return ErrorCode_SUCCESS
}

func (x *Status) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

func (x *Status) GetClusterInfo() *ClusterInfo {
	if x != nil {
		return x.ClusterInfo
	}
	return nil
}

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

	Address string       `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Role    int32        `protobuf:"varint,2,opt,name=role,proto3" json:"role,omitempty"`
	Status  ServerStatus `protobuf:"varint,3,opt,name=status,proto3,enum=ultipa.ServerStatus" json:"status,omitempty"`
}

func (x *RaftFollower) Reset() {
	*x = RaftFollower{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[39]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RaftFollower) ProtoMessage() {}

func (x *RaftFollower) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[39]
	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 RaftFollower.ProtoReflect.Descriptor instead.
func (*RaftFollower) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{39}
}

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

func (x *RaftFollower) GetRole() int32 {
	if x != nil {
		return x.Role
	}
	return 0
}

func (x *RaftFollower) GetStatus() ServerStatus {
	if x != nil {
		return x.Status
	}
	return ServerStatus_DEAD
}

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

	Redirect      string          `protobuf:"bytes,1,opt,name=redirect,proto3" json:"redirect,omitempty"`
	LeaderAddress string          `protobuf:"bytes,2,opt,name=leader_address,json=leaderAddress,proto3" json:"leader_address,omitempty"`
	Followers     []*RaftFollower `protobuf:"bytes,3,rep,name=followers,proto3" json:"followers,omitempty"`
}

func (x *ClusterInfo) Reset() {
	*x = ClusterInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[40]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ClusterInfo) ProtoMessage() {}

func (x *ClusterInfo) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[40]
	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 ClusterInfo.ProtoReflect.Descriptor instead.
func (*ClusterInfo) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{40}
}

func (x *ClusterInfo) GetRedirect() string {
	if x != nil {
		return x.Redirect
	}
	return ""
}

func (x *ClusterInfo) GetLeaderAddress() string {
	if x != nil {
		return x.LeaderAddress
	}
	return ""
}

func (x *ClusterInfo) GetFollowers() []*RaftFollower {
	if x != nil {
		return x.Followers
	}
	return nil
}

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

	NodeTable *EntityTable `protobuf:"bytes,1,opt,name=node_table,json=nodeTable,proto3" json:"node_table,omitempty"`
	EdgeTable *EntityTable `protobuf:"bytes,2,opt,name=edge_table,json=edgeTable,proto3" json:"edge_table,omitempty"`
}

func (x *Path) Reset() {
	*x = Path{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[41]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Path) ProtoMessage() {}

func (x *Path) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[41]
	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 Path.ProtoReflect.Descriptor instead.
func (*Path) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{41}
}

func (x *Path) GetNodeTable() *EntityTable {
	if x != nil {
		return x.NodeTable
	}
	return nil
}

func (x *Path) GetEdgeTable() *EntityTable {
	if x != nil {
		return x.EdgeTable
	}
	return nil
}

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

	TableName string      `protobuf:"bytes,1,opt,name=table_name,json=tableName,proto3" json:"table_name,omitempty"`
	Headers   []*Header   `protobuf:"bytes,2,rep,name=headers,proto3" json:"headers,omitempty"`
	TableRows []*TableRow `protobuf:"bytes,3,rep,name=table_rows,json=tableRows,proto3" json:"table_rows,omitempty"`
}

func (x *Table) Reset() {
	*x = Table{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[42]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Table) ProtoMessage() {}

func (x *Table) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[42]
	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 Table.ProtoReflect.Descriptor instead.
func (*Table) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{42}
}

func (x *Table) GetTableName() string {
	if x != nil {
		return x.TableName
	}
	return ""
}

func (x *Table) GetHeaders() []*Header {
	if x != nil {
		return x.Headers
	}
	return nil
}

func (x *Table) GetTableRows() []*TableRow {
	if x != nil {
		return x.TableRows
	}
	return nil
}

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

	Values [][]byte `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
}

func (x *TableRow) Reset() {
	*x = TableRow{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[43]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*TableRow) ProtoMessage() {}

func (x *TableRow) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[43]
	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 TableRow.ProtoReflect.Descriptor instead.
func (*TableRow) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{43}
}

func (x *TableRow) GetValues() [][]byte {
	if x != nil {
		return x.Values
	}
	return nil
}

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

	Schemas    []*Schema    `protobuf:"bytes,1,rep,name=schemas,proto3" json:"schemas,omitempty"`
	EntityRows []*EntityRow `protobuf:"bytes,3,rep,name=entity_rows,json=entityRows,proto3" json:"entity_rows,omitempty"`
}

func (x *EntityTable) Reset() {
	*x = EntityTable{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[44]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*EntityTable) ProtoMessage() {}

func (x *EntityTable) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[44]
	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 EntityTable.ProtoReflect.Descriptor instead.
func (*EntityTable) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{44}
}

func (x *EntityTable) GetSchemas() []*Schema {
	if x != nil {
		return x.Schemas
	}
	return nil
}

func (x *EntityTable) GetEntityRows() []*EntityRow {
	if x != nil {
		return x.EntityRows
	}
	return nil
}

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

	Uuid       uint64   `protobuf:"varint,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
	Id         string   `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	SchemaName string   `protobuf:"bytes,3,opt,name=schema_name,json=schemaName,proto3" json:"schema_name,omitempty"`
	FromUuid   uint64   `protobuf:"varint,4,opt,name=from_uuid,json=fromUuid,proto3" json:"from_uuid,omitempty"`
	ToUuid     uint64   `protobuf:"varint,5,opt,name=to_uuid,json=toUuid,proto3" json:"to_uuid,omitempty"`
	FromId     string   `protobuf:"bytes,6,opt,name=from_id,json=fromId,proto3" json:"from_id,omitempty"`
	ToId       string   `protobuf:"bytes,7,opt,name=to_id,json=toId,proto3" json:"to_id,omitempty"`
	Values     [][]byte `protobuf:"bytes,8,rep,name=values,proto3" json:"values,omitempty"`
	IsNull     bool     `protobuf:"varint,9,opt,name=is_null,json=isNull,proto3" json:"is_null,omitempty"`
}

func (x *EntityRow) Reset() {
	*x = EntityRow{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[45]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*EntityRow) ProtoMessage() {}

func (x *EntityRow) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[45]
	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 EntityRow.ProtoReflect.Descriptor instead.
func (*EntityRow) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{45}
}

func (x *EntityRow) GetUuid() uint64 {
	if x != nil {
		return x.Uuid
	}
	return 0
}

func (x *EntityRow) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *EntityRow) GetSchemaName() string {
	if x != nil {
		return x.SchemaName
	}
	return ""
}

func (x *EntityRow) GetFromUuid() uint64 {
	if x != nil {
		return x.FromUuid
	}
	return 0
}

func (x *EntityRow) GetToUuid() uint64 {
	if x != nil {
		return x.ToUuid
	}
	return 0
}

func (x *EntityRow) GetFromId() string {
	if x != nil {
		return x.FromId
	}
	return ""
}

func (x *EntityRow) GetToId() string {
	if x != nil {
		return x.ToId
	}
	return ""
}

func (x *EntityRow) GetValues() [][]byte {
	if x != nil {
		return x.Values
	}
	return nil
}

func (x *EntityRow) GetIsNull() bool {
	if x != nil {
		return x.IsNull
	}
	return false
}

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

	SchemaName string      `protobuf:"bytes,1,opt,name=schema_name,json=schemaName,proto3" json:"schema_name,omitempty"`
	Properties []*Property `protobuf:"bytes,2,rep,name=properties,proto3" json:"properties,omitempty"`
}

func (x *Schema) Reset() {
	*x = Schema{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[46]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Schema) ProtoMessage() {}

func (x *Schema) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[46]
	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 Schema.ProtoReflect.Descriptor instead.
func (*Schema) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{46}
}

func (x *Schema) GetSchemaName() string {
	if x != nil {
		return x.SchemaName
	}
	return ""
}

func (x *Schema) GetProperties() []*Property {
	if x != nil {
		return x.Properties
	}
	return nil
}

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

	PropertyName string         `protobuf:"bytes,1,opt,name=property_name,json=propertyName,proto3" json:"property_name,omitempty"`
	PropertyType PropertyType   `protobuf:"varint,2,opt,name=property_type,json=propertyType,proto3,enum=ultipa.PropertyType" json:"property_type,omitempty"`
	SubTypes     []PropertyType `protobuf:"varint,3,rep,packed,name=sub_types,json=subTypes,proto3,enum=ultipa.PropertyType" json:"sub_types,omitempty"`
}

func (x *Property) Reset() {
	*x = Property{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[47]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Property) ProtoMessage() {}

func (x *Property) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[47]
	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 Property.ProtoReflect.Descriptor instead.
func (*Property) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{47}
}

func (x *Property) GetPropertyName() string {
	if x != nil {
		return x.PropertyName
	}
	return ""
}

func (x *Property) GetPropertyType() PropertyType {
	if x != nil {
		return x.PropertyType
	}
	return PropertyType_UNSET
}

func (x *Property) GetSubTypes() []PropertyType {
	if x != nil {
		return x.SubTypes
	}
	return nil
}

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

	PropertyName string       `protobuf:"bytes,1,opt,name=property_name,json=propertyName,proto3" json:"property_name,omitempty"`
	PropertyType PropertyType `protobuf:"varint,2,opt,name=property_type,json=propertyType,proto3,enum=ultipa.PropertyType" json:"property_type,omitempty"`
}

func (x *Header) Reset() {
	*x = Header{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[48]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Header) ProtoMessage() {}

func (x *Header) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[48]
	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 Header.ProtoReflect.Descriptor instead.
func (*Header) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{48}
}

func (x *Header) GetPropertyName() string {
	if x != nil {
		return x.PropertyName
	}
	return ""
}

func (x *Header) GetPropertyType() PropertyType {
	if x != nil {
		return x.PropertyType
	}
	return PropertyType_UNSET
}

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

	Key   string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
}

func (x *Value) Reset() {
	*x = Value{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[49]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Value) ProtoMessage() {}

func (x *Value) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[49]
	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 Value.ProtoReflect.Descriptor instead.
func (*Value) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{49}
}

func (x *Value) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

func (x *Value) GetValue() string {
	if x != nil {
		return x.Value
	}
	return ""
}

//for rpc insert
type ListData struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Values [][]byte `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
	IsNull bool     `protobuf:"varint,2,opt,name=is_null,json=isNull,proto3" json:"is_null,omitempty"`
}

func (x *ListData) Reset() {
	*x = ListData{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[50]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListData) ProtoMessage() {}

func (x *ListData) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[50]
	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 ListData.ProtoReflect.Descriptor instead.
func (*ListData) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{50}
}

func (x *ListData) GetValues() [][]byte {
	if x != nil {
		return x.Values
	}
	return nil
}

func (x *ListData) GetIsNull() bool {
	if x != nil {
		return x.IsNull
	}
	return false
}

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

	Values [][]byte `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
	IsNull bool     `protobuf:"varint,2,opt,name=is_null,json=isNull,proto3" json:"is_null,omitempty"`
}

func (x *SetData) Reset() {
	*x = SetData{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[51]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SetData) ProtoMessage() {}

func (x *SetData) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[51]
	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 SetData.ProtoReflect.Descriptor instead.
func (*SetData) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{51}
}

func (x *SetData) GetValues() [][]byte {
	if x != nil {
		return x.Values
	}
	return nil
}

func (x *SetData) GetIsNull() bool {
	if x != nil {
		return x.IsNull
	}
	return false
}

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

	Key   []byte `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
}

func (x *MapValue) Reset() {
	*x = MapValue{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[52]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MapValue) ProtoMessage() {}

func (x *MapValue) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[52]
	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 MapValue.ProtoReflect.Descriptor instead.
func (*MapValue) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{52}
}

func (x *MapValue) GetKey() []byte {
	if x != nil {
		return x.Key
	}
	return nil
}

func (x *MapValue) GetValue() []byte {
	if x != nil {
		return x.Value
	}
	return nil
}

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

	Values []*MapValue `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
	IsNull bool        `protobuf:"varint,2,opt,name=is_null,json=isNull,proto3" json:"is_null,omitempty"`
}

func (x *MapData) Reset() {
	*x = MapData{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[53]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MapData) ProtoMessage() {}

func (x *MapData) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[53]
	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 MapData.ProtoReflect.Descriptor instead.
func (*MapData) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{53}
}

func (x *MapData) GetValues() []*MapValue {
	if x != nil {
		return x.Values
	}
	return nil
}

func (x *MapData) GetIsNull() bool {
	if x != nil {
		return x.IsNull
	}
	return false
}

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

	// 先序遍历结果
	PlanNodes []*PlanNode `protobuf:"bytes,1,rep,name=plan_nodes,json=planNodes,proto3" json:"plan_nodes,omitempty"`
}

func (x *ExplainPlan) Reset() {
	*x = ExplainPlan{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[54]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ExplainPlan) ProtoMessage() {}

func (x *ExplainPlan) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[54]
	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 ExplainPlan.ProtoReflect.Descriptor instead.
func (*ExplainPlan) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{54}
}

func (x *ExplainPlan) GetPlanNodes() []*PlanNode {
	if x != nil {
		return x.PlanNodes
	}
	return nil
}

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

	Alias       string `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"`
	ChildrenNum uint32 `protobuf:"varint,2,opt,name=children_num,json=childrenNum,proto3" json:"children_num,omitempty"`
	Uql         string `protobuf:"bytes,3,opt,name=uql,proto3" json:"uql,omitempty"`
	Infos       string `protobuf:"bytes,4,opt,name=infos,proto3" json:"infos,omitempty"`
}

func (x *PlanNode) Reset() {
	*x = PlanNode{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[55]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PlanNode) ProtoMessage() {}

func (x *PlanNode) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[55]
	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 PlanNode.ProtoReflect.Descriptor instead.
func (*PlanNode) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{55}
}

func (x *PlanNode) GetAlias() string {
	if x != nil {
		return x.Alias
	}
	return ""
}

func (x *PlanNode) GetChildrenNum() uint32 {
	if x != nil {
		return x.ChildrenNum
	}
	return 0
}

func (x *PlanNode) GetUql() string {
	if x != nil {
		return x.Uql
	}
	return ""
}

func (x *PlanNode) GetInfos() string {
	if x != nil {
		return x.Infos
	}
	return ""
}

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

	Type AuthenticateType `protobuf:"varint,1,opt,name=type,proto3,enum=ultipa.AuthenticateType" json:"type,omitempty"`
	Uql  string           `protobuf:"bytes,2,opt,name=uql,proto3" json:"uql,omitempty"`
}

func (x *AuthenticateRequest) Reset() {
	*x = AuthenticateRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[56]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AuthenticateRequest) ProtoMessage() {}

func (x *AuthenticateRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[56]
	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 AuthenticateRequest.ProtoReflect.Descriptor instead.
func (*AuthenticateRequest) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{56}
}

func (x *AuthenticateRequest) GetType() AuthenticateType {
	if x != nil {
		return x.Type
	}
	return AuthenticateType_PERMISSION_TYPE_UQL
}

func (x *AuthenticateRequest) GetUql() string {
	if x != nil {
		return x.Uql
	}
	return ""
}

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

	Status *Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
}

func (x *AuthenticateReply) Reset() {
	*x = AuthenticateReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ultipa_proto_msgTypes[57]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AuthenticateReply) ProtoMessage() {}

func (x *AuthenticateReply) ProtoReflect() protoreflect.Message {
	mi := &file_ultipa_proto_msgTypes[57]
	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 AuthenticateReply.ProtoReflect.Descriptor instead.
func (*AuthenticateReply) Descriptor() ([]byte, []int) {
	return file_ultipa_proto_rawDescGZIP(), []int{57}
}

func (x *AuthenticateReply) GetStatus() *Status {
	if x != nil {
		return x.Status
	}
	return nil
}

var File_ultipa_proto protoreflect.FileDescriptor

var file_ultipa_proto_rawDesc = []byte{
	0x0a, 0x0c, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x06,
	0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x22, 0x28, 0x0a, 0x12, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x55,
	0x6c, 0x74, 0x69, 0x70, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x22, 0x54, 0x0a, 0x10, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x55, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x52,
	0x65, 0x70, 0x6c, 0x79, 0x12, 0x26, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07,
	0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d,
	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xc0, 0x01, 0x0a, 0x0a, 0x55, 0x71, 0x6c, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x71, 0x6c, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x75, 0x71, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f,
	0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75,
	0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x72, 0x61, 0x70, 0x68, 0x4e, 0x61, 0x6d, 0x65,
	0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a,
	0x0a, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x09, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x12, 0x0e, 0x0a, 0x02,
	0x74, 0x7a, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x74, 0x7a, 0x12, 0x1b, 0x0a, 0x09,
	0x74, 0x7a, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x74, 0x7a, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x58, 0x0a, 0x0b, 0x52, 0x65, 0x73,
	0x75, 0x6c, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61,
	0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x33,
	0x0a, 0x0b, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x52, 0x65, 0x73,
	0x75, 0x6c, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x54,
	0x79, 0x70, 0x65, 0x22, 0xe1, 0x03, 0x0a, 0x08, 0x55, 0x71, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79,
	0x12, 0x26, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6f, 0x74, 0x61,
	0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x73, 0x74,
	0x12, 0x28, 0x0a, 0x10, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f,
	0x63, 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x65, 0x6e, 0x67, 0x69,
	0x6e, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x05, 0x61, 0x6c,
	0x69, 0x61, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x75, 0x6c, 0x74, 0x69,
	0x70, 0x61, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05,
	0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x27, 0x0a, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x05,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x50, 0x61,
	0x74, 0x68, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x12, 0x27,
	0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e,
	0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x6c, 0x69, 0x61, 0x73,
	0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x05, 0x65, 0x64, 0x67, 0x65, 0x73,
	0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e,
	0x45, 0x64, 0x67, 0x65, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x65, 0x64, 0x67, 0x65, 0x73,
	0x12, 0x27, 0x0a, 0x05, 0x61, 0x74, 0x74, 0x72, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x11, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x41, 0x6c, 0x69,
	0x61, 0x73, 0x52, 0x05, 0x61, 0x74, 0x74, 0x72, 0x73, 0x12, 0x25, 0x0a, 0x06, 0x74, 0x61, 0x62,
	0x6c, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x75, 0x6c, 0x74, 0x69,
	0x70, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x06, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73,
	0x12, 0x2d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x18, 0x0b,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x54, 0x61,
	0x62, 0x6c, 0x65, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x12,
	0x36, 0x0a, 0x0c, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x18,
	0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x45,
	0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x6e, 0x52, 0x0b, 0x65, 0x78, 0x70, 0x6c,
	0x61, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x6e, 0x22, 0x45, 0x0a, 0x09, 0x50, 0x61, 0x74, 0x68, 0x41,
	0x6c, 0x69, 0x61, 0x73, 0x12, 0x22, 0x0a, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x50, 0x61, 0x74,
	0x68, 0x52, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61,
	0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x22, 0x55,
	0x0a, 0x09, 0x45, 0x64, 0x67, 0x65, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x32, 0x0a, 0x0a, 0x65,
	0x64, 0x67, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x13, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54,
	0x61, 0x62, 0x6c, 0x65, 0x52, 0x09, 0x65, 0x64, 0x67, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12,
	0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
	0x61, 0x6c, 0x69, 0x61, 0x73, 0x22, 0x55, 0x0a, 0x09, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x6c, 0x69,
	0x61, 0x73, 0x12, 0x32, 0x0a, 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e,
	0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x09, 0x6e, 0x6f, 0x64,
	0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x22, 0x43, 0x0a, 0x09,
	0x41, 0x74, 0x74, 0x72, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69,
	0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12,
	0x20, 0x0a, 0x04, 0x61, 0x74, 0x74, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e,
	0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x52, 0x04, 0x61, 0x74, 0x74,
	0x72, 0x22, 0x53, 0x0a, 0x04, 0x41, 0x74, 0x74, 0x72, 0x12, 0x33, 0x0a, 0x0a, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e,
	0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x54,
	0x79, 0x70, 0x65, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16,
	0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0xed, 0x01, 0x0a, 0x0c, 0x41, 0x74, 0x74, 0x72, 0x4c,
	0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x26, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x52,
	0x65, 0x73, 0x75, 0x6c, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12,
	0x29, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13,
	0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x61,
	0x62, 0x6c, 0x65, 0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x05, 0x65, 0x64,
	0x67, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x75, 0x6c, 0x74, 0x69,
	0x70, 0x61, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x05,
	0x65, 0x64, 0x67, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x04,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x50, 0x61,
	0x74, 0x68, 0x52, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x12, 0x22, 0x0a, 0x05, 0x61, 0x74, 0x74,
	0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70,
	0x61, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x52, 0x05, 0x61, 0x74, 0x74, 0x72, 0x73, 0x12, 0x17, 0x0a,
	0x07, 0x69, 0x73, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06,
	0x69, 0x73, 0x4e, 0x75, 0x6c, 0x6c, 0x22, 0x51, 0x0a, 0x0b, 0x41, 0x74, 0x74, 0x72, 0x4d, 0x61,
	0x70, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x41, 0x74, 0x74, 0x72,
	0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x22, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x41, 0x74,
	0x74, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xb2, 0x01, 0x0a, 0x12, 0x55, 0x73,
	0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x33, 0x0a,
	0x03, 0x6f, 0x70, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x75, 0x6c, 0x74,
	0x69, 0x70, 0x61, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x52, 0x03, 0x6f,
	0x70, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x22, 0x0a, 0x06, 0x4f, 0x50,
	0x54, 0x49, 0x4f, 0x4e, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x50, 0x54, 0x5f, 0x47, 0x45, 0x54, 0x10,
	0x00, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x50, 0x54, 0x5f, 0x53, 0x45, 0x54, 0x10, 0x01, 0x22, 0x4e,
	0x0a, 0x10, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70,
	0x6c, 0x79, 0x12, 0x26, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61,
	0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x4d,
	0x0a, 0x15, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x32, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65,
	0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0x70, 0x0a,
	0x11, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x70,
	0x6c, 0x79, 0x12, 0x26, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f,
	0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09,
	0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x68, 0x75,
	0x6e, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x22,
	0x93, 0x01, 0x0a, 0x0d, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x27, 0x0a, 0x07, 0x64, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x44, 0x42, 0x54, 0x79,
	0x70, 0x65, 0x52, 0x06, 0x64, 0x62, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69,
	0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74,
	0x12, 0x2b, 0x0a, 0x11, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x65,
	0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x73, 0x65, 0x6c,
	0x65, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x16, 0x0a,
	0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73,
	0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x9d, 0x01, 0x0a, 0x0b, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74,
	0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x26, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x32, 0x0a,
	0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x13, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74,
	0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x54, 0x61, 0x62, 0x6c,
	0x65, 0x12, 0x32, 0x0a, 0x0a, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x45,
	0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x09, 0x65, 0x64, 0x67, 0x65,
	0x54, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x12, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x4c, 0x65, 0x61, 0x64,
	0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x38, 0x0a, 0x0e, 0x47, 0x65, 0x74,
	0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x26, 0x0a, 0x06, 0x73,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x75, 0x6c,
	0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x22, 0xb4, 0x01, 0x0a, 0x12, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x4e, 0x6f,
	0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x0a, 0x6e, 0x6f,
	0x64, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13,
	0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x61,
	0x62, 0x6c, 0x65, 0x52, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x69, 0x6c, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06,
	0x73, 0x69, 0x6c, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x72, 0x61, 0x70,
	0x68, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x33, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x5f,
	0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x75, 0x6c, 0x74,
	0x69, 0x70, 0x61, 0x2e, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a,
	0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x80, 0x02, 0x0a, 0x10, 0x49,
	0x6e, 0x73, 0x65, 0x72, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12,
	0x26, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x5f,
	0x63, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x74, 0x69, 0x6d, 0x65,
	0x43, 0x6f, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x74,
	0x69, 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e,
	0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x73, 0x74, 0x12, 0x18,
	0x0a, 0x05, 0x75, 0x75, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x04, 0x42, 0x02, 0x30,
	0x01, 0x52, 0x05, 0x75, 0x75, 0x69, 0x64, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x69, 0x64, 0x73, 0x18,
	0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x69, 0x64, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x67,
	0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03,
	0x28, 0x0d, 0x52, 0x0d, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65,
	0x73, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0f, 0x69, 0x67,
	0x6e, 0x6f, 0x72, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x22, 0xec, 0x01,
	0x0a, 0x12, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x45, 0x64, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x0a, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x74, 0x61, 0x62,
	0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70,
	0x61, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x09, 0x65,
	0x64, 0x67, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x69, 0x6c, 0x65,
	0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x69, 0x6c, 0x65, 0x6e, 0x74,
	0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x72, 0x61, 0x70, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x12,
	0x36, 0x0a, 0x18, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69,
	0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x14, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x66, 0x4e,
	0x6f, 0x74, 0x45, 0x78, 0x69, 0x73, 0x74, 0x12, 0x33, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x65, 0x72,
	0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x75,
	0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x54, 0x79, 0x70, 0x65,
	0x52, 0x0a, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0xee, 0x01, 0x0a,
	0x10, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x45, 0x64, 0x67, 0x65, 0x73, 0x52, 0x65, 0x70, 0x6c,
	0x79, 0x12, 0x26, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x69, 0x6d,
	0x65, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x74, 0x69,
	0x6d, 0x65, 0x43, 0x6f, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65,
	0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x0e, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x73, 0x74,
	0x12, 0x18, 0x0a, 0x05, 0x75, 0x75, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x04, 0x42,
	0x02, 0x30, 0x01, 0x52, 0x05, 0x75, 0x75, 0x69, 0x64, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x67,
	0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03,
	0x28, 0x0d, 0x52, 0x0d, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65,
	0x73, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0f, 0x69, 0x67,
	0x6e, 0x6f, 0x72, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x59, 0x0a,
	0x12, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x41, 0x6c, 0x67, 0x6f, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65,
	0x12, 0x10, 0x0a, 0x03, 0x6d, 0x64, 0x35, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d,
	0x64, 0x35, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x05, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x22, 0x3a, 0x0a, 0x10, 0x49, 0x6e, 0x73, 0x74,
	0x61, 0x6c, 0x6c, 0x41, 0x6c, 0x67, 0x6f, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x26, 0x0a, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x75,
	0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x22, 0x33, 0x0a, 0x14, 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c,
	0x6c, 0x41, 0x6c, 0x67, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09,
	0x61, 0x6c, 0x67, 0x6f, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x61, 0x6c, 0x67, 0x6f, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3c, 0x0a, 0x12, 0x55, 0x6e, 0x69,
	0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x41, 0x6c, 0x67, 0x6f, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12,
	0x26, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xd5, 0x01, 0x0a, 0x0f, 0x55, 0x70, 0x6c, 0x6f,
	0x61, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x07, 0x64,
	0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x75,
	0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x44, 0x42, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x64, 0x62,
	0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x72, 0x61, 0x70, 0x68, 0x4e,
	0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x6c,
	0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f,
	0x74, 0x6f, 0x74, 0x61, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12,
	0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09,
	0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52,
	0x08, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x68, 0x75,
	0x6e, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x22,
	0x37, 0x0a, 0x0d, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79,
	0x12, 0x26, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x6a, 0x0a, 0x1c, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x42, 0x79, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65,
	0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x70,
	0x68, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x72,
	0x61, 0x70, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x67, 0x72, 0x61, 0x70, 0x68,
	0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x10, 0x67, 0x72, 0x61, 0x70, 0x68, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x22, 0x44, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72,
	0x61, 0x70, 0x68, 0x42, 0x79, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65, 0x70,
	0x6c, 0x79, 0x12, 0x26, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x59, 0x0a, 0x12, 0x49, 0x6e,
	0x73, 0x74, 0x61, 0x6c, 0x6c, 0x45, 0x78, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a,
	0x03, 0x6d, 0x64, 0x35, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x64, 0x35, 0x12,
	0x14, 0x0a, 0x05, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05,
	0x63, 0x68, 0x75, 0x6e, 0x6b, 0x22, 0x3a, 0x0a, 0x10, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c,
	0x45, 0x78, 0x74, 0x61, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x26, 0x0a, 0x06, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69,
	0x70, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x22, 0x33, 0x0a, 0x14, 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x45, 0x78,
	0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x78, 0x74,
	0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x78,
	0x74, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3c, 0x0a, 0x12, 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74,
	0x61, 0x6c, 0x6c, 0x45, 0x78, 0x74, 0x61, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x26, 0x0a, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x75,
	0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x22, 0x30, 0x0a, 0x0d, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f,
	0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x61, 0x63, 0x6b,
	0x75, 0x70, 0x50, 0x61, 0x74, 0x68, 0x22, 0x35, 0x0a, 0x0b, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70,
	0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x26, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x84, 0x01,
	0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x30, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x75,
	0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52,
	0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73,
	0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x36, 0x0a, 0x0c,
	0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x13, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x43, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x49, 0x6e, 0x66, 0x6f, 0x22, 0x6a, 0x0a, 0x0c, 0x52, 0x61, 0x66, 0x74, 0x46, 0x6f, 0x6c, 0x6c,
	0x6f, 0x77, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12,
	0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x72, 0x6f,
	0x6c, 0x65, 0x12, 0x2c, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x14, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x22, 0x84, 0x01, 0x0a, 0x0b, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f,
	0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x25, 0x0a, 0x0e,
	0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x12, 0x32, 0x0a, 0x09, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x73,
	0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e,
	0x52, 0x61, 0x66, 0x74, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x52, 0x09, 0x66, 0x6f,
	0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x73, 0x22, 0x6e, 0x0a, 0x04, 0x50, 0x61, 0x74, 0x68, 0x12,
	0x32, 0x0a, 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x45, 0x6e, 0x74,
	0x69, 0x74, 0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x54, 0x61,
	0x62, 0x6c, 0x65, 0x12, 0x32, 0x0a, 0x0a, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61,
	0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x09, 0x65, 0x64,
	0x67, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x81, 0x01, 0x0a, 0x05, 0x54, 0x61, 0x62, 0x6c,
	0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65,
	0x12, 0x28, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65,
	0x72, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x2f, 0x0a, 0x0a, 0x74, 0x61,
	0x62, 0x6c, 0x65, 0x5f, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10,
	0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x6f, 0x77,
	0x52, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x6f, 0x77, 0x73, 0x22, 0x22, 0x0a, 0x08, 0x54,
	0x61, 0x62, 0x6c, 0x65, 0x52, 0x6f, 0x77, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22,
	0x6b, 0x0a, 0x0b, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x28,
	0x0a, 0x07, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x0e, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52,
	0x07, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x12, 0x32, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69,
	0x74, 0x79, 0x5f, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e,
	0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x6f, 0x77,
	0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x6f, 0x77, 0x73, 0x22, 0xf1, 0x01, 0x0a,
	0x09, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x6f, 0x77, 0x12, 0x16, 0x0a, 0x04, 0x75, 0x75,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x02, 0x30, 0x01, 0x52, 0x04, 0x75, 0x75,
	0x69, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
	0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4e,
	0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x09, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x75, 0x75, 0x69, 0x64,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x42, 0x02, 0x30, 0x01, 0x52, 0x08, 0x66, 0x72, 0x6f, 0x6d,
	0x55, 0x75, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x07, 0x74, 0x6f, 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x04, 0x42, 0x02, 0x30, 0x01, 0x52, 0x06, 0x74, 0x6f, 0x55, 0x75, 0x69,
	0x64, 0x12, 0x17, 0x0a, 0x07, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x66, 0x72, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x13, 0x0a, 0x05, 0x74, 0x6f,
	0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x6f, 0x49, 0x64, 0x12,
	0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0c, 0x52,
	0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x73, 0x5f, 0x6e, 0x75,
	0x6c, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x4e, 0x75, 0x6c, 0x6c,
	0x22, 0x5b, 0x0a, 0x06, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x63,
	0x68, 0x65, 0x6d, 0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x0a, 0x70,
	0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x10, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74,
	0x79, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x22, 0x9d, 0x01,
	0x0a, 0x08, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72,
	0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12,
	0x39, 0x0a, 0x0d, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e,
	0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x70, 0x72,
	0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x31, 0x0a, 0x09, 0x73, 0x75,
	0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14, 0x2e,
	0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x54,
	0x79, 0x70, 0x65, 0x52, 0x08, 0x73, 0x75, 0x62, 0x54, 0x79, 0x70, 0x65, 0x73, 0x22, 0x68, 0x0a,
	0x06, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x6f, 0x70, 0x65,
	0x72, 0x74, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c,
	0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x0d,
	0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x50, 0x72, 0x6f,
	0x70, 0x65, 0x72, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x70, 0x65,
	0x72, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x0a, 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65,
	0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b,
	0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x3b, 0x0a, 0x08, 0x4c, 0x69, 0x73, 0x74,
	0x44, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01,
	0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x17, 0x0a, 0x07,
	0x69, 0x73, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69,
	0x73, 0x4e, 0x75, 0x6c, 0x6c, 0x22, 0x3a, 0x0a, 0x07, 0x53, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61,
	0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c,
	0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x73, 0x5f, 0x6e,
	0x75, 0x6c, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x4e, 0x75, 0x6c,
	0x6c, 0x22, 0x32, 0x0a, 0x08, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x10, 0x0a,
	0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
	0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x4c, 0x0a, 0x07, 0x4d, 0x61, 0x70, 0x44, 0x61, 0x74, 0x61,
	0x12, 0x28, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x10, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x6c,
	0x75, 0x65, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x73,
	0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x4e,
	0x75, 0x6c, 0x6c, 0x22, 0x3e, 0x0a, 0x0b, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x50, 0x6c,
	0x61, 0x6e, 0x12, 0x2f, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x6e, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x73,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e,
	0x50, 0x6c, 0x61, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x6e, 0x4e, 0x6f,
	0x64, 0x65, 0x73, 0x22, 0x6b, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x12,
	0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
	0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65,
	0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x69,
	0x6c, 0x64, 0x72, 0x65, 0x6e, 0x4e, 0x75, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x71, 0x6c, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x71, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e,
	0x66, 0x6f, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x69, 0x6e, 0x66, 0x6f, 0x73,
	0x22, 0x55, 0x0a, 0x13, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x41,
	0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52,
	0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x71, 0x6c, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x75, 0x71, 0x6c, 0x22, 0x3b, 0x0a, 0x11, 0x41, 0x75, 0x74, 0x68, 0x65,
	0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x26, 0x0a, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x75,
	0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x2a, 0x92, 0x01, 0x0a, 0x0a, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x54,
	0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x54, 0x59,
	0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x45,
	0x53, 0x55, 0x4c, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x41, 0x54, 0x48, 0x10, 0x01,
	0x12, 0x14, 0x0a, 0x10, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f,
	0x4e, 0x4f, 0x44, 0x45, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54,
	0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x44, 0x47, 0x45, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10,
	0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x54, 0x54, 0x52,
	0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x54, 0x59, 0x50,
	0x45, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x05, 0x2a, 0x33, 0x0a, 0x0a, 0x49, 0x6e, 0x73,
	0x65, 0x72, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x4f, 0x52, 0x4d, 0x41,
	0x4c, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x4f, 0x56, 0x45, 0x52, 0x57, 0x52, 0x49, 0x54, 0x45,
	0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x50, 0x53, 0x45, 0x52, 0x54, 0x10, 0x02, 0x2a, 0xda,
	0x01, 0x0a, 0x0c, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12,
	0x09, 0x0a, 0x05, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e,
	0x54, 0x33, 0x32, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10,
	0x02, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06,
	0x55, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x46, 0x4c, 0x4f, 0x41,
	0x54, 0x10, 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x4f, 0x55, 0x42, 0x4c, 0x45, 0x10, 0x06, 0x12,
	0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x07, 0x12, 0x0c, 0x0a, 0x08, 0x44,
	0x41, 0x54, 0x45, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x49, 0x4d,
	0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0x09, 0x12, 0x08, 0x0a, 0x04, 0x54, 0x45, 0x58, 0x54,
	0x10, 0x0a, 0x12, 0x08, 0x0a, 0x04, 0x42, 0x4c, 0x4f, 0x42, 0x10, 0x0b, 0x12, 0x09, 0x0a, 0x05,
	0x50, 0x4f, 0x49, 0x4e, 0x54, 0x10, 0x0c, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x43, 0x49, 0x4d,
	0x41, 0x4c, 0x10, 0x0d, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x49, 0x53, 0x54, 0x10, 0x0e, 0x12, 0x07,
	0x0a, 0x03, 0x53, 0x45, 0x54, 0x10, 0x0f, 0x12, 0x07, 0x0a, 0x03, 0x4d, 0x41, 0x50, 0x10, 0x10,
	0x12, 0x09, 0x0a, 0x05, 0x4e, 0x55, 0x4c, 0x4c, 0x5f, 0x10, 0x11, 0x2a, 0xb2, 0x02, 0x0a, 0x09,
	0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43,
	0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44,
	0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x45, 0x52, 0x52, 0x4f,
	0x52, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x44, 0x42, 0x5f, 0x45,
	0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x45, 0x4e, 0x47, 0x49, 0x4e, 0x45,
	0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x59, 0x53, 0x54,
	0x45, 0x4d, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x41,
	0x46, 0x54, 0x5f, 0x52, 0x45, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x10, 0x06, 0x12, 0x1f, 0x0a,
	0x1b, 0x52, 0x41, 0x46, 0x54, 0x5f, 0x4c, 0x45, 0x41, 0x44, 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x54,
	0x5f, 0x59, 0x45, 0x54, 0x5f, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x07, 0x12, 0x12,
	0x0a, 0x0e, 0x52, 0x41, 0x46, 0x54, 0x5f, 0x4c, 0x4f, 0x47, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52,
	0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x51, 0x4c, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10,
	0x09, 0x12, 0x11, 0x0a, 0x0d, 0x4e, 0x4f, 0x54, 0x5f, 0x52, 0x41, 0x46, 0x54, 0x5f, 0x4d, 0x4f,
	0x44, 0x45, 0x10, 0x0a, 0x12, 0x1f, 0x0a, 0x1b, 0x52, 0x41, 0x46, 0x54, 0x5f, 0x4e, 0x4f, 0x5f,
	0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x46, 0x4f, 0x4c, 0x4c, 0x4f, 0x57,
	0x45, 0x52, 0x53, 0x10, 0x0b, 0x12, 0x22, 0x0a, 0x1e, 0x52, 0x41, 0x46, 0x54, 0x5f, 0x4e, 0x4f,
	0x5f, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x41, 0x4c, 0x47, 0x4f, 0x5f,
	0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x53, 0x10, 0x0c, 0x12, 0x15, 0x0a, 0x11, 0x50, 0x45, 0x52,
	0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x45, 0x4e, 0x49, 0x45, 0x44, 0x10, 0x0d,
	0x2a, 0x5d, 0x0a, 0x0c, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65,
	0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00,
	0x12, 0x11, 0x0a, 0x0d, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x52, 0x45, 0x41, 0x44, 0x41, 0x42, 0x4c,
	0x45, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x41, 0x4c, 0x47, 0x4f,
	0x5f, 0x45, 0x58, 0x45, 0x43, 0x55, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x10, 0x0a,
	0x0c, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x45, 0x52, 0x10, 0x04, 0x2a,
	0x23, 0x0a, 0x0c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
	0x08, 0x0a, 0x04, 0x44, 0x45, 0x41, 0x44, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x41, 0x4c, 0x49,
	0x56, 0x45, 0x10, 0x01, 0x2a, 0x2e, 0x0a, 0x06, 0x44, 0x42, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a,
	0x0a, 0x06, 0x44, 0x42, 0x4e, 0x4f, 0x44, 0x45, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x42,
	0x45, 0x44, 0x47, 0x45, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x42, 0x47, 0x4c, 0x4f, 0x42,
	0x41, 0x4c, 0x10, 0x02, 0x2a, 0x77, 0x0a, 0x0b, 0x54, 0x41, 0x53, 0x4b, 0x5f, 0x53, 0x54, 0x41,
	0x54, 0x55, 0x53, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x41, 0x53, 0x4b, 0x5f, 0x50, 0x45, 0x4e, 0x44,
	0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x41, 0x53, 0x4b, 0x5f, 0x43, 0x4f,
	0x4d, 0x50, 0x55, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x41, 0x53,
	0x4b, 0x5f, 0x57, 0x52, 0x49, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x54,
	0x41, 0x53, 0x4b, 0x5f, 0x44, 0x4f, 0x4e, 0x45, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x41,
	0x53, 0x4b, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x54,
	0x41, 0x53, 0x4b, 0x5f, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x45, 0x44, 0x10, 0x05, 0x2a, 0xfc, 0x02,
	0x0a, 0x10, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x54, 0x79,
	0x70, 0x65, 0x12, 0x17, 0x0a, 0x13, 0x50, 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e,
	0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x51, 0x4c, 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x50,
	0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49,
	0x4e, 0x53, 0x45, 0x52, 0x54, 0x4e, 0x4f, 0x44, 0x45, 0x53, 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b,
	0x50, 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f,
	0x49, 0x4e, 0x53, 0x45, 0x52, 0x54, 0x45, 0x44, 0x47, 0x45, 0x53, 0x10, 0x02, 0x12, 0x1a, 0x0a,
	0x16, 0x50, 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45,
	0x5f, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x10, 0x03, 0x12, 0x20, 0x0a, 0x1c, 0x50, 0x45, 0x52,
	0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x44, 0x4f, 0x57,
	0x4e, 0x4c, 0x4f, 0x41, 0x44, 0x46, 0x49, 0x4c, 0x45, 0x10, 0x04, 0x12, 0x1f, 0x0a, 0x1b, 0x50,
	0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49,
	0x4e, 0x53, 0x54, 0x41, 0x4c, 0x4c, 0x41, 0x4c, 0x47, 0x4f, 0x10, 0x05, 0x12, 0x21, 0x0a, 0x1d,
	0x50, 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f,
	0x55, 0x4e, 0x49, 0x4e, 0x53, 0x54, 0x41, 0x4c, 0x4c, 0x41, 0x4c, 0x47, 0x4f, 0x10, 0x06, 0x12,
	0x1c, 0x0a, 0x18, 0x50, 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59,
	0x50, 0x45, 0x5f, 0x55, 0x50, 0x4c, 0x4f, 0x41, 0x44, 0x45, 0x52, 0x10, 0x07, 0x12, 0x29, 0x0a,
	0x25, 0x50, 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45,
	0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x47, 0x52, 0x41, 0x50, 0x48, 0x42, 0x59, 0x55, 0x50,
	0x4c, 0x4f, 0x41, 0x44, 0x45, 0x52, 0x10, 0x08, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x45, 0x52, 0x4d,
	0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x53, 0x54,
	0x41, 0x4c, 0x4c, 0x45, 0x58, 0x54, 0x41, 0x10, 0x09, 0x12, 0x21, 0x0a, 0x1d, 0x50, 0x45, 0x52,
	0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x49,
	0x4e, 0x53, 0x54, 0x41, 0x4c, 0x4c, 0x45, 0x58, 0x54, 0x41, 0x10, 0x0a, 0x32, 0x8f, 0x02, 0x0a,
	0x0a, 0x55, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x52, 0x70, 0x63, 0x73, 0x12, 0x42, 0x0a, 0x08, 0x53,
	0x61, 0x79, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x12, 0x1a, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61,
	0x2e, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x55, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x48, 0x65, 0x6c,
	0x6c, 0x6f, 0x55, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x12,
	0x2f, 0x0a, 0x03, 0x55, 0x71, 0x6c, 0x12, 0x12, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e,
	0x55, 0x71, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x75, 0x6c, 0x74,
	0x69, 0x70, 0x61, 0x2e, 0x55, 0x71, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x30, 0x01,
	0x12, 0x45, 0x0a, 0x0b, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12,
	0x1a, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x4e,
	0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x75, 0x6c,
	0x74, 0x69, 0x70, 0x61, 0x2e, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73,
	0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0b, 0x49, 0x6e, 0x73, 0x65, 0x72,
	0x74, 0x45, 0x64, 0x67, 0x65, 0x73, 0x12, 0x1a, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e,
	0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x45, 0x64, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x18, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x49, 0x6e, 0x73, 0x65,
	0x72, 0x74, 0x45, 0x64, 0x67, 0x65, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x32, 0xec,
	0x07, 0x0a, 0x0e, 0x55, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c,
	0x73, 0x12, 0x42, 0x0a, 0x08, 0x53, 0x61, 0x79, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x12, 0x1a, 0x2e,
	0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x55, 0x6c, 0x74, 0x69,
	0x70, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x75, 0x6c, 0x74, 0x69,
	0x70, 0x61, 0x2e, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x55, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x52, 0x65,
	0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x74,
	0x74, 0x69, 0x6e, 0x67, 0x12, 0x1a, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x55, 0x73,
	0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x18, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65,
	0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x09,
	0x47, 0x65, 0x74, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x18, 0x2e, 0x75, 0x6c, 0x74, 0x69,
	0x70, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x47, 0x65, 0x74,
	0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x31, 0x0a,
	0x05, 0x55, 0x71, 0x6c, 0x45, 0x78, 0x12, 0x12, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e,
	0x55, 0x71, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x75, 0x6c, 0x74,
	0x69, 0x70, 0x61, 0x2e, 0x55, 0x71, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x30, 0x01,
	0x12, 0x38, 0x0a, 0x06, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x15, 0x2e, 0x75, 0x6c, 0x74,
	0x69, 0x70, 0x61, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x13, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72,
	0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x30, 0x01, 0x12, 0x4e, 0x0a, 0x0e, 0x44, 0x6f,
	0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x56, 0x32, 0x12, 0x1d, 0x2e, 0x75,
	0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69,
	0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x32, 0x1a, 0x19, 0x2e, 0x75, 0x6c,
	0x74, 0x69, 0x70, 0x61, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c,
	0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x30, 0x01, 0x12, 0x47, 0x0a, 0x0b, 0x49, 0x6e,
	0x73, 0x74, 0x61, 0x6c, 0x6c, 0x41, 0x6c, 0x67, 0x6f, 0x12, 0x1a, 0x2e, 0x75, 0x6c, 0x74, 0x69,
	0x70, 0x61, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x41, 0x6c, 0x67, 0x6f, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x49,
	0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x41, 0x6c, 0x67, 0x6f, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22,
	0x00, 0x28, 0x01, 0x12, 0x4b, 0x0a, 0x0d, 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c,
	0x41, 0x6c, 0x67, 0x6f, 0x12, 0x1c, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x55, 0x6e,
	0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x41, 0x6c, 0x67, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x55, 0x6e, 0x69, 0x6e,
	0x73, 0x74, 0x61, 0x6c, 0x6c, 0x41, 0x6c, 0x67, 0x6f, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00,
	0x12, 0x3e, 0x0a, 0x08, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x12, 0x17, 0x2e, 0x75,
	0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x55,
	0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x28, 0x01,
	0x12, 0x63, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x42,
	0x79, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x12, 0x24, 0x2e, 0x75, 0x6c, 0x74, 0x69,
	0x70, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x42, 0x79,
	0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x22, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47,
	0x72, 0x61, 0x70, 0x68, 0x42, 0x79, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65,
	0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x47, 0x0a, 0x0b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c,
	0x45, 0x78, 0x74, 0x61, 0x12, 0x1a, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x49, 0x6e,
	0x73, 0x74, 0x61, 0x6c, 0x6c, 0x45, 0x78, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x18, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c,
	0x6c, 0x45, 0x78, 0x74, 0x61, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x28, 0x01, 0x12, 0x4b,
	0x0a, 0x0d, 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x45, 0x78, 0x74, 0x61, 0x12,
	0x1c, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74, 0x61,
	0x6c, 0x6c, 0x45, 0x78, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e,
	0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c,
	0x45, 0x78, 0x74, 0x61, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0c, 0x41,
	0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x2e, 0x75, 0x6c,
	0x74, 0x69, 0x70, 0x61, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70,
	0x61, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65,
	0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x06, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12,
	0x15, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x2e,
	0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x42, 0x0a, 0x5a,
	0x08, 0x2e, 0x3b, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x33,
}

var (
	file_ultipa_proto_rawDescOnce sync.Once
	file_ultipa_proto_rawDescData = file_ultipa_proto_rawDesc
)

func file_ultipa_proto_rawDescGZIP() []byte {
	file_ultipa_proto_rawDescOnce.Do(func() {
		file_ultipa_proto_rawDescData = protoimpl.X.CompressGZIP(file_ultipa_proto_rawDescData)
	})
	return file_ultipa_proto_rawDescData
}

var file_ultipa_proto_enumTypes = make([]protoimpl.EnumInfo, 10)
var file_ultipa_proto_msgTypes = make([]protoimpl.MessageInfo, 58)
var file_ultipa_proto_goTypes = []interface{}{
	(ResultType)(0),                      // 0: ultipa.ResultType
	(InsertType)(0),                      // 1: ultipa.InsertType
	(PropertyType)(0),                    // 2: ultipa.PropertyType
	(ErrorCode)(0),                       // 3: ultipa.ErrorCode
	(FollowerRole)(0),                    // 4: ultipa.FollowerRole
	(ServerStatus)(0),                    // 5: ultipa.ServerStatus
	(DBType)(0),                          // 6: ultipa.DBType
	(TASK_STATUS)(0),                     // 7: ultipa.TASK_STATUS
	(AuthenticateType)(0),                // 8: ultipa.AuthenticateType
	(UserSettingRequest_OPTION)(0),       // 9: ultipa.UserSettingRequest.OPTION
	(*HelloUltipaRequest)(nil),           // 10: ultipa.HelloUltipaRequest
	(*HelloUltipaReply)(nil),             // 11: ultipa.HelloUltipaReply
	(*UqlRequest)(nil),                   // 12: ultipa.UqlRequest
	(*ResultAlias)(nil),                  // 13: ultipa.ResultAlias
	(*UqlReply)(nil),                     // 14: ultipa.UqlReply
	(*PathAlias)(nil),                    // 15: ultipa.PathAlias
	(*EdgeAlias)(nil),                    // 16: ultipa.EdgeAlias
	(*NodeAlias)(nil),                    // 17: ultipa.NodeAlias
	(*AttrAlias)(nil),                    // 18: ultipa.AttrAlias
	(*Attr)(nil),                         // 19: ultipa.Attr
	(*AttrListData)(nil),                 // 20: ultipa.AttrListData
	(*AttrMapData)(nil),                  // 21: ultipa.AttrMapData
	(*UserSettingRequest)(nil),           // 22: ultipa.UserSettingRequest
	(*UserSettingReply)(nil),             // 23: ultipa.UserSettingReply
	(*DownloadFileRequestV2)(nil),        // 24: ultipa.DownloadFileRequestV2
	(*DownloadFileReply)(nil),            // 25: ultipa.DownloadFileReply
	(*ExportRequest)(nil),                // 26: ultipa.ExportRequest
	(*ExportReply)(nil),                  // 27: ultipa.ExportReply
	(*GetLeaderRequest)(nil),             // 28: ultipa.GetLeaderRequest
	(*GetLeaderReply)(nil),               // 29: ultipa.GetLeaderReply
	(*InsertNodesRequest)(nil),           // 30: ultipa.InsertNodesRequest
	(*InsertNodesReply)(nil),             // 31: ultipa.InsertNodesReply
	(*InsertEdgesRequest)(nil),           // 32: ultipa.InsertEdgesRequest
	(*InsertEdgesReply)(nil),             // 33: ultipa.InsertEdgesReply
	(*InstallAlgoRequest)(nil),           // 34: ultipa.InstallAlgoRequest
	(*InstallAlgoReply)(nil),             // 35: ultipa.InstallAlgoReply
	(*UninstallAlgoRequest)(nil),         // 36: ultipa.UninstallAlgoRequest
	(*UninstallAlgoReply)(nil),           // 37: ultipa.UninstallAlgoReply
	(*UploaderRequest)(nil),              // 38: ultipa.UploaderRequest
	(*UploaderReply)(nil),                // 39: ultipa.UploaderReply
	(*CreateGraphByUploaderRequest)(nil), // 40: ultipa.CreateGraphByUploaderRequest
	(*CreateGraphByUploaderReply)(nil),   // 41: ultipa.CreateGraphByUploaderReply
	(*InstallExtaRequest)(nil),           // 42: ultipa.InstallExtaRequest
	(*InstallExtaReply)(nil),             // 43: ultipa.InstallExtaReply
	(*UninstallExtaRequest)(nil),         // 44: ultipa.UninstallExtaRequest
	(*UninstallExtaReply)(nil),           // 45: ultipa.UninstallExtaReply
	(*BackupRequest)(nil),                // 46: ultipa.BackupRequest
	(*BackupReply)(nil),                  // 47: ultipa.BackupReply
	(*Status)(nil),                       // 48: ultipa.Status
	(*RaftFollower)(nil),                 // 49: ultipa.RaftFollower
	(*ClusterInfo)(nil),                  // 50: ultipa.ClusterInfo
	(*Path)(nil),                         // 51: ultipa.Path
	(*Table)(nil),                        // 52: ultipa.Table
	(*TableRow)(nil),                     // 53: ultipa.TableRow
	(*EntityTable)(nil),                  // 54: ultipa.EntityTable
	(*EntityRow)(nil),                    // 55: ultipa.EntityRow
	(*Schema)(nil),                       // 56: ultipa.Schema
	(*Property)(nil),                     // 57: ultipa.Property
	(*Header)(nil),                       // 58: ultipa.Header
	(*Value)(nil),                        // 59: ultipa.Value
	(*ListData)(nil),                     // 60: ultipa.ListData
	(*SetData)(nil),                      // 61: ultipa.SetData
	(*MapValue)(nil),                     // 62: ultipa.MapValue
	(*MapData)(nil),                      // 63: ultipa.MapData
	(*ExplainPlan)(nil),                  // 64: ultipa.ExplainPlan
	(*PlanNode)(nil),                     // 65: ultipa.PlanNode
	(*AuthenticateRequest)(nil),          // 66: ultipa.AuthenticateRequest
	(*AuthenticateReply)(nil),            // 67: ultipa.AuthenticateReply
}
var file_ultipa_proto_depIdxs = []int32{
	48, // 0: ultipa.HelloUltipaReply.status:type_name -> ultipa.Status
	0,  // 1: ultipa.ResultAlias.result_type:type_name -> ultipa.ResultType
	48, // 2: ultipa.UqlReply.status:type_name -> ultipa.Status
	13, // 3: ultipa.UqlReply.alias:type_name -> ultipa.ResultAlias
	15, // 4: ultipa.UqlReply.paths:type_name -> ultipa.PathAlias
	17, // 5: ultipa.UqlReply.nodes:type_name -> ultipa.NodeAlias
	16, // 6: ultipa.UqlReply.edges:type_name -> ultipa.EdgeAlias
	18, // 7: ultipa.UqlReply.attrs:type_name -> ultipa.AttrAlias
	52, // 8: ultipa.UqlReply.tables:type_name -> ultipa.Table
	52, // 9: ultipa.UqlReply.statistics:type_name -> ultipa.Table
	64, // 10: ultipa.UqlReply.explain_plan:type_name -> ultipa.ExplainPlan
	51, // 11: ultipa.PathAlias.paths:type_name -> ultipa.Path
	54, // 12: ultipa.EdgeAlias.edge_table:type_name -> ultipa.EntityTable
	54, // 13: ultipa.NodeAlias.node_table:type_name -> ultipa.EntityTable
	19, // 14: ultipa.AttrAlias.attr:type_name -> ultipa.Attr
	2,  // 15: ultipa.Attr.value_type:type_name -> ultipa.PropertyType
	0,  // 16: ultipa.AttrListData.type:type_name -> ultipa.ResultType
	54, // 17: ultipa.AttrListData.nodes:type_name -> ultipa.EntityTable
	54, // 18: ultipa.AttrListData.edges:type_name -> ultipa.EntityTable
	51, // 19: ultipa.AttrListData.paths:type_name -> ultipa.Path
	19, // 20: ultipa.AttrListData.attrs:type_name -> ultipa.Attr
	19, // 21: ultipa.AttrMapData.key:type_name -> ultipa.Attr
	19, // 22: ultipa.AttrMapData.value:type_name -> ultipa.Attr
	9,  // 23: ultipa.UserSettingRequest.opt:type_name -> ultipa.UserSettingRequest.OPTION
	48, // 24: ultipa.UserSettingReply.status:type_name -> ultipa.Status
	48, // 25: ultipa.DownloadFileReply.status:type_name -> ultipa.Status
	6,  // 26: ultipa.ExportRequest.db_type:type_name -> ultipa.DBType
	48, // 27: ultipa.ExportReply.status:type_name -> ultipa.Status
	54, // 28: ultipa.ExportReply.node_table:type_name -> ultipa.EntityTable
	54, // 29: ultipa.ExportReply.edge_table:type_name -> ultipa.EntityTable
	48, // 30: ultipa.GetLeaderReply.status:type_name -> ultipa.Status
	54, // 31: ultipa.InsertNodesRequest.node_table:type_name -> ultipa.EntityTable
	1,  // 32: ultipa.InsertNodesRequest.insert_type:type_name -> ultipa.InsertType
	48, // 33: ultipa.InsertNodesReply.status:type_name -> ultipa.Status
	54, // 34: ultipa.InsertEdgesRequest.edge_table:type_name -> ultipa.EntityTable
	1,  // 35: ultipa.InsertEdgesRequest.insert_type:type_name -> ultipa.InsertType
	48, // 36: ultipa.InsertEdgesReply.status:type_name -> ultipa.Status
	48, // 37: ultipa.InstallAlgoReply.status:type_name -> ultipa.Status
	48, // 38: ultipa.UninstallAlgoReply.status:type_name -> ultipa.Status
	6,  // 39: ultipa.UploaderRequest.db_type:type_name -> ultipa.DBType
	48, // 40: ultipa.UploaderReply.status:type_name -> ultipa.Status
	48, // 41: ultipa.CreateGraphByUploaderReply.status:type_name -> ultipa.Status
	48, // 42: ultipa.InstallExtaReply.status:type_name -> ultipa.Status
	48, // 43: ultipa.UninstallExtaReply.status:type_name -> ultipa.Status
	48, // 44: ultipa.BackupReply.status:type_name -> ultipa.Status
	3,  // 45: ultipa.Status.error_code:type_name -> ultipa.ErrorCode
	50, // 46: ultipa.Status.cluster_info:type_name -> ultipa.ClusterInfo
	5,  // 47: ultipa.RaftFollower.status:type_name -> ultipa.ServerStatus
	49, // 48: ultipa.ClusterInfo.followers:type_name -> ultipa.RaftFollower
	54, // 49: ultipa.Path.node_table:type_name -> ultipa.EntityTable
	54, // 50: ultipa.Path.edge_table:type_name -> ultipa.EntityTable
	58, // 51: ultipa.Table.headers:type_name -> ultipa.Header
	53, // 52: ultipa.Table.table_rows:type_name -> ultipa.TableRow
	56, // 53: ultipa.EntityTable.schemas:type_name -> ultipa.Schema
	55, // 54: ultipa.EntityTable.entity_rows:type_name -> ultipa.EntityRow
	57, // 55: ultipa.Schema.properties:type_name -> ultipa.Property
	2,  // 56: ultipa.Property.property_type:type_name -> ultipa.PropertyType
	2,  // 57: ultipa.Property.sub_types:type_name -> ultipa.PropertyType
	2,  // 58: ultipa.Header.property_type:type_name -> ultipa.PropertyType
	62, // 59: ultipa.MapData.values:type_name -> ultipa.MapValue
	65, // 60: ultipa.ExplainPlan.plan_nodes:type_name -> ultipa.PlanNode
	8,  // 61: ultipa.AuthenticateRequest.type:type_name -> ultipa.AuthenticateType
	48, // 62: ultipa.AuthenticateReply.status:type_name -> ultipa.Status
	10, // 63: ultipa.UltipaRpcs.SayHello:input_type -> ultipa.HelloUltipaRequest
	12, // 64: ultipa.UltipaRpcs.Uql:input_type -> ultipa.UqlRequest
	30, // 65: ultipa.UltipaRpcs.InsertNodes:input_type -> ultipa.InsertNodesRequest
	32, // 66: ultipa.UltipaRpcs.InsertEdges:input_type -> ultipa.InsertEdgesRequest
	10, // 67: ultipa.UltipaControls.SayHello:input_type -> ultipa.HelloUltipaRequest
	22, // 68: ultipa.UltipaControls.UserSetting:input_type -> ultipa.UserSettingRequest
	28, // 69: ultipa.UltipaControls.GetLeader:input_type -> ultipa.GetLeaderRequest
	12, // 70: ultipa.UltipaControls.UqlEx:input_type -> ultipa.UqlRequest
	26, // 71: ultipa.UltipaControls.Export:input_type -> ultipa.ExportRequest
	24, // 72: ultipa.UltipaControls.DownloadFileV2:input_type -> ultipa.DownloadFileRequestV2
	34, // 73: ultipa.UltipaControls.InstallAlgo:input_type -> ultipa.InstallAlgoRequest
	36, // 74: ultipa.UltipaControls.UninstallAlgo:input_type -> ultipa.UninstallAlgoRequest
	38, // 75: ultipa.UltipaControls.Uploader:input_type -> ultipa.UploaderRequest
	40, // 76: ultipa.UltipaControls.CreateGraphByUploader:input_type -> ultipa.CreateGraphByUploaderRequest
	42, // 77: ultipa.UltipaControls.InstallExta:input_type -> ultipa.InstallExtaRequest
	44, // 78: ultipa.UltipaControls.UninstallExta:input_type -> ultipa.UninstallExtaRequest
	66, // 79: ultipa.UltipaControls.Authenticate:input_type -> ultipa.AuthenticateRequest
	46, // 80: ultipa.UltipaControls.Backup:input_type -> ultipa.BackupRequest
	11, // 81: ultipa.UltipaRpcs.SayHello:output_type -> ultipa.HelloUltipaReply
	14, // 82: ultipa.UltipaRpcs.Uql:output_type -> ultipa.UqlReply
	31, // 83: ultipa.UltipaRpcs.InsertNodes:output_type -> ultipa.InsertNodesReply
	33, // 84: ultipa.UltipaRpcs.InsertEdges:output_type -> ultipa.InsertEdgesReply
	11, // 85: ultipa.UltipaControls.SayHello:output_type -> ultipa.HelloUltipaReply
	23, // 86: ultipa.UltipaControls.UserSetting:output_type -> ultipa.UserSettingReply
	29, // 87: ultipa.UltipaControls.GetLeader:output_type -> ultipa.GetLeaderReply
	14, // 88: ultipa.UltipaControls.UqlEx:output_type -> ultipa.UqlReply
	27, // 89: ultipa.UltipaControls.Export:output_type -> ultipa.ExportReply
	25, // 90: ultipa.UltipaControls.DownloadFileV2:output_type -> ultipa.DownloadFileReply
	35, // 91: ultipa.UltipaControls.InstallAlgo:output_type -> ultipa.InstallAlgoReply
	37, // 92: ultipa.UltipaControls.UninstallAlgo:output_type -> ultipa.UninstallAlgoReply
	39, // 93: ultipa.UltipaControls.Uploader:output_type -> ultipa.UploaderReply
	41, // 94: ultipa.UltipaControls.CreateGraphByUploader:output_type -> ultipa.CreateGraphByUploaderReply
	43, // 95: ultipa.UltipaControls.InstallExta:output_type -> ultipa.InstallExtaReply
	45, // 96: ultipa.UltipaControls.UninstallExta:output_type -> ultipa.UninstallExtaReply
	67, // 97: ultipa.UltipaControls.Authenticate:output_type -> ultipa.AuthenticateReply
	47, // 98: ultipa.UltipaControls.Backup:output_type -> ultipa.BackupReply
	81, // [81:99] is the sub-list for method output_type
	63, // [63:81] is the sub-list for method input_type
	63, // [63:63] is the sub-list for extension type_name
	63, // [63:63] is the sub-list for extension extendee
	0,  // [0:63] is the sub-list for field type_name
}

func init() { file_ultipa_proto_init() }
func file_ultipa_proto_init() {
	if File_ultipa_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_ultipa_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*HelloUltipaRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*HelloUltipaReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UqlRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ResultAlias); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UqlReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PathAlias); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*EdgeAlias); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NodeAlias); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AttrAlias); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Attr); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AttrListData); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AttrMapData); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UserSettingRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UserSettingReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DownloadFileRequestV2); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DownloadFileReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExportRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExportReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetLeaderRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetLeaderReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InsertNodesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InsertNodesReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InsertEdgesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InsertEdgesReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InstallAlgoRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InstallAlgoReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UninstallAlgoRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UninstallAlgoReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UploaderRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UploaderReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateGraphByUploaderRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateGraphByUploaderReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InstallExtaRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InstallExtaReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UninstallExtaRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UninstallExtaReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BackupRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BackupReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Status); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RaftFollower); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ClusterInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Path); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Table); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TableRow); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*EntityTable); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*EntityRow); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Schema); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Property); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Header); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Value); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListData); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SetData); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MapValue); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MapData); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExplainPlan); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PlanNode); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AuthenticateRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ultipa_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AuthenticateReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_ultipa_proto_rawDesc,
			NumEnums:      10,
			NumMessages:   58,
			NumExtensions: 0,
			NumServices:   2,
		},
		GoTypes:           file_ultipa_proto_goTypes,
		DependencyIndexes: file_ultipa_proto_depIdxs,
		EnumInfos:         file_ultipa_proto_enumTypes,
		MessageInfos:      file_ultipa_proto_msgTypes,
	}.Build()
	File_ultipa_proto = out.File
	file_ultipa_proto_rawDesc = nil
	file_ultipa_proto_goTypes = nil
	file_ultipa_proto_depIdxs = nil
}
