// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.26.0
// 	protoc        (unknown)
// source: core/core.proto

// gRPC for our DBaaS core service

package core

import (
	base "github.com/tidbcloud/debug_portal/idl/pbgen/base"
	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 DeployType int32

const (
	DeployType_DEPLOY_TYPE_UNSPECIFIED DeployType = 0
	DeployType_DEPLOY_TYPE_DEDICATED   DeployType = 1
	DeployType_DEPLOY_TYPE_SHARED      DeployType = 2
	DeployType_DEPLOY_TYPE_HYBRID      DeployType = 3
)

// Enum value maps for DeployType.
var (
	DeployType_name = map[int32]string{
		0: "DEPLOY_TYPE_UNSPECIFIED",
		1: "DEPLOY_TYPE_DEDICATED",
		2: "DEPLOY_TYPE_SHARED",
		3: "DEPLOY_TYPE_HYBRID",
	}
	DeployType_value = map[string]int32{
		"DEPLOY_TYPE_UNSPECIFIED": 0,
		"DEPLOY_TYPE_DEDICATED":   1,
		"DEPLOY_TYPE_SHARED":      2,
		"DEPLOY_TYPE_HYBRID":      3,
	}
)

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

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

func (DeployType) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[0].Descriptor()
}

func (DeployType) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[0]
}

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

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

type ComponentType int32

const (
	ComponentType_COMPONENT_TYPE_UNSPECIFIED ComponentType = 0
	ComponentType_COMPONENT_TYPE_TIDB        ComponentType = 1
	ComponentType_COMPONENT_TYPE_TIKV        ComponentType = 2
	ComponentType_COMPONENT_TYPE_TIFLASH     ComponentType = 3
	ComponentType_COMPONENT_TYPE_PD          ComponentType = 4
	ComponentType_COMPONENT_TYPE_TICDC       ComponentType = 5
)

// Enum value maps for ComponentType.
var (
	ComponentType_name = map[int32]string{
		0: "COMPONENT_TYPE_UNSPECIFIED",
		1: "COMPONENT_TYPE_TIDB",
		2: "COMPONENT_TYPE_TIKV",
		3: "COMPONENT_TYPE_TIFLASH",
		4: "COMPONENT_TYPE_PD",
		5: "COMPONENT_TYPE_TICDC",
	}
	ComponentType_value = map[string]int32{
		"COMPONENT_TYPE_UNSPECIFIED": 0,
		"COMPONENT_TYPE_TIDB":        1,
		"COMPONENT_TYPE_TIKV":        2,
		"COMPONENT_TYPE_TIFLASH":     3,
		"COMPONENT_TYPE_PD":          4,
		"COMPONENT_TYPE_TICDC":       5,
	}
)

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

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

func (ComponentType) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[1].Descriptor()
}

func (ComponentType) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[1]
}

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

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

type SKUType int32

const (
	SKUType_SKU_TYPE_UNSPECIFIED     SKUType = 0
	SKUType_SKU_TYPE_NODE            SKUType = 1
	SKUType_SKU_TYPE_DISK_IOPS       SKUType = 21
	SKUType_SKU_TYPE_DISK_THROUGHPUT SKUType = 22
	SKUType_SKU_TYPE_DISK_STORAGE    SKUType = 23
	SKUType_SKU_TYPE_NETWORK_TRAFFIC SKUType = 31
	SKUType_SKU_TYPE_BACKUP_STORAGE  SKUType = 32
	SKUType_SKU_TYPE_TICDC_TCU       SKUType = 41
)

// Enum value maps for SKUType.
var (
	SKUType_name = map[int32]string{
		0:  "SKU_TYPE_UNSPECIFIED",
		1:  "SKU_TYPE_NODE",
		21: "SKU_TYPE_DISK_IOPS",
		22: "SKU_TYPE_DISK_THROUGHPUT",
		23: "SKU_TYPE_DISK_STORAGE",
		31: "SKU_TYPE_NETWORK_TRAFFIC",
		32: "SKU_TYPE_BACKUP_STORAGE",
		41: "SKU_TYPE_TICDC_TCU",
	}
	SKUType_value = map[string]int32{
		"SKU_TYPE_UNSPECIFIED":     0,
		"SKU_TYPE_NODE":            1,
		"SKU_TYPE_DISK_IOPS":       21,
		"SKU_TYPE_DISK_THROUGHPUT": 22,
		"SKU_TYPE_DISK_STORAGE":    23,
		"SKU_TYPE_NETWORK_TRAFFIC": 31,
		"SKU_TYPE_BACKUP_STORAGE":  32,
		"SKU_TYPE_TICDC_TCU":       41,
	}
)

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

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

func (SKUType) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[2].Descriptor()
}

func (SKUType) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[2]
}

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

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

type ProfileStatus int32

const (
	ProfileStatus_PROFILE_STATUS_UNSPECIFIED ProfileStatus = 0
	ProfileStatus_PROFILE_STATUS_ACTIVE      ProfileStatus = 1
	ProfileStatus_PROFILE_STATUS_INACTIVE    ProfileStatus = 2
	ProfileStatus_PROFILE_STATUS_DELETED     ProfileStatus = 3
)

// Enum value maps for ProfileStatus.
var (
	ProfileStatus_name = map[int32]string{
		0: "PROFILE_STATUS_UNSPECIFIED",
		1: "PROFILE_STATUS_ACTIVE",
		2: "PROFILE_STATUS_INACTIVE",
		3: "PROFILE_STATUS_DELETED",
	}
	ProfileStatus_value = map[string]int32{
		"PROFILE_STATUS_UNSPECIFIED": 0,
		"PROFILE_STATUS_ACTIVE":      1,
		"PROFILE_STATUS_INACTIVE":    2,
		"PROFILE_STATUS_DELETED":     3,
	}
)

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

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

func (ProfileStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[3].Descriptor()
}

func (ProfileStatus) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[3]
}

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

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

type ClusterConnectionType int32

const (
	ClusterConnectionType_CLUSTER_CONNECTION_TYPE_UNSPECIFIED ClusterConnectionType = 0
	ClusterConnectionType_CLUSTER_CONNECTION_TYPE_PRIVATE     ClusterConnectionType = 1
	ClusterConnectionType_CLUSTER_CONNECTION_TYPE_PUBLIC      ClusterConnectionType = 2
)

// Enum value maps for ClusterConnectionType.
var (
	ClusterConnectionType_name = map[int32]string{
		0: "CLUSTER_CONNECTION_TYPE_UNSPECIFIED",
		1: "CLUSTER_CONNECTION_TYPE_PRIVATE",
		2: "CLUSTER_CONNECTION_TYPE_PUBLIC",
	}
	ClusterConnectionType_value = map[string]int32{
		"CLUSTER_CONNECTION_TYPE_UNSPECIFIED": 0,
		"CLUSTER_CONNECTION_TYPE_PRIVATE":     1,
		"CLUSTER_CONNECTION_TYPE_PUBLIC":      2,
	}
)

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

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

func (ClusterConnectionType) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[4].Descriptor()
}

func (ClusterConnectionType) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[4]
}

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

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

type ClusterStatus int32

const (
	ClusterStatus_CLUSTER_STATUS_UNSPECIFIED    ClusterStatus = 0
	ClusterStatus_CLUSTER_STATUS_INITIALIZING   ClusterStatus = 1
	ClusterStatus_CLUSTER_STATUS_PREPARING      ClusterStatus = 5
	ClusterStatus_CLUSTER_STATUS_LAUNCHING      ClusterStatus = 10
	ClusterStatus_CLUSTER_STATUS_NORMAL         ClusterStatus = 15
	ClusterStatus_CLUSTER_STATUS_SCALING        ClusterStatus = 20
	ClusterStatus_CLUSTER_STATUS_RECOVERING     ClusterStatus = 25
	ClusterStatus_CLUSTER_STATUS_DELETED        ClusterStatus = 30
	ClusterStatus_CLUSTER_STATUS_DELETECOMPLETE ClusterStatus = 35
	ClusterStatus_CLUSTER_STATUS_CLEARED        ClusterStatus = 40
)

// Enum value maps for ClusterStatus.
var (
	ClusterStatus_name = map[int32]string{
		0:  "CLUSTER_STATUS_UNSPECIFIED",
		1:  "CLUSTER_STATUS_INITIALIZING",
		5:  "CLUSTER_STATUS_PREPARING",
		10: "CLUSTER_STATUS_LAUNCHING",
		15: "CLUSTER_STATUS_NORMAL",
		20: "CLUSTER_STATUS_SCALING",
		25: "CLUSTER_STATUS_RECOVERING",
		30: "CLUSTER_STATUS_DELETED",
		35: "CLUSTER_STATUS_DELETECOMPLETE",
		40: "CLUSTER_STATUS_CLEARED",
	}
	ClusterStatus_value = map[string]int32{
		"CLUSTER_STATUS_UNSPECIFIED":    0,
		"CLUSTER_STATUS_INITIALIZING":   1,
		"CLUSTER_STATUS_PREPARING":      5,
		"CLUSTER_STATUS_LAUNCHING":      10,
		"CLUSTER_STATUS_NORMAL":         15,
		"CLUSTER_STATUS_SCALING":        20,
		"CLUSTER_STATUS_RECOVERING":     25,
		"CLUSTER_STATUS_DELETED":        30,
		"CLUSTER_STATUS_DELETECOMPLETE": 35,
		"CLUSTER_STATUS_CLEARED":        40,
	}
)

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

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

func (ClusterStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[5].Descriptor()
}

func (ClusterStatus) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[5]
}

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

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

// UserClusterStatus is the status for user, have some difference from ClusterStatus.
// MUST keep the same order with service.proto:Cluster.Status
type UserClusterStatus int32

const (
	UserClusterStatus_USER_CLUSTER_STATUS_NORMAL      UserClusterStatus = 0
	UserClusterStatus_USER_CLUSTER_STATUS_CREATING    UserClusterStatus = 1
	UserClusterStatus_USER_CLUSTER_STATUS_SCALING     UserClusterStatus = 2
	UserClusterStatus_USER_CLUSTER_STATUS_UPGRADING   UserClusterStatus = 3
	UserClusterStatus_USER_CLUSTER_STATUS_UNAVAILABLE UserClusterStatus = 4
	UserClusterStatus_USER_CLUSTER_STATUS_RECOVERING  UserClusterStatus = 5
	UserClusterStatus_USER_CLUSTER_STATUS_IMPORTING   UserClusterStatus = 6
)

// Enum value maps for UserClusterStatus.
var (
	UserClusterStatus_name = map[int32]string{
		0: "USER_CLUSTER_STATUS_NORMAL",
		1: "USER_CLUSTER_STATUS_CREATING",
		2: "USER_CLUSTER_STATUS_SCALING",
		3: "USER_CLUSTER_STATUS_UPGRADING",
		4: "USER_CLUSTER_STATUS_UNAVAILABLE",
		5: "USER_CLUSTER_STATUS_RECOVERING",
		6: "USER_CLUSTER_STATUS_IMPORTING",
	}
	UserClusterStatus_value = map[string]int32{
		"USER_CLUSTER_STATUS_NORMAL":      0,
		"USER_CLUSTER_STATUS_CREATING":    1,
		"USER_CLUSTER_STATUS_SCALING":     2,
		"USER_CLUSTER_STATUS_UPGRADING":   3,
		"USER_CLUSTER_STATUS_UNAVAILABLE": 4,
		"USER_CLUSTER_STATUS_RECOVERING":  5,
		"USER_CLUSTER_STATUS_IMPORTING":   6,
	}
)

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

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

func (UserClusterStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[6].Descriptor()
}

func (UserClusterStatus) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[6]
}

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

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

// MUST keep the same order with service.proto:Cluster.SecondaryStatus
type UserClusterSubStatus int32

const (
	UserClusterSubStatus_USER_CLUSTER_SUB_STATUS_HEALTHY   UserClusterSubStatus = 0
	UserClusterSubStatus_USER_CLUSTER_SUB_STATUS_UNHEALTHY UserClusterSubStatus = 1
)

// Enum value maps for UserClusterSubStatus.
var (
	UserClusterSubStatus_name = map[int32]string{
		0: "USER_CLUSTER_SUB_STATUS_HEALTHY",
		1: "USER_CLUSTER_SUB_STATUS_UNHEALTHY",
	}
	UserClusterSubStatus_value = map[string]int32{
		"USER_CLUSTER_SUB_STATUS_HEALTHY":   0,
		"USER_CLUSTER_SUB_STATUS_UNHEALTHY": 1,
	}
)

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

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

func (UserClusterSubStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[7].Descriptor()
}

func (UserClusterSubStatus) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[7]
}

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

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

type BackupStatus int32

const (
	BackupStatus_BACKUP_STATUS_UNSPECIFIED BackupStatus = 0
	BackupStatus_BACKUP_STATUS_PENDING     BackupStatus = 1
	BackupStatus_BACKUP_STATUS_RUNNING     BackupStatus = 2
	BackupStatus_BACKUP_STATUS_FAILED      BackupStatus = 3
	BackupStatus_BACKUP_STATUS_SUCCESS     BackupStatus = 4
)

// Enum value maps for BackupStatus.
var (
	BackupStatus_name = map[int32]string{
		0: "BACKUP_STATUS_UNSPECIFIED",
		1: "BACKUP_STATUS_PENDING",
		2: "BACKUP_STATUS_RUNNING",
		3: "BACKUP_STATUS_FAILED",
		4: "BACKUP_STATUS_SUCCESS",
	}
	BackupStatus_value = map[string]int32{
		"BACKUP_STATUS_UNSPECIFIED": 0,
		"BACKUP_STATUS_PENDING":     1,
		"BACKUP_STATUS_RUNNING":     2,
		"BACKUP_STATUS_FAILED":      3,
		"BACKUP_STATUS_SUCCESS":     4,
	}
)

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

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

func (BackupStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[8].Descriptor()
}

func (BackupStatus) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[8]
}

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

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

type RestoreStatus int32

const (
	RestoreStatus_RESTORE_STATUS_UNSPECIFIED RestoreStatus = 0
	RestoreStatus_RESTORE_STATUS_PENDING     RestoreStatus = 1
	RestoreStatus_RESTORE_STATUS_RUNNING     RestoreStatus = 2
	RestoreStatus_RESTORE_STATUS_FAILED      RestoreStatus = 3
	RestoreStatus_RESTORE_STATUS_SUCCESS     RestoreStatus = 4
)

// Enum value maps for RestoreStatus.
var (
	RestoreStatus_name = map[int32]string{
		0: "RESTORE_STATUS_UNSPECIFIED",
		1: "RESTORE_STATUS_PENDING",
		2: "RESTORE_STATUS_RUNNING",
		3: "RESTORE_STATUS_FAILED",
		4: "RESTORE_STATUS_SUCCESS",
	}
	RestoreStatus_value = map[string]int32{
		"RESTORE_STATUS_UNSPECIFIED": 0,
		"RESTORE_STATUS_PENDING":     1,
		"RESTORE_STATUS_RUNNING":     2,
		"RESTORE_STATUS_FAILED":      3,
		"RESTORE_STATUS_SUCCESS":     4,
	}
)

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

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

func (RestoreStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[9].Descriptor()
}

func (RestoreStatus) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[9]
}

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

// Deprecated: Use RestoreStatus.Descriptor instead.
func (RestoreStatus) EnumDescriptor() ([]byte, []int) {
	return file_core_core_proto_rawDescGZIP(), []int{9}
}

type CloudProvider_Status int32

const (
	CloudProvider_STATUS_UNSPECIFIED CloudProvider_Status = 0
	CloudProvider_STATUS_ACTIVE      CloudProvider_Status = 1
	CloudProvider_STATUS_INACTIVE    CloudProvider_Status = 2
)

// Enum value maps for CloudProvider_Status.
var (
	CloudProvider_Status_name = map[int32]string{
		0: "STATUS_UNSPECIFIED",
		1: "STATUS_ACTIVE",
		2: "STATUS_INACTIVE",
	}
	CloudProvider_Status_value = map[string]int32{
		"STATUS_UNSPECIFIED": 0,
		"STATUS_ACTIVE":      1,
		"STATUS_INACTIVE":    2,
	}
)

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

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

func (CloudProvider_Status) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[10].Descriptor()
}

func (CloudProvider_Status) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[10]
}

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

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

type Region_Status int32

const (
	Region_STATUS_UNSPECIFIED Region_Status = 0
	Region_STATUS_ACTIVE      Region_Status = 1
	Region_STATUS_INACTIVE    Region_Status = 2
)

// Enum value maps for Region_Status.
var (
	Region_Status_name = map[int32]string{
		0: "STATUS_UNSPECIFIED",
		1: "STATUS_ACTIVE",
		2: "STATUS_INACTIVE",
	}
	Region_Status_value = map[string]int32{
		"STATUS_UNSPECIFIED": 0,
		"STATUS_ACTIVE":      1,
		"STATUS_INACTIVE":    2,
	}
)

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

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

func (Region_Status) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[11].Descriptor()
}

func (Region_Status) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[11]
}

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

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

type ProfileVersion_Status int32

const (
	ProfileVersion_STATUS_UNSPECIFIED ProfileVersion_Status = 0
	ProfileVersion_STATUS_SYNCING     ProfileVersion_Status = 1
	ProfileVersion_STATUS_USING       ProfileVersion_Status = 2
	ProfileVersion_STATUS_OUTDATED    ProfileVersion_Status = 3
)

// Enum value maps for ProfileVersion_Status.
var (
	ProfileVersion_Status_name = map[int32]string{
		0: "STATUS_UNSPECIFIED",
		1: "STATUS_SYNCING",
		2: "STATUS_USING",
		3: "STATUS_OUTDATED",
	}
	ProfileVersion_Status_value = map[string]int32{
		"STATUS_UNSPECIFIED": 0,
		"STATUS_SYNCING":     1,
		"STATUS_USING":       2,
		"STATUS_OUTDATED":    3,
	}
)

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

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

func (ProfileVersion_Status) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[12].Descriptor()
}

func (ProfileVersion_Status) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[12]
}

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

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

type XAccountDeploy_Status int32

const (
	XAccountDeploy_STATUS_UNSPECIFIED XAccountDeploy_Status = 0
	XAccountDeploy_STATUS_PENDING     XAccountDeploy_Status = 1
	XAccountDeploy_STATUS_ACTIVE      XAccountDeploy_Status = 10
	XAccountDeploy_STATUS_DELETING    XAccountDeploy_Status = 20
)

// Enum value maps for XAccountDeploy_Status.
var (
	XAccountDeploy_Status_name = map[int32]string{
		0:  "STATUS_UNSPECIFIED",
		1:  "STATUS_PENDING",
		10: "STATUS_ACTIVE",
		20: "STATUS_DELETING",
	}
	XAccountDeploy_Status_value = map[string]int32{
		"STATUS_UNSPECIFIED": 0,
		"STATUS_PENDING":     1,
		"STATUS_ACTIVE":      10,
		"STATUS_DELETING":    20,
	}
)

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

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

func (XAccountDeploy_Status) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[13].Descriptor()
}

func (XAccountDeploy_Status) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[13]
}

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

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

type NetworkPeer_Type int32

const (
	NetworkPeer_TYPE_UNSPECIFIED NetworkPeer_Type = 0
	NetworkPeer_TYPE_CUSTOMER    NetworkPeer_Type = 1
	NetworkPeer_TYPE_DBAAS       NetworkPeer_Type = 2
)

// Enum value maps for NetworkPeer_Type.
var (
	NetworkPeer_Type_name = map[int32]string{
		0: "TYPE_UNSPECIFIED",
		1: "TYPE_CUSTOMER",
		2: "TYPE_DBAAS",
	}
	NetworkPeer_Type_value = map[string]int32{
		"TYPE_UNSPECIFIED": 0,
		"TYPE_CUSTOMER":    1,
		"TYPE_DBAAS":       2,
	}
)

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

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

func (NetworkPeer_Type) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[14].Descriptor()
}

func (NetworkPeer_Type) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[14]
}

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

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

type NetworkPeer_Status int32

const (
	NetworkPeer_STATUS_UNSPECIFIED NetworkPeer_Status = 0
	NetworkPeer_STATUS_PENDING     NetworkPeer_Status = 1
	NetworkPeer_STATUS_FAILED      NetworkPeer_Status = 4
	NetworkPeer_STATUS_ACTIVE      NetworkPeer_Status = 5
)

// Enum value maps for NetworkPeer_Status.
var (
	NetworkPeer_Status_name = map[int32]string{
		0: "STATUS_UNSPECIFIED",
		1: "STATUS_PENDING",
		4: "STATUS_FAILED",
		5: "STATUS_ACTIVE",
	}
	NetworkPeer_Status_value = map[string]int32{
		"STATUS_UNSPECIFIED": 0,
		"STATUS_PENDING":     1,
		"STATUS_FAILED":      4,
		"STATUS_ACTIVE":      5,
	}
)

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

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

func (NetworkPeer_Status) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[15].Descriptor()
}

func (NetworkPeer_Status) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[15]
}

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

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

type Backup_Type int32

const (
	Backup_TYPE_UNSPECIFIED Backup_Type = 0
	Backup_TYPE_AUTO        Backup_Type = 1
	Backup_TYPE_MANUAL      Backup_Type = 2
)

// Enum value maps for Backup_Type.
var (
	Backup_Type_name = map[int32]string{
		0: "TYPE_UNSPECIFIED",
		1: "TYPE_AUTO",
		2: "TYPE_MANUAL",
	}
	Backup_Type_value = map[string]int32{
		"TYPE_UNSPECIFIED": 0,
		"TYPE_AUTO":        1,
		"TYPE_MANUAL":      2,
	}
)

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

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

func (Backup_Type) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[16].Descriptor()
}

func (Backup_Type) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[16]
}

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

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

type Backup_Method int32

const (
	Backup_METHOD_UNSPECIFIED Backup_Method = 0
	Backup_METHOD_FULL        Backup_Method = 1
	Backup_METHOD_INCREMENTAL Backup_Method = 2
)

// Enum value maps for Backup_Method.
var (
	Backup_Method_name = map[int32]string{
		0: "METHOD_UNSPECIFIED",
		1: "METHOD_FULL",
		2: "METHOD_INCREMENTAL",
	}
	Backup_Method_value = map[string]int32{
		"METHOD_UNSPECIFIED": 0,
		"METHOD_FULL":        1,
		"METHOD_INCREMENTAL": 2,
	}
)

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

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

func (Backup_Method) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[17].Descriptor()
}

func (Backup_Method) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[17]
}

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

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

type Replication_Type int32

const (
	Replication_TYPE_UNSPECIFIED Replication_Type = 0
	Replication_TYPE_CDC         Replication_Type = 1
)

// Enum value maps for Replication_Type.
var (
	Replication_Type_name = map[int32]string{
		0: "TYPE_UNSPECIFIED",
		1: "TYPE_CDC",
	}
	Replication_Type_value = map[string]int32{
		"TYPE_UNSPECIFIED": 0,
		"TYPE_CDC":         1,
	}
)

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

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

func (Replication_Type) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[18].Descriptor()
}

func (Replication_Type) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[18]
}

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

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

type Replication_Status int32

const (
	Replication_STATUS_UNSPECIFIED Replication_Status = 0
	Replication_STATUS_CREATING    Replication_Status = 1
	Replication_STATUS_REPLICATING Replication_Status = 11
	Replication_STATUS_DETACHING   Replication_Status = 21
	Replication_STATUS_DETACHED    Replication_Status = 31
	Replication_STATUS_FAILED      Replication_Status = 41
	Replication_STATUS_PAUSED      Replication_Status = 51
)

// Enum value maps for Replication_Status.
var (
	Replication_Status_name = map[int32]string{
		0:  "STATUS_UNSPECIFIED",
		1:  "STATUS_CREATING",
		11: "STATUS_REPLICATING",
		21: "STATUS_DETACHING",
		31: "STATUS_DETACHED",
		41: "STATUS_FAILED",
		51: "STATUS_PAUSED",
	}
	Replication_Status_value = map[string]int32{
		"STATUS_UNSPECIFIED": 0,
		"STATUS_CREATING":    1,
		"STATUS_REPLICATING": 11,
		"STATUS_DETACHING":   21,
		"STATUS_DETACHED":    31,
		"STATUS_FAILED":      41,
		"STATUS_PAUSED":      51,
	}
)

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

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

func (Replication_Status) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[19].Descriptor()
}

func (Replication_Status) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[19]
}

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

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

type Replication_DetachType int32

const (
	Replication_DETACH_TYPE_UNSPECIFIED Replication_DetachType = 0
	Replication_DETACH_TYPE_PLANNED     Replication_DetachType = 1
	Replication_DETACH_TYPE_FORCE       Replication_DetachType = 11
	Replication_DETACH_TYPE_NONE        Replication_DetachType = 21
)

// Enum value maps for Replication_DetachType.
var (
	Replication_DetachType_name = map[int32]string{
		0:  "DETACH_TYPE_UNSPECIFIED",
		1:  "DETACH_TYPE_PLANNED",
		11: "DETACH_TYPE_FORCE",
		21: "DETACH_TYPE_NONE",
	}
	Replication_DetachType_value = map[string]int32{
		"DETACH_TYPE_UNSPECIFIED": 0,
		"DETACH_TYPE_PLANNED":     1,
		"DETACH_TYPE_FORCE":       11,
		"DETACH_TYPE_NONE":        21,
	}
)

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

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

func (Replication_DetachType) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[20].Descriptor()
}

func (Replication_DetachType) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[20]
}

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

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

type IamRoleUsage_ServiceName int32

const (
	IamRoleUsage_SERVICE_NAME_UNSPECIFIED   IamRoleUsage_ServiceName = 0
	IamRoleUsage_SERVICE_NAME_CROSS_ACCOUNT IamRoleUsage_ServiceName = 1
)

// Enum value maps for IamRoleUsage_ServiceName.
var (
	IamRoleUsage_ServiceName_name = map[int32]string{
		0: "SERVICE_NAME_UNSPECIFIED",
		1: "SERVICE_NAME_CROSS_ACCOUNT",
	}
	IamRoleUsage_ServiceName_value = map[string]int32{
		"SERVICE_NAME_UNSPECIFIED":   0,
		"SERVICE_NAME_CROSS_ACCOUNT": 1,
	}
)

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

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

func (IamRoleUsage_ServiceName) Descriptor() protoreflect.EnumDescriptor {
	return file_core_core_proto_enumTypes[21].Descriptor()
}

func (IamRoleUsage_ServiceName) Type() protoreflect.EnumType {
	return &file_core_core_proto_enumTypes[21]
}

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

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

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

	Name        string               `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Status      CloudProvider_Status `protobuf:"varint,3,opt,name=status,proto3,enum=core.CloudProvider_Status" json:"status,omitempty"`
	Name2Region map[string]*Region   `protobuf:"bytes,4,rep,name=name2region,proto3" json:"name2region,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}

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

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

func (*CloudProvider) ProtoMessage() {}

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

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

func (x *CloudProvider) GetStatus() CloudProvider_Status {
	if x != nil {
		return x.Status
	}
	return CloudProvider_STATUS_UNSPECIFIED
}

func (x *CloudProvider) GetName2Region() map[string]*Region {
	if x != nil {
		return x.Name2Region
	}
	return nil
}

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

	Name              string        `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	DisplayName       string        `protobuf:"bytes,3,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	CloudProviderName string        `protobuf:"bytes,4,opt,name=cloud_provider_name,json=cloudProviderName,proto3" json:"cloud_provider_name,omitempty"`
	Status            Region_Status `protobuf:"varint,5,opt,name=status,proto3,enum=core.Region_Status" json:"status,omitempty"`
	OpenedTenantIds   []uint64      `protobuf:"varint,6,rep,packed,name=opened_tenant_ids,json=openedTenantIds,proto3" json:"opened_tenant_ids,omitempty"`
	XaccountDeployId  uint64        `protobuf:"varint,7,opt,name=xaccount_deploy_id,json=xaccountDeployId,proto3" json:"xaccount_deploy_id,omitempty"`
}

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

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

func (*Region) ProtoMessage() {}

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

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

func (x *Region) GetDisplayName() string {
	if x != nil {
		return x.DisplayName
	}
	return ""
}

func (x *Region) GetCloudProviderName() string {
	if x != nil {
		return x.CloudProviderName
	}
	return ""
}

func (x *Region) GetStatus() Region_Status {
	if x != nil {
		return x.Status
	}
	return Region_STATUS_UNSPECIFIED
}

func (x *Region) GetOpenedTenantIds() []uint64 {
	if x != nil {
		return x.OpenedTenantIds
	}
	return nil
}

func (x *Region) GetXaccountDeployId() uint64 {
	if x != nil {
		return x.XaccountDeployId
	}
	return 0
}

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

	Id       uint64                `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Status   ProfileVersion_Status `protobuf:"varint,2,opt,name=status,proto3,enum=core.ProfileVersion_Status" json:"status,omitempty"`
	CommitId string                `protobuf:"bytes,3,opt,name=commit_id,json=commitId,proto3" json:"commit_id,omitempty"`
}

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

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

func (*ProfileVersion) ProtoMessage() {}

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

func (x *ProfileVersion) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *ProfileVersion) GetStatus() ProfileVersion_Status {
	if x != nil {
		return x.Status
	}
	return ProfileVersion_STATUS_UNSPECIFIED
}

func (x *ProfileVersion) GetCommitId() string {
	if x != nil {
		return x.CommitId
	}
	return ""
}

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

	ComponentType       ComponentType `protobuf:"varint,1,opt,name=component_type,json=componentType,proto3,enum=core.ComponentType" json:"component_type,omitempty"` // required by create/update
	NodeProfileId       uint64        `protobuf:"varint,2,opt,name=node_profile_id,json=nodeProfileId,proto3" json:"node_profile_id,omitempty"`                       // required by create/update
	NodeProfileName     string        `protobuf:"bytes,3,opt,name=node_profile_name,json=nodeProfileName,proto3" json:"node_profile_name,omitempty"`
	Replicas            int32         `protobuf:"varint,4,opt,name=replicas,proto3" json:"replicas,omitempty"` // required by create/update
	ComputeInstanceType string        `protobuf:"bytes,11,opt,name=compute_instance_type,json=computeInstanceType,proto3" json:"compute_instance_type,omitempty"`
	CpuNum              int32         `protobuf:"varint,12,opt,name=cpu_num,json=cpuNum,proto3" json:"cpu_num,omitempty"`
	MemoryGi            int64         `protobuf:"varint,13,opt,name=memory_gi,json=memoryGi,proto3" json:"memory_gi,omitempty"`
	StorageInstanceType string        `protobuf:"bytes,21,opt,name=storage_instance_type,json=storageInstanceType,proto3" json:"storage_instance_type,omitempty"`
	StorageSizeGi       int64         `protobuf:"varint,22,opt,name=storage_size_gi,json=storageSizeGi,proto3" json:"storage_size_gi,omitempty"` // required by create/update
}

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

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

func (*ClusterComponent) ProtoMessage() {}

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

func (x *ClusterComponent) GetComponentType() ComponentType {
	if x != nil {
		return x.ComponentType
	}
	return ComponentType_COMPONENT_TYPE_UNSPECIFIED
}

func (x *ClusterComponent) GetNodeProfileId() uint64 {
	if x != nil {
		return x.NodeProfileId
	}
	return 0
}

func (x *ClusterComponent) GetNodeProfileName() string {
	if x != nil {
		return x.NodeProfileName
	}
	return ""
}

func (x *ClusterComponent) GetReplicas() int32 {
	if x != nil {
		return x.Replicas
	}
	return 0
}

func (x *ClusterComponent) GetComputeInstanceType() string {
	if x != nil {
		return x.ComputeInstanceType
	}
	return ""
}

func (x *ClusterComponent) GetCpuNum() int32 {
	if x != nil {
		return x.CpuNum
	}
	return 0
}

func (x *ClusterComponent) GetMemoryGi() int64 {
	if x != nil {
		return x.MemoryGi
	}
	return 0
}

func (x *ClusterComponent) GetStorageInstanceType() string {
	if x != nil {
		return x.StorageInstanceType
	}
	return ""
}

func (x *ClusterComponent) GetStorageSizeGi() int64 {
	if x != nil {
		return x.StorageSizeGi
	}
	return 0
}

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

	Id               uint64        `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Name             string        `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	ComponentType    ComponentType `protobuf:"varint,3,opt,name=component_type,json=componentType,proto3,enum=core.ComponentType" json:"component_type,omitempty"`
	DeployType       DeployType    `protobuf:"varint,4,opt,name=deploy_type,json=deployType,proto3,enum=core.DeployType" json:"deploy_type,omitempty"`
	CloudProvider    string        `protobuf:"bytes,5,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"`
	Region           string        `protobuf:"bytes,6,opt,name=region,proto3" json:"region,omitempty"`
	CpuNum           int32         `protobuf:"varint,7,opt,name=cpu_num,json=cpuNum,proto3" json:"cpu_num,omitempty"`
	DefaultNodeNum   int32         `protobuf:"varint,11,opt,name=default_node_num,json=defaultNodeNum,proto3" json:"default_node_num,omitempty"`
	MinStorageSizeGi int32         `protobuf:"varint,12,opt,name=min_storage_size_gi,json=minStorageSizeGi,proto3" json:"min_storage_size_gi,omitempty"`
	MaxStorageSizeGi int32         `protobuf:"varint,13,opt,name=max_storage_size_gi,json=maxStorageSizeGi,proto3" json:"max_storage_size_gi,omitempty"`
}

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

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

func (*NodeProfile4Tenant) ProtoMessage() {}

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

func (x *NodeProfile4Tenant) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

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

func (x *NodeProfile4Tenant) GetComponentType() ComponentType {
	if x != nil {
		return x.ComponentType
	}
	return ComponentType_COMPONENT_TYPE_UNSPECIFIED
}

func (x *NodeProfile4Tenant) GetDeployType() DeployType {
	if x != nil {
		return x.DeployType
	}
	return DeployType_DEPLOY_TYPE_UNSPECIFIED
}

func (x *NodeProfile4Tenant) GetCloudProvider() string {
	if x != nil {
		return x.CloudProvider
	}
	return ""
}

func (x *NodeProfile4Tenant) GetRegion() string {
	if x != nil {
		return x.Region
	}
	return ""
}

func (x *NodeProfile4Tenant) GetCpuNum() int32 {
	if x != nil {
		return x.CpuNum
	}
	return 0
}

func (x *NodeProfile4Tenant) GetDefaultNodeNum() int32 {
	if x != nil {
		return x.DefaultNodeNum
	}
	return 0
}

func (x *NodeProfile4Tenant) GetMinStorageSizeGi() int32 {
	if x != nil {
		return x.MinStorageSizeGi
	}
	return 0
}

func (x *NodeProfile4Tenant) GetMaxStorageSizeGi() int32 {
	if x != nil {
		return x.MaxStorageSizeGi
	}
	return 0
}

// aka ClusterEndpoint
type ClusterConnection struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ClusterId     uint64                `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	Type          ClusterConnectionType `protobuf:"varint,3,opt,name=type,proto3,enum=core.ClusterConnectionType" json:"type,omitempty"`
	CreateSuccess bool                  `protobuf:"varint,4,opt,name=create_success,json=createSuccess,proto3" json:"create_success,omitempty"`
	Host          string                `protobuf:"bytes,11,opt,name=host,proto3" json:"host,omitempty"`
	Port          int32                 `protobuf:"varint,12,opt,name=port,proto3" json:"port,omitempty"`
}

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

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

func (*ClusterConnection) ProtoMessage() {}

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

func (x *ClusterConnection) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *ClusterConnection) GetType() ClusterConnectionType {
	if x != nil {
		return x.Type
	}
	return ClusterConnectionType_CLUSTER_CONNECTION_TYPE_UNSPECIFIED
}

func (x *ClusterConnection) GetCreateSuccess() bool {
	if x != nil {
		return x.CreateSuccess
	}
	return false
}

func (x *ClusterConnection) GetHost() string {
	if x != nil {
		return x.Host
	}
	return ""
}

func (x *ClusterConnection) GetPort() int32 {
	if x != nil {
		return x.Port
	}
	return 0
}

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

	Id                uint64               `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	TenantId          uint64               `protobuf:"varint,2,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ProjectId         uint64               `protobuf:"varint,3,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	CloudProviderName string               `protobuf:"bytes,4,opt,name=cloud_provider_name,json=cloudProviderName,proto3" json:"cloud_provider_name,omitempty"`
	InfraProviderType string               `protobuf:"bytes,5,opt,name=infra_provider_type,json=infraProviderType,proto3" json:"infra_provider_type,omitempty"`
	RegionName        string               `protobuf:"bytes,6,opt,name=region_name,json=regionName,proto3" json:"region_name,omitempty"`
	Name              string               `protobuf:"bytes,7,opt,name=name,proto3" json:"name,omitempty"`
	Version           string               `protobuf:"bytes,8,opt,name=version,proto3" json:"version,omitempty"`
	Components        []*ClusterComponent  `protobuf:"bytes,9,rep,name=components,proto3" json:"components,omitempty"`
	Status            ClusterStatus        `protobuf:"varint,10,opt,name=status,proto3,enum=core.ClusterStatus" json:"status,omitempty"`
	UserStatus        UserClusterStatus    `protobuf:"varint,11,opt,name=user_status,json=userStatus,proto3,enum=core.UserClusterStatus" json:"user_status,omitempty"`
	UserSubStatus     UserClusterSubStatus `protobuf:"varint,12,opt,name=user_sub_status,json=userSubStatus,proto3,enum=core.UserClusterSubStatus" json:"user_sub_status,omitempty"`
	IsDevTier         bool                 `protobuf:"varint,13,opt,name=is_dev_tier,json=isDevTier,proto3" json:"is_dev_tier,omitempty"`
	ImportId          *uint64              `protobuf:"varint,14,opt,name=import_id,json=importId,proto3,oneof" json:"import_id,omitempty"`
	Connections       []*ClusterConnection `protobuf:"bytes,15,rep,name=connections,proto3" json:"connections,omitempty"`
	ReadOnly          bool                 `protobuf:"varint,16,opt,name=read_only,json=readOnly,proto3" json:"read_only,omitempty"`
	CreatedAt         int64                `protobuf:"varint,21,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	CreatedBy         uint64               `protobuf:"varint,22,opt,name=created_by,json=createdBy,proto3" json:"created_by,omitempty"`
	XaccountDeployId  uint64               `protobuf:"varint,23,opt,name=xaccount_deploy_id,json=xaccountDeployId,proto3" json:"xaccount_deploy_id,omitempty"`
}

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

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

func (*Cluster) ProtoMessage() {}

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

func (x *Cluster) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *Cluster) GetTenantId() uint64 {
	if x != nil {
		return x.TenantId
	}
	return 0
}

func (x *Cluster) GetProjectId() uint64 {
	if x != nil {
		return x.ProjectId
	}
	return 0
}

func (x *Cluster) GetCloudProviderName() string {
	if x != nil {
		return x.CloudProviderName
	}
	return ""
}

func (x *Cluster) GetInfraProviderType() string {
	if x != nil {
		return x.InfraProviderType
	}
	return ""
}

func (x *Cluster) GetRegionName() string {
	if x != nil {
		return x.RegionName
	}
	return ""
}

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

func (x *Cluster) GetVersion() string {
	if x != nil {
		return x.Version
	}
	return ""
}

func (x *Cluster) GetComponents() []*ClusterComponent {
	if x != nil {
		return x.Components
	}
	return nil
}

func (x *Cluster) GetStatus() ClusterStatus {
	if x != nil {
		return x.Status
	}
	return ClusterStatus_CLUSTER_STATUS_UNSPECIFIED
}

func (x *Cluster) GetUserStatus() UserClusterStatus {
	if x != nil {
		return x.UserStatus
	}
	return UserClusterStatus_USER_CLUSTER_STATUS_NORMAL
}

func (x *Cluster) GetUserSubStatus() UserClusterSubStatus {
	if x != nil {
		return x.UserSubStatus
	}
	return UserClusterSubStatus_USER_CLUSTER_SUB_STATUS_HEALTHY
}

func (x *Cluster) GetIsDevTier() bool {
	if x != nil {
		return x.IsDevTier
	}
	return false
}

func (x *Cluster) GetImportId() uint64 {
	if x != nil && x.ImportId != nil {
		return *x.ImportId
	}
	return 0
}

func (x *Cluster) GetConnections() []*ClusterConnection {
	if x != nil {
		return x.Connections
	}
	return nil
}

func (x *Cluster) GetReadOnly() bool {
	if x != nil {
		return x.ReadOnly
	}
	return false
}

func (x *Cluster) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *Cluster) GetCreatedBy() uint64 {
	if x != nil {
		return x.CreatedBy
	}
	return 0
}

func (x *Cluster) GetXaccountDeployId() uint64 {
	if x != nil {
		return x.XaccountDeployId
	}
	return 0
}

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

	Id                uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	TenantId          uint64 `protobuf:"varint,2,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ProjectId         uint64 `protobuf:"varint,3,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	CloudProviderName string `protobuf:"bytes,4,opt,name=cloud_provider_name,json=cloudProviderName,proto3" json:"cloud_provider_name,omitempty"`
	InfraProviderName string `protobuf:"bytes,5,opt,name=infra_provider_name,json=infraProviderName,proto3" json:"infra_provider_name,omitempty"`
	//  string region_name = 6;
	//  string name = 7;
	//  string version = 8;
	Components []*ClusterComponent `protobuf:"bytes,9,rep,name=components,proto3" json:"components,omitempty"`
}

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

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

func (*ClusterSnapshot) ProtoMessage() {}

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

func (x *ClusterSnapshot) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *ClusterSnapshot) GetTenantId() uint64 {
	if x != nil {
		return x.TenantId
	}
	return 0
}

func (x *ClusterSnapshot) GetProjectId() uint64 {
	if x != nil {
		return x.ProjectId
	}
	return 0
}

func (x *ClusterSnapshot) GetCloudProviderName() string {
	if x != nil {
		return x.CloudProviderName
	}
	return ""
}

func (x *ClusterSnapshot) GetInfraProviderName() string {
	if x != nil {
		return x.InfraProviderName
	}
	return ""
}

func (x *ClusterSnapshot) GetComponents() []*ClusterComponent {
	if x != nil {
		return x.Components
	}
	return nil
}

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

	// Network
	VpcId           string   `protobuf:"bytes,11,opt,name=vpc_id,json=vpcId,proto3" json:"vpc_id,omitempty"`
	SecurityGroupId string   `protobuf:"bytes,12,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
	SubnetIds       []string `protobuf:"bytes,13,rep,name=subnet_ids,json=subnetIds,proto3" json:"subnet_ids,omitempty"`
	// Backup
	BucketName string `protobuf:"bytes,21,opt,name=bucket_name,json=bucketName,proto3" json:"bucket_name,omitempty"`
	// Security
	KmsKeyArn               string `protobuf:"bytes,31,opt,name=kms_key_arn,json=kmsKeyArn,proto3" json:"kms_key_arn,omitempty"`
	PcaClusterComponentsArn string `protobuf:"bytes,32,opt,name=pca_cluster_components_arn,json=pcaClusterComponentsArn,proto3" json:"pca_cluster_components_arn,omitempty"`
	PcaClientArn            string `protobuf:"bytes,33,opt,name=pca_client_arn,json=pcaClientArn,proto3" json:"pca_client_arn,omitempty"`
	// IAM Role
	NodeRoleArn        string `protobuf:"bytes,41,opt,name=node_role_arn,json=nodeRoleArn,proto3" json:"node_role_arn,omitempty"`
	EksRoleArn         string `protobuf:"bytes,42,opt,name=eks_role_arn,json=eksRoleArn,proto3" json:"eks_role_arn,omitempty"`
	TidbServiceRoleArn string `protobuf:"bytes,43,opt,name=tidb_service_role_arn,json=tidbServiceRoleArn,proto3" json:"tidb_service_role_arn,omitempty"`
}

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

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

func (*AwsXAccountDeployParams) ProtoMessage() {}

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

func (x *AwsXAccountDeployParams) GetVpcId() string {
	if x != nil {
		return x.VpcId
	}
	return ""
}

func (x *AwsXAccountDeployParams) GetSecurityGroupId() string {
	if x != nil {
		return x.SecurityGroupId
	}
	return ""
}

func (x *AwsXAccountDeployParams) GetSubnetIds() []string {
	if x != nil {
		return x.SubnetIds
	}
	return nil
}

func (x *AwsXAccountDeployParams) GetBucketName() string {
	if x != nil {
		return x.BucketName
	}
	return ""
}

func (x *AwsXAccountDeployParams) GetKmsKeyArn() string {
	if x != nil {
		return x.KmsKeyArn
	}
	return ""
}

func (x *AwsXAccountDeployParams) GetPcaClusterComponentsArn() string {
	if x != nil {
		return x.PcaClusterComponentsArn
	}
	return ""
}

func (x *AwsXAccountDeployParams) GetPcaClientArn() string {
	if x != nil {
		return x.PcaClientArn
	}
	return ""
}

func (x *AwsXAccountDeployParams) GetNodeRoleArn() string {
	if x != nil {
		return x.NodeRoleArn
	}
	return ""
}

func (x *AwsXAccountDeployParams) GetEksRoleArn() string {
	if x != nil {
		return x.EksRoleArn
	}
	return ""
}

func (x *AwsXAccountDeployParams) GetTidbServiceRoleArn() string {
	if x != nil {
		return x.TidbServiceRoleArn
	}
	return ""
}

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

	Id            uint64                   `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	ProjectId     uint64                   `protobuf:"varint,2,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	CreatedAt     int64                    `protobuf:"varint,3,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	CloudProvider string                   `protobuf:"bytes,4,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"`
	Region        string                   `protobuf:"bytes,5,opt,name=region,proto3" json:"region,omitempty"`
	Status        XAccountDeploy_Status    `protobuf:"varint,6,opt,name=status,proto3,enum=core.XAccountDeploy_Status" json:"status,omitempty"`
	Aws           *AwsXAccountDeployParams `protobuf:"bytes,11,opt,name=aws,proto3,oneof" json:"aws,omitempty"`
}

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

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

func (*XAccountDeploy) ProtoMessage() {}

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

func (x *XAccountDeploy) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *XAccountDeploy) GetProjectId() uint64 {
	if x != nil {
		return x.ProjectId
	}
	return 0
}

func (x *XAccountDeploy) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *XAccountDeploy) GetCloudProvider() string {
	if x != nil {
		return x.CloudProvider
	}
	return ""
}

func (x *XAccountDeploy) GetRegion() string {
	if x != nil {
		return x.Region
	}
	return ""
}

func (x *XAccountDeploy) GetStatus() XAccountDeploy_Status {
	if x != nil {
		return x.Status
	}
	return XAccountDeploy_STATUS_UNSPECIFIED
}

func (x *XAccountDeploy) GetAws() *AwsXAccountDeployParams {
	if x != nil {
		return x.Aws
	}
	return nil
}

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

	ProjectId         uint64 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Region            string `protobuf:"bytes,2,opt,name=region,proto3" json:"region,omitempty"`
	RegionDisplayName string `protobuf:"bytes,3,opt,name=region_display_name,json=regionDisplayName,proto3" json:"region_display_name,omitempty"`
	Cidr              string `protobuf:"bytes,4,opt,name=cidr,proto3" json:"cidr,omitempty"`
	Active            bool   `protobuf:"varint,5,opt,name=active,proto3" json:"active,omitempty"`
}

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

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

func (*RegionCIDR) ProtoMessage() {}

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

func (x *RegionCIDR) GetProjectId() uint64 {
	if x != nil {
		return x.ProjectId
	}
	return 0
}

func (x *RegionCIDR) GetRegion() string {
	if x != nil {
		return x.Region
	}
	return ""
}

func (x *RegionCIDR) GetRegionDisplayName() string {
	if x != nil {
		return x.RegionDisplayName
	}
	return ""
}

func (x *RegionCIDR) GetCidr() string {
	if x != nil {
		return x.Cidr
	}
	return ""
}

func (x *RegionCIDR) GetActive() bool {
	if x != nil {
		return x.Active
	}
	return false
}

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

	PeerAccountId string `protobuf:"bytes,1,opt,name=peer_account_id,json=peerAccountId,proto3" json:"peer_account_id,omitempty"` // create required
	// status info, exist when status is "active"
	VpcPeeringId    string `protobuf:"bytes,21,opt,name=vpc_peering_id,json=vpcPeeringId,proto3" json:"vpc_peering_id,omitempty"`
	PrivateHostZone string `protobuf:"bytes,22,opt,name=private_host_zone,json=privateHostZone,proto3" json:"private_host_zone,omitempty"`
}

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

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

func (*NetworkPeerInfo4Aws) ProtoMessage() {}

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

func (x *NetworkPeerInfo4Aws) GetPeerAccountId() string {
	if x != nil {
		return x.PeerAccountId
	}
	return ""
}

func (x *NetworkPeerInfo4Aws) GetVpcPeeringId() string {
	if x != nil {
		return x.VpcPeeringId
	}
	return ""
}

func (x *NetworkPeerInfo4Aws) GetPrivateHostZone() string {
	if x != nil {
		return x.PrivateHostZone
	}
	return ""
}

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

	PeerProjectId string `protobuf:"bytes,1,opt,name=peer_project_id,json=peerProjectId,proto3" json:"peer_project_id,omitempty"` // create required
}

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

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

func (*NetworkPeerInfo4Gcp) ProtoMessage() {}

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

func (x *NetworkPeerInfo4Gcp) GetPeerProjectId() string {
	if x != nil {
		return x.PeerProjectId
	}
	return ""
}

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

	Id            uint64               `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	TenantId      uint64               `protobuf:"varint,2,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ProjectId     uint64               `protobuf:"varint,3,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`            // create required
	CloudProvider string               `protobuf:"bytes,4,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"` // create required
	Region        string               `protobuf:"bytes,5,opt,name=region,proto3" json:"region,omitempty"`                                    // create required
	VpcCidr       string               `protobuf:"bytes,6,opt,name=vpc_cidr,json=vpcCidr,proto3" json:"vpc_cidr,omitempty"`
	Network       string               `protobuf:"bytes,7,opt,name=network,proto3" json:"network,omitempty"`                              // aws: vpcId, gcp: networkName.
	PeerRegion    string               `protobuf:"bytes,8,opt,name=peer_region,json=peerRegion,proto3" json:"peer_region,omitempty"`      // create required
	PeerVpcCidr   string               `protobuf:"bytes,9,opt,name=peer_vpc_cidr,json=peerVpcCidr,proto3" json:"peer_vpc_cidr,omitempty"` // create required
	PeerNetwork   string               `protobuf:"bytes,10,opt,name=peer_network,json=peerNetwork,proto3" json:"peer_network,omitempty"`  // aws: vpcId, gcp: networkName. create required
	Type          NetworkPeer_Type     `protobuf:"varint,11,opt,name=type,proto3,enum=core.NetworkPeer_Type" json:"type,omitempty"`       // create required
	Status        NetworkPeer_Status   `protobuf:"varint,12,opt,name=status,proto3,enum=core.NetworkPeer_Status" json:"status,omitempty"`
	Aws           *NetworkPeerInfo4Aws `protobuf:"bytes,21,opt,name=aws,proto3,oneof" json:"aws,omitempty"` // create required for aws
	Gcp           *NetworkPeerInfo4Gcp `protobuf:"bytes,22,opt,name=gcp,proto3,oneof" json:"gcp,omitempty"` // create required for gcp
}

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

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

func (*NetworkPeer) ProtoMessage() {}

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

func (x *NetworkPeer) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *NetworkPeer) GetTenantId() uint64 {
	if x != nil {
		return x.TenantId
	}
	return 0
}

func (x *NetworkPeer) GetProjectId() uint64 {
	if x != nil {
		return x.ProjectId
	}
	return 0
}

func (x *NetworkPeer) GetCloudProvider() string {
	if x != nil {
		return x.CloudProvider
	}
	return ""
}

func (x *NetworkPeer) GetRegion() string {
	if x != nil {
		return x.Region
	}
	return ""
}

func (x *NetworkPeer) GetVpcCidr() string {
	if x != nil {
		return x.VpcCidr
	}
	return ""
}

func (x *NetworkPeer) GetNetwork() string {
	if x != nil {
		return x.Network
	}
	return ""
}

func (x *NetworkPeer) GetPeerRegion() string {
	if x != nil {
		return x.PeerRegion
	}
	return ""
}

func (x *NetworkPeer) GetPeerVpcCidr() string {
	if x != nil {
		return x.PeerVpcCidr
	}
	return ""
}

func (x *NetworkPeer) GetPeerNetwork() string {
	if x != nil {
		return x.PeerNetwork
	}
	return ""
}

func (x *NetworkPeer) GetType() NetworkPeer_Type {
	if x != nil {
		return x.Type
	}
	return NetworkPeer_TYPE_UNSPECIFIED
}

func (x *NetworkPeer) GetStatus() NetworkPeer_Status {
	if x != nil {
		return x.Status
	}
	return NetworkPeer_STATUS_UNSPECIFIED
}

func (x *NetworkPeer) GetAws() *NetworkPeerInfo4Aws {
	if x != nil {
		return x.Aws
	}
	return nil
}

func (x *NetworkPeer) GetGcp() *NetworkPeerInfo4Gcp {
	if x != nil {
		return x.Gcp
	}
	return nil
}

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

	Id             uint64              `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	TenantId       uint64              `protobuf:"varint,2,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ProjectId      uint64              `protobuf:"varint,3,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId      uint64              `protobuf:"varint,4,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	Type           Backup_Type         `protobuf:"varint,5,opt,name=type,proto3,enum=core.Backup_Type" json:"type,omitempty"`
	Status         BackupStatus        `protobuf:"varint,6,opt,name=status,proto3,enum=core.BackupStatus" json:"status,omitempty"`
	Method         Backup_Method       `protobuf:"varint,7,opt,name=method,proto3,enum=core.Backup_Method" json:"method,omitempty"`
	Name           string              `protobuf:"bytes,8,opt,name=name,proto3" json:"name,omitempty"`
	Components     []*ClusterComponent `protobuf:"bytes,9,rep,name=components,proto3" json:"components,omitempty"`
	Description    string              `protobuf:"bytes,11,opt,name=description,proto3" json:"description,omitempty"`
	SizeBytes      int64               `protobuf:"varint,12,opt,name=size_bytes,json=sizeBytes,proto3" json:"size_bytes,omitempty"`
	CreatedAt      int64               `protobuf:"varint,1222,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	ExpirationTime *int64              `protobuf:"varint,14,opt,name=expiration_time,json=expirationTime,proto3,oneof" json:"expiration_time,omitempty"`
}

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

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

func (*Backup) ProtoMessage() {}

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

func (x *Backup) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *Backup) GetTenantId() uint64 {
	if x != nil {
		return x.TenantId
	}
	return 0
}

func (x *Backup) GetProjectId() uint64 {
	if x != nil {
		return x.ProjectId
	}
	return 0
}

func (x *Backup) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *Backup) GetType() Backup_Type {
	if x != nil {
		return x.Type
	}
	return Backup_TYPE_UNSPECIFIED
}

func (x *Backup) GetStatus() BackupStatus {
	if x != nil {
		return x.Status
	}
	return BackupStatus_BACKUP_STATUS_UNSPECIFIED
}

func (x *Backup) GetMethod() Backup_Method {
	if x != nil {
		return x.Method
	}
	return Backup_METHOD_UNSPECIFIED
}

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

func (x *Backup) GetComponents() []*ClusterComponent {
	if x != nil {
		return x.Components
	}
	return nil
}

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

func (x *Backup) GetSizeBytes() int64 {
	if x != nil {
		return x.SizeBytes
	}
	return 0
}

func (x *Backup) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *Backup) GetExpirationTime() int64 {
	if x != nil && x.ExpirationTime != nil {
		return *x.ExpirationTime
	}
	return 0
}

type Replication struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*Replication) ProtoMessage() {}

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

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

	ServiceName  IamRoleUsage_ServiceName `protobuf:"varint,1,opt,name=service_name,json=serviceName,proto3,enum=core.IamRoleUsage_ServiceName" json:"service_name,omitempty"`
	ProviderName string                   `protobuf:"bytes,2,opt,name=provider_name,json=providerName,proto3" json:"provider_name,omitempty"`
	RegionName   string                   `protobuf:"bytes,3,opt,name=region_name,json=regionName,proto3" json:"region_name,omitempty"`
}

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

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

func (*IamRoleUsage) ProtoMessage() {}

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

func (x *IamRoleUsage) GetServiceName() IamRoleUsage_ServiceName {
	if x != nil {
		return x.ServiceName
	}
	return IamRoleUsage_SERVICE_NAME_UNSPECIFIED
}

func (x *IamRoleUsage) GetProviderName() string {
	if x != nil {
		return x.ProviderName
	}
	return ""
}

func (x *IamRoleUsage) GetRegionName() string {
	if x != nil {
		return x.RegionName
	}
	return ""
}

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

	Id        uint64          `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Arn       string          `protobuf:"bytes,2,opt,name=arn,proto3" json:"arn,omitempty"`
	CreatedAt int64           `protobuf:"varint,3,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Usages    []*IamRoleUsage `protobuf:"bytes,4,rep,name=usages,proto3" json:"usages,omitempty"`
}

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

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

func (*IamRole) ProtoMessage() {}

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

func (x *IamRole) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *IamRole) GetArn() string {
	if x != nil {
		return x.Arn
	}
	return ""
}

func (x *IamRole) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *IamRole) GetUsages() []*IamRoleUsage {
	if x != nil {
		return x.Usages
	}
	return nil
}

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

	BaseReq *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*SyncInfraProfileReq) ProtoMessage() {}

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

func (x *SyncInfraProfileReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	RequestId string         `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
	BaseResp  *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*SyncInfraProfileResp) ProtoMessage() {}

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

func (x *SyncInfraProfileResp) GetRequestId() string {
	if x != nil {
		return x.RequestId
	}
	return ""
}

func (x *SyncInfraProfileResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	Skus     []*ReplaceProfileByYamlReq_SKU  `protobuf:"bytes,1,rep,name=skus,proto3" json:"skus,omitempty"`
	Nodes    []*ReplaceProfileByYamlReq_Node `protobuf:"bytes,2,rep,name=nodes,proto3" json:"nodes,omitempty"`
	CommitId string                          `protobuf:"bytes,3,opt,name=commit_id,json=commitId,proto3" json:"commit_id,omitempty"`
	Dryrun   bool                            `protobuf:"varint,4,opt,name=dryrun,proto3" json:"dryrun,omitempty"` // sync infra compute and storage but don't save node and skus
	BaseReq  *base.BaseReq                   `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*ReplaceProfileByYamlReq) ProtoMessage() {}

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

func (x *ReplaceProfileByYamlReq) GetSkus() []*ReplaceProfileByYamlReq_SKU {
	if x != nil {
		return x.Skus
	}
	return nil
}

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

func (x *ReplaceProfileByYamlReq) GetCommitId() string {
	if x != nil {
		return x.CommitId
	}
	return ""
}

func (x *ReplaceProfileByYamlReq) GetDryrun() bool {
	if x != nil {
		return x.Dryrun
	}
	return false
}

func (x *ReplaceProfileByYamlReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	VersionId uint64         `protobuf:"varint,1,opt,name=version_id,json=versionId,proto3" json:"version_id,omitempty"`
	BaseResp  *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*ReplaceProfileByYamlResp) ProtoMessage() {}

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

func (x *ReplaceProfileByYamlResp) GetVersionId() uint64 {
	if x != nil {
		return x.VersionId
	}
	return 0
}

func (x *ReplaceProfileByYamlResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	TenantId          uint64        `protobuf:"varint,1,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	CloudProviderName string        `protobuf:"bytes,2,opt,name=cloud_provider_name,json=cloudProviderName,proto3" json:"cloud_provider_name,omitempty"`
	RegionName        string        `protobuf:"bytes,3,opt,name=region_name,json=regionName,proto3" json:"region_name,omitempty"`
	DeployType        DeployType    `protobuf:"varint,4,opt,name=deploy_type,json=deployType,proto3,enum=core.DeployType" json:"deploy_type,omitempty"`
	ProjectId         uint64        `protobuf:"varint,5,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	BaseReq           *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*ListNodeProfiles4TenantReq) ProtoMessage() {}

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

func (x *ListNodeProfiles4TenantReq) GetTenantId() uint64 {
	if x != nil {
		return x.TenantId
	}
	return 0
}

func (x *ListNodeProfiles4TenantReq) GetCloudProviderName() string {
	if x != nil {
		return x.CloudProviderName
	}
	return ""
}

func (x *ListNodeProfiles4TenantReq) GetRegionName() string {
	if x != nil {
		return x.RegionName
	}
	return ""
}

func (x *ListNodeProfiles4TenantReq) GetDeployType() DeployType {
	if x != nil {
		return x.DeployType
	}
	return DeployType_DEPLOY_TYPE_UNSPECIFIED
}

func (x *ListNodeProfiles4TenantReq) GetProjectId() uint64 {
	if x != nil {
		return x.ProjectId
	}
	return 0
}

func (x *ListNodeProfiles4TenantReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	Profiles []*NodeProfile4Tenant `protobuf:"bytes,1,rep,name=profiles,proto3" json:"profiles,omitempty"`
	BaseResp *base.BaseResp        `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*ListNodeProfiles4TenantResp) ProtoMessage() {}

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

func (x *ListNodeProfiles4TenantResp) GetProfiles() []*NodeProfile4Tenant {
	if x != nil {
		return x.Profiles
	}
	return nil
}

func (x *ListNodeProfiles4TenantResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	SpecificTenantId            *uint64 `protobuf:"varint,1,opt,name=specific_tenant_id,json=specificTenantId,proto3,oneof" json:"specific_tenant_id,omitempty"`                                // only return these regions which are available for this tenant if is not nil
	FilterOutEmptyCloudProvider bool    `protobuf:"varint,2,opt,name=filter_out_empty_cloud_provider,json=filterOutEmptyCloudProvider,proto3" json:"filter_out_empty_cloud_provider,omitempty"` // indicator whether filter out empty cloudProvider which don't have any region
	FilterOutEmptyRegion        bool    `protobuf:"varint,3,opt,name=filter_out_empty_region,json=filterOutEmptyRegion,proto3" json:"filter_out_empty_region,omitempty"`                        // indicator whether filter out empty region which don't have any node
	// whether return only these nodes which with the deploy_type.
	// and filter out these region which missing either tidb or tikv node.
	DeployType                *DeployType   `protobuf:"varint,4,opt,name=deploy_type,json=deployType,proto3,enum=core.DeployType,oneof" json:"deploy_type,omitempty"`
	FilterOutInactiveRegion   bool          `protobuf:"varint,5,opt,name=filter_out_inactive_region,json=filterOutInactiveRegion,proto3" json:"filter_out_inactive_region,omitempty"`
	FilterOutInactiveProvider bool          `protobuf:"varint,6,opt,name=filter_out_inactive_provider,json=filterOutInactiveProvider,proto3" json:"filter_out_inactive_provider,omitempty"`
	WithXaccountDeployId      bool          `protobuf:"varint,7,opt,name=with_xaccount_deploy_id,json=withXaccountDeployId,proto3" json:"with_xaccount_deploy_id,omitempty"` // whether return xaccount deploy_id into region.xaccount_deploy_id
	SpecificProjectId         *uint64       `protobuf:"varint,8,opt,name=specific_project_id,json=specificProjectId,proto3,oneof" json:"specific_project_id,omitempty"`      // must be non-nil if with_xaccount_deploy_id is true
	BaseReq                   *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*ListCloudProvidersReq) ProtoMessage() {}

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

func (x *ListCloudProvidersReq) GetSpecificTenantId() uint64 {
	if x != nil && x.SpecificTenantId != nil {
		return *x.SpecificTenantId
	}
	return 0
}

func (x *ListCloudProvidersReq) GetFilterOutEmptyCloudProvider() bool {
	if x != nil {
		return x.FilterOutEmptyCloudProvider
	}
	return false
}

func (x *ListCloudProvidersReq) GetFilterOutEmptyRegion() bool {
	if x != nil {
		return x.FilterOutEmptyRegion
	}
	return false
}

func (x *ListCloudProvidersReq) GetDeployType() DeployType {
	if x != nil && x.DeployType != nil {
		return *x.DeployType
	}
	return DeployType_DEPLOY_TYPE_UNSPECIFIED
}

func (x *ListCloudProvidersReq) GetFilterOutInactiveRegion() bool {
	if x != nil {
		return x.FilterOutInactiveRegion
	}
	return false
}

func (x *ListCloudProvidersReq) GetFilterOutInactiveProvider() bool {
	if x != nil {
		return x.FilterOutInactiveProvider
	}
	return false
}

func (x *ListCloudProvidersReq) GetWithXaccountDeployId() bool {
	if x != nil {
		return x.WithXaccountDeployId
	}
	return false
}

func (x *ListCloudProvidersReq) GetSpecificProjectId() uint64 {
	if x != nil && x.SpecificProjectId != nil {
		return *x.SpecificProjectId
	}
	return 0
}

func (x *ListCloudProvidersReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	Name2CloudProvider map[string]*CloudProvider `protobuf:"bytes,1,rep,name=name2cloud_provider,json=name2cloudProvider,proto3" json:"name2cloud_provider,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	BaseResp           *base.BaseResp            `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*ListCloudProvidersResp) ProtoMessage() {}

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

func (x *ListCloudProvidersResp) GetName2CloudProvider() map[string]*CloudProvider {
	if x != nil {
		return x.Name2CloudProvider
	}
	return nil
}

func (x *ListCloudProvidersResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

// provider related //
type CreateIamRoleReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ProjectId uint64        `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RoleArn   string        `protobuf:"bytes,2,opt,name=role_arn,json=roleArn,proto3" json:"role_arn,omitempty"`
	BaseReq   *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*CreateIamRoleReq) ProtoMessage() {}

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

func (x *CreateIamRoleReq) GetProjectId() uint64 {
	if x != nil {
		return x.ProjectId
	}
	return 0
}

func (x *CreateIamRoleReq) GetRoleArn() string {
	if x != nil {
		return x.RoleArn
	}
	return ""
}

func (x *CreateIamRoleReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	Id       uint64         `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	BaseResp *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*CreateIamRoleResp) ProtoMessage() {}

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

func (x *CreateIamRoleResp) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *CreateIamRoleResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	RoleId  uint64        `protobuf:"varint,1,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"`
	BaseReq *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*DeleteIamRoleReq) ProtoMessage() {}

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

func (x *DeleteIamRoleReq) GetRoleId() uint64 {
	if x != nil {
		return x.RoleId
	}
	return 0
}

func (x *DeleteIamRoleReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	BaseResp *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*DeleteIamRoleResp) ProtoMessage() {}

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

func (x *DeleteIamRoleResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	ProjectIds []uint64 `protobuf:"varint,1,rep,packed,name=project_ids,json=projectIds,proto3" json:"project_ids,omitempty"`
}

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

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

func (*IamRoleFilter) ProtoMessage() {}

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

func (x *IamRoleFilter) GetProjectIds() []uint64 {
	if x != nil {
		return x.ProjectIds
	}
	return nil
}

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

	Filter  *IamRoleFilter `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"`
	BaseReq *base.BaseReq  `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*ListIamRolesReq) ProtoMessage() {}

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

func (x *ListIamRolesReq) GetFilter() *IamRoleFilter {
	if x != nil {
		return x.Filter
	}
	return nil
}

func (x *ListIamRolesReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	Roles    []*IamRole     `protobuf:"bytes,1,rep,name=roles,proto3" json:"roles,omitempty"`
	BaseResp *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*ListIamRolesResp) ProtoMessage() {}

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

func (x *ListIamRolesResp) GetRoles() []*IamRole {
	if x != nil {
		return x.Roles
	}
	return nil
}

func (x *ListIamRolesResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	TenantId         uint64              `protobuf:"varint,1,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ProjectId        uint64              `protobuf:"varint,2,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Name             string              `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	RootPassword     string              `protobuf:"bytes,4,opt,name=root_password,json=rootPassword,proto3" json:"root_password,omitempty"`
	CloudProvider    string              `protobuf:"bytes,5,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"`
	Region           string              `protobuf:"bytes,6,opt,name=region,proto3" json:"region,omitempty"`
	DeployType       DeployType          `protobuf:"varint,7,opt,name=deploy_type,json=deployType,proto3,enum=core.DeployType" json:"deploy_type,omitempty"`
	IsDevTier        bool                `protobuf:"varint,8,opt,name=is_dev_tier,json=isDevTier,proto3" json:"is_dev_tier,omitempty"`
	Components       []*ClusterComponent `protobuf:"bytes,9,rep,name=components,proto3" json:"components,omitempty"`
	CreateById       uint64              `protobuf:"varint,10,opt,name=create_by_id,json=createById,proto3" json:"create_by_id,omitempty"`
	PrimaryClusterId uint64              `protobuf:"varint,11,opt,name=primary_cluster_id,json=primaryClusterId,proto3" json:"primary_cluster_id,omitempty"`
	Port             int32               `protobuf:"varint,12,opt,name=port,proto3" json:"port,omitempty"` // the port for connect to the cluster
	XaccountDeployId uint64              `protobuf:"varint,13,opt,name=xaccount_deploy_id,json=xaccountDeployId,proto3" json:"xaccount_deploy_id,omitempty"`
	BaseReq          *base.BaseReq       `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*CreateClusterReq) ProtoMessage() {}

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

func (x *CreateClusterReq) GetTenantId() uint64 {
	if x != nil {
		return x.TenantId
	}
	return 0
}

func (x *CreateClusterReq) GetProjectId() uint64 {
	if x != nil {
		return x.ProjectId
	}
	return 0
}

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

func (x *CreateClusterReq) GetRootPassword() string {
	if x != nil {
		return x.RootPassword
	}
	return ""
}

func (x *CreateClusterReq) GetCloudProvider() string {
	if x != nil {
		return x.CloudProvider
	}
	return ""
}

func (x *CreateClusterReq) GetRegion() string {
	if x != nil {
		return x.Region
	}
	return ""
}

func (x *CreateClusterReq) GetDeployType() DeployType {
	if x != nil {
		return x.DeployType
	}
	return DeployType_DEPLOY_TYPE_UNSPECIFIED
}

func (x *CreateClusterReq) GetIsDevTier() bool {
	if x != nil {
		return x.IsDevTier
	}
	return false
}

func (x *CreateClusterReq) GetComponents() []*ClusterComponent {
	if x != nil {
		return x.Components
	}
	return nil
}

func (x *CreateClusterReq) GetCreateById() uint64 {
	if x != nil {
		return x.CreateById
	}
	return 0
}

func (x *CreateClusterReq) GetPrimaryClusterId() uint64 {
	if x != nil {
		return x.PrimaryClusterId
	}
	return 0
}

func (x *CreateClusterReq) GetPort() int32 {
	if x != nil {
		return x.Port
	}
	return 0
}

func (x *CreateClusterReq) GetXaccountDeployId() uint64 {
	if x != nil {
		return x.XaccountDeployId
	}
	return 0
}

func (x *CreateClusterReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	Id       uint64         `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	BaseResp *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*CreateClusterResp) ProtoMessage() {}

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

func (x *CreateClusterResp) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *CreateClusterResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	ClusterId uint64        `protobuf:"varint,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	BaseReq   *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*CreateClusterSnapshotReq) ProtoMessage() {}

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

func (x *CreateClusterSnapshotReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *CreateClusterSnapshotReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	SnapshotId uint64         `protobuf:"varint,1,opt,name=snapshot_id,json=snapshotId,proto3" json:"snapshot_id,omitempty"`
	BaseResp   *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*CreateClusterSnapshotResp) ProtoMessage() {}

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

func (x *CreateClusterSnapshotResp) GetSnapshotId() uint64 {
	if x != nil {
		return x.SnapshotId
	}
	return 0
}

func (x *CreateClusterSnapshotResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	SnapshotIds []uint64      `protobuf:"varint,1,rep,packed,name=snapshot_ids,json=snapshotIds,proto3" json:"snapshot_ids,omitempty"`
	BaseReq     *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*BatchGetClusterSnapshotReq) ProtoMessage() {}

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

func (x *BatchGetClusterSnapshotReq) GetSnapshotIds() []uint64 {
	if x != nil {
		return x.SnapshotIds
	}
	return nil
}

func (x *BatchGetClusterSnapshotReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	Snapshots map[uint64]*ClusterSnapshot `protobuf:"bytes,1,rep,name=snapshots,proto3" json:"snapshots,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	BaseResp  *base.BaseResp              `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*BatchGetClusterSnapshotResp) ProtoMessage() {}

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

func (x *BatchGetClusterSnapshotResp) GetSnapshots() map[uint64]*ClusterSnapshot {
	if x != nil {
		return x.Snapshots
	}
	return nil
}

func (x *BatchGetClusterSnapshotResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	ClusterId           uint64              `protobuf:"varint,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	NewComponents       []*ClusterComponent `protobuf:"bytes,2,rep,name=new_components,json=newComponents,proto3" json:"new_components,omitempty"`
	AllowScaleIn        bool                `protobuf:"varint,3,opt,name=allow_scale_in,json=allowScaleIn,proto3" json:"allow_scale_in,omitempty"`
	AllowScaleSecondary bool                `protobuf:"varint,4,opt,name=allow_scale_secondary,json=allowScaleSecondary,proto3" json:"allow_scale_secondary,omitempty"`
	BaseReq             *base.BaseReq       `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*ScaleClusterReq) ProtoMessage() {}

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

func (x *ScaleClusterReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *ScaleClusterReq) GetNewComponents() []*ClusterComponent {
	if x != nil {
		return x.NewComponents
	}
	return nil
}

func (x *ScaleClusterReq) GetAllowScaleIn() bool {
	if x != nil {
		return x.AllowScaleIn
	}
	return false
}

func (x *ScaleClusterReq) GetAllowScaleSecondary() bool {
	if x != nil {
		return x.AllowScaleSecondary
	}
	return false
}

func (x *ScaleClusterReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	BaseResp *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*ScaleClusterResp) ProtoMessage() {}

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

func (x *ScaleClusterResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	TenantId          uint64              `protobuf:"varint,1,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ProjectId         uint64              `protobuf:"varint,2,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	CloudProviderName string              `protobuf:"bytes,3,opt,name=cloud_provider_name,json=cloudProviderName,proto3" json:"cloud_provider_name,omitempty"`
	RegionName        string              `protobuf:"bytes,4,opt,name=region_name,json=regionName,proto3" json:"region_name,omitempty"`
	Duration          int64               `protobuf:"varint,5,opt,name=duration,proto3" json:"duration,omitempty"`
	DeployType        DeployType          `protobuf:"varint,6,opt,name=deploy_type,json=deployType,proto3,enum=core.DeployType" json:"deploy_type,omitempty"`
	Components        []*ClusterComponent `protobuf:"bytes,7,rep,name=components,proto3" json:"components,omitempty"`
	BaseReq           *base.BaseReq       `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*CalcClusterFeeReq) ProtoMessage() {}

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

func (x *CalcClusterFeeReq) GetTenantId() uint64 {
	if x != nil {
		return x.TenantId
	}
	return 0
}

func (x *CalcClusterFeeReq) GetProjectId() uint64 {
	if x != nil {
		return x.ProjectId
	}
	return 0
}

func (x *CalcClusterFeeReq) GetCloudProviderName() string {
	if x != nil {
		return x.CloudProviderName
	}
	return ""
}

func (x *CalcClusterFeeReq) GetRegionName() string {
	if x != nil {
		return x.RegionName
	}
	return ""
}

func (x *CalcClusterFeeReq) GetDuration() int64 {
	if x != nil {
		return x.Duration
	}
	return 0
}

func (x *CalcClusterFeeReq) GetDeployType() DeployType {
	if x != nil {
		return x.DeployType
	}
	return DeployType_DEPLOY_TYPE_UNSPECIFIED
}

func (x *CalcClusterFeeReq) GetComponents() []*ClusterComponent {
	if x != nil {
		return x.Components
	}
	return nil
}

func (x *CalcClusterFeeReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	Costs    []*CalcClusterFeeResp_ComponentCost `protobuf:"bytes,1,rep,name=costs,proto3" json:"costs,omitempty"`
	BaseResp *base.BaseResp                      `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*CalcClusterFeeResp) ProtoMessage() {}

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

func (x *CalcClusterFeeResp) GetCosts() []*CalcClusterFeeResp_ComponentCost {
	if x != nil {
		return x.Costs
	}
	return nil
}

func (x *CalcClusterFeeResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	CloudProviderNames []string `protobuf:"bytes,1,rep,name=cloud_provider_names,json=cloudProviderNames,proto3" json:"cloud_provider_names,omitempty"`
	//  repeated string region_names = 2;
	Statuses        []ClusterStatus `protobuf:"varint,3,rep,packed,name=statuses,proto3,enum=core.ClusterStatus" json:"statuses,omitempty"`
	ExcludeStatuses []ClusterStatus `protobuf:"varint,4,rep,packed,name=exclude_statuses,json=excludeStatuses,proto3,enum=core.ClusterStatus" json:"exclude_statuses,omitempty"`
	TenantIds       []uint64        `protobuf:"varint,5,rep,packed,name=tenant_ids,json=tenantIds,proto3" json:"tenant_ids,omitempty"`
	ProjectIds      []uint64        `protobuf:"varint,6,rep,packed,name=project_ids,json=projectIds,proto3" json:"project_ids,omitempty"`
	ClusterIds      []uint64        `protobuf:"varint,7,rep,packed,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"`
	Deleted         *bool           `protobuf:"varint,8,opt,name=deleted,proto3,oneof" json:"deleted,omitempty"`
}

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

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

func (*ClusterFilter) ProtoMessage() {}

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

func (x *ClusterFilter) GetCloudProviderNames() []string {
	if x != nil {
		return x.CloudProviderNames
	}
	return nil
}

func (x *ClusterFilter) GetStatuses() []ClusterStatus {
	if x != nil {
		return x.Statuses
	}
	return nil
}

func (x *ClusterFilter) GetExcludeStatuses() []ClusterStatus {
	if x != nil {
		return x.ExcludeStatuses
	}
	return nil
}

func (x *ClusterFilter) GetTenantIds() []uint64 {
	if x != nil {
		return x.TenantIds
	}
	return nil
}

func (x *ClusterFilter) GetProjectIds() []uint64 {
	if x != nil {
		return x.ProjectIds
	}
	return nil
}

func (x *ClusterFilter) GetClusterIds() []uint64 {
	if x != nil {
		return x.ClusterIds
	}
	return nil
}

func (x *ClusterFilter) GetDeleted() bool {
	if x != nil && x.Deleted != nil {
		return *x.Deleted
	}
	return false
}

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

	Filter  *ClusterFilter `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"`
	Pager   *base.Pager    `protobuf:"bytes,2,opt,name=pager,proto3,oneof" json:"pager,omitempty"`
	Sorter  *base.Sorter   `protobuf:"bytes,3,opt,name=sorter,proto3,oneof" json:"sorter,omitempty"`
	BaseReq *base.BaseReq  `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*ListClustersReq) ProtoMessage() {}

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

func (x *ListClustersReq) GetFilter() *ClusterFilter {
	if x != nil {
		return x.Filter
	}
	return nil
}

func (x *ListClustersReq) GetPager() *base.Pager {
	if x != nil {
		return x.Pager
	}
	return nil
}

func (x *ListClustersReq) GetSorter() *base.Sorter {
	if x != nil {
		return x.Sorter
	}
	return nil
}

func (x *ListClustersReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	Clusters          map[uint64]*Cluster `protobuf:"bytes,1,rep,name=clusters,proto3" json:"clusters,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	OrderedClusterIds []uint64            `protobuf:"varint,2,rep,packed,name=ordered_cluster_ids,json=orderedClusterIds,proto3" json:"ordered_cluster_ids,omitempty"`
	BaseResp          *base.BaseResp      `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*ListClustersResp) ProtoMessage() {}

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

func (x *ListClustersResp) GetClusters() map[uint64]*Cluster {
	if x != nil {
		return x.Clusters
	}
	return nil
}

func (x *ListClustersResp) GetOrderedClusterIds() []uint64 {
	if x != nil {
		return x.OrderedClusterIds
	}
	return nil
}

func (x *ListClustersResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	Filter  *ClusterFilter `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"`
	BaseReq *base.BaseReq  `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*CountClustersReq) ProtoMessage() {}

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

func (x *CountClustersReq) GetFilter() *ClusterFilter {
	if x != nil {
		return x.Filter
	}
	return nil
}

func (x *CountClustersReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	Count    int64          `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"`
	BaseResp *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*CountClustersResp) ProtoMessage() {}

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

func (x *CountClustersResp) GetCount() int64 {
	if x != nil {
		return x.Count
	}
	return 0
}

func (x *CountClustersResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	ProjectId     uint64                   `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	CloudProvider string                   `protobuf:"bytes,2,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"`
	Region        string                   `protobuf:"bytes,3,opt,name=region,proto3" json:"region,omitempty"`
	Aws           *AwsXAccountDeployParams `protobuf:"bytes,11,opt,name=aws,proto3,oneof" json:"aws,omitempty"`
	BaseReq       *base.BaseReq            `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*CreateXAccountDeployReq) ProtoMessage() {}

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

func (x *CreateXAccountDeployReq) GetProjectId() uint64 {
	if x != nil {
		return x.ProjectId
	}
	return 0
}

func (x *CreateXAccountDeployReq) GetCloudProvider() string {
	if x != nil {
		return x.CloudProvider
	}
	return ""
}

func (x *CreateXAccountDeployReq) GetRegion() string {
	if x != nil {
		return x.Region
	}
	return ""
}

func (x *CreateXAccountDeployReq) GetAws() *AwsXAccountDeployParams {
	if x != nil {
		return x.Aws
	}
	return nil
}

func (x *CreateXAccountDeployReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	XaccountDeployId uint64         `protobuf:"varint,1,opt,name=xaccount_deploy_id,json=xaccountDeployId,proto3" json:"xaccount_deploy_id,omitempty"`
	BaseResp         *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*CreateXAccountDeployResp) ProtoMessage() {}

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

func (x *CreateXAccountDeployResp) GetXaccountDeployId() uint64 {
	if x != nil {
		return x.XaccountDeployId
	}
	return 0
}

func (x *CreateXAccountDeployResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	ProjectIds []uint64 `protobuf:"varint,1,rep,packed,name=project_ids,json=projectIds,proto3" json:"project_ids,omitempty"`
}

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

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

func (*XAccountDeployFilter) ProtoMessage() {}

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

func (x *XAccountDeployFilter) GetProjectIds() []uint64 {
	if x != nil {
		return x.ProjectIds
	}
	return nil
}

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

	Filter  *XAccountDeployFilter `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"`
	BaseReq *base.BaseReq         `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*ListXAccountDeployReq) ProtoMessage() {}

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

func (x *ListXAccountDeployReq) GetFilter() *XAccountDeployFilter {
	if x != nil {
		return x.Filter
	}
	return nil
}

func (x *ListXAccountDeployReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	XaccountDeploys []*XAccountDeploy `protobuf:"bytes,1,rep,name=xaccount_deploys,json=xaccountDeploys,proto3" json:"xaccount_deploys,omitempty"`
	BaseResp        *base.BaseResp    `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*ListXAccountDeployResp) ProtoMessage() {}

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

func (x *ListXAccountDeployResp) GetXaccountDeploys() []*XAccountDeploy {
	if x != nil {
		return x.XaccountDeploys
	}
	return nil
}

func (x *ListXAccountDeployResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	XaccountDeployId uint64        `protobuf:"varint,1,opt,name=xaccount_deploy_id,json=xaccountDeployId,proto3" json:"xaccount_deploy_id,omitempty"`
	BaseReq          *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*DeleteXAccountDeployReq) ProtoMessage() {}

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

func (x *DeleteXAccountDeployReq) GetXaccountDeployId() uint64 {
	if x != nil {
		return x.XaccountDeployId
	}
	return 0
}

func (x *DeleteXAccountDeployReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	BaseResp *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*DeleteXAccountDeployResp) ProtoMessage() {}

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

func (x *DeleteXAccountDeployResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

// network related //
type CreateNetworkPeerReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Peering        *NetworkPeer  `protobuf:"bytes,1,opt,name=peering,proto3" json:"peering,omitempty"`
	OperatorUserId uint64        `protobuf:"varint,2,opt,name=operator_user_id,json=operatorUserId,proto3" json:"operator_user_id,omitempty"`
	BaseReq        *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*CreateNetworkPeerReq) ProtoMessage() {}

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

func (x *CreateNetworkPeerReq) GetPeering() *NetworkPeer {
	if x != nil {
		return x.Peering
	}
	return nil
}

func (x *CreateNetworkPeerReq) GetOperatorUserId() uint64 {
	if x != nil {
		return x.OperatorUserId
	}
	return 0
}

func (x *CreateNetworkPeerReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	PeeringId uint64         `protobuf:"varint,1,opt,name=peering_id,json=peeringId,proto3" json:"peering_id,omitempty"`
	BaseResp  *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

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

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

func (*CreateNetworkPeerResp) ProtoMessage() {}

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

func (x *CreateNetworkPeerResp) GetPeeringId() uint64 {
	if x != nil {
		return x.PeeringId
	}
	return 0
}

func (x *CreateNetworkPeerResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	PeeringId      uint64        `protobuf:"varint,1,opt,name=peering_id,json=peeringId,proto3" json:"peering_id,omitempty"`
	CloudProvider  string        `protobuf:"bytes,2,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"`
	OperatorUserId uint64        `protobuf:"varint,4,opt,name=operator_user_id,json=operatorUserId,proto3" json:"operator_user_id,omitempty"`
	BaseReq        *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

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

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

func (*DeleteNetworkPeerReq) ProtoMessage() {}

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

func (x *DeleteNetworkPeerReq) GetPeeringId() uint64 {
	if x != nil {
		return x.PeeringId
	}
	return 0
}

func (x *DeleteNetworkPeerReq) GetCloudProvider() string {
	if x != nil {
		return x.CloudProvider
	}
	return ""
}

func (x *DeleteNetworkPeerReq) GetOperatorUserId() uint64 {
	if x != nil {
		return x.OperatorUserId
	}
	return 0
}

func (x *DeleteNetworkPeerReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	BaseResp *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

func (x *DeleteNetworkPeerResp) Reset() {
	*x = DeleteNetworkPeerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[58]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteNetworkPeerResp) ProtoMessage() {}

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

func (x *DeleteNetworkPeerResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	CloudProvider string               `protobuf:"bytes,1,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"` // required
	RegionNames   []string             `protobuf:"bytes,2,rep,name=region_names,json=regionNames,proto3" json:"region_names,omitempty"`
	Statuses      []NetworkPeer_Status `protobuf:"varint,3,rep,packed,name=statuses,proto3,enum=core.NetworkPeer_Status" json:"statuses,omitempty"`
	//  repeated ClusterStatus exclude_statuses = 4;
	Types []NetworkPeer_Type `protobuf:"varint,5,rep,packed,name=types,proto3,enum=core.NetworkPeer_Type" json:"types,omitempty"`
	//  repeated uint64 tenant_ids = 6;
	ProjectIds []uint64 `protobuf:"varint,7,rep,packed,name=project_ids,json=projectIds,proto3" json:"project_ids,omitempty"`
	PeeringIds []uint64 `protobuf:"varint,8,rep,packed,name=peering_ids,json=peeringIds,proto3" json:"peering_ids,omitempty"`
}

func (x *NetworkPeerFilter) Reset() {
	*x = NetworkPeerFilter{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[59]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*NetworkPeerFilter) ProtoMessage() {}

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

func (x *NetworkPeerFilter) GetCloudProvider() string {
	if x != nil {
		return x.CloudProvider
	}
	return ""
}

func (x *NetworkPeerFilter) GetRegionNames() []string {
	if x != nil {
		return x.RegionNames
	}
	return nil
}

func (x *NetworkPeerFilter) GetStatuses() []NetworkPeer_Status {
	if x != nil {
		return x.Statuses
	}
	return nil
}

func (x *NetworkPeerFilter) GetTypes() []NetworkPeer_Type {
	if x != nil {
		return x.Types
	}
	return nil
}

func (x *NetworkPeerFilter) GetProjectIds() []uint64 {
	if x != nil {
		return x.ProjectIds
	}
	return nil
}

func (x *NetworkPeerFilter) GetPeeringIds() []uint64 {
	if x != nil {
		return x.PeeringIds
	}
	return nil
}

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

	Filter  *NetworkPeerFilter `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"`
	Pager   *base.Pager        `protobuf:"bytes,2,opt,name=pager,proto3,oneof" json:"pager,omitempty"`
	Sorter  *base.Sorter       `protobuf:"bytes,3,opt,name=sorter,proto3,oneof" json:"sorter,omitempty"`
	BaseReq *base.BaseReq      `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

func (x *ListNetworkPeerReq) Reset() {
	*x = ListNetworkPeerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[60]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListNetworkPeerReq) ProtoMessage() {}

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

func (x *ListNetworkPeerReq) GetFilter() *NetworkPeerFilter {
	if x != nil {
		return x.Filter
	}
	return nil
}

func (x *ListNetworkPeerReq) GetPager() *base.Pager {
	if x != nil {
		return x.Pager
	}
	return nil
}

func (x *ListNetworkPeerReq) GetSorter() *base.Sorter {
	if x != nil {
		return x.Sorter
	}
	return nil
}

func (x *ListNetworkPeerReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	PeeringList []*NetworkPeer `protobuf:"bytes,1,rep,name=peering_list,json=peeringList,proto3" json:"peering_list,omitempty"`
	BaseResp    *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

func (x *ListNetworkPeerResp) Reset() {
	*x = ListNetworkPeerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[61]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListNetworkPeerResp) ProtoMessage() {}

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

func (x *ListNetworkPeerResp) GetPeeringList() []*NetworkPeer {
	if x != nil {
		return x.PeeringList
	}
	return nil
}

func (x *ListNetworkPeerResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

// sort by created_at desc
type ListRegionCIDROfProjectReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ProjectId     uint64        `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	CloudProvider string        `protobuf:"bytes,2,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"`
	BaseReq       *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

func (x *ListRegionCIDROfProjectReq) Reset() {
	*x = ListRegionCIDROfProjectReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[62]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListRegionCIDROfProjectReq) ProtoMessage() {}

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

func (x *ListRegionCIDROfProjectReq) GetProjectId() uint64 {
	if x != nil {
		return x.ProjectId
	}
	return 0
}

func (x *ListRegionCIDROfProjectReq) GetCloudProvider() string {
	if x != nil {
		return x.CloudProvider
	}
	return ""
}

func (x *ListRegionCIDROfProjectReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	ProjectCidr string         `protobuf:"bytes,1,opt,name=project_cidr,json=projectCidr,proto3" json:"project_cidr,omitempty"`
	RegionCidrs []*RegionCIDR  `protobuf:"bytes,2,rep,name=region_cidrs,json=regionCidrs,proto3" json:"region_cidrs,omitempty"`
	BaseResp    *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

func (x *ListRegionCIDROfProjectResp) Reset() {
	*x = ListRegionCIDROfProjectResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[63]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListRegionCIDROfProjectResp) ProtoMessage() {}

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

func (x *ListRegionCIDROfProjectResp) GetProjectCidr() string {
	if x != nil {
		return x.ProjectCidr
	}
	return ""
}

func (x *ListRegionCIDROfProjectResp) GetRegionCidrs() []*RegionCIDR {
	if x != nil {
		return x.RegionCidrs
	}
	return nil
}

func (x *ListRegionCIDROfProjectResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	ClusterId uint64                `protobuf:"varint,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	ConnType  ClusterConnectionType `protobuf:"varint,2,opt,name=conn_type,json=connType,proto3,enum=core.ClusterConnectionType" json:"conn_type,omitempty"`
	BaseReq   *base.BaseReq         `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

func (x *CreateClusterConnReq) Reset() {
	*x = CreateClusterConnReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[64]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateClusterConnReq) ProtoMessage() {}

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

func (x *CreateClusterConnReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *CreateClusterConnReq) GetConnType() ClusterConnectionType {
	if x != nil {
		return x.ConnType
	}
	return ClusterConnectionType_CLUSTER_CONNECTION_TYPE_UNSPECIFIED
}

func (x *CreateClusterConnReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	BaseResp *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

func (x *CreateClusterConnResp) Reset() {
	*x = CreateClusterConnResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[65]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateClusterConnResp) ProtoMessage() {}

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

func (x *CreateClusterConnResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	//  uint64 tenant_id = 1;
	//  uint64 project_id = 2;
	BackupId           uint64              `protobuf:"varint,3,opt,name=backup_id,json=backupId,proto3" json:"backup_id,omitempty"`
	OperatorUserId     uint64              `protobuf:"varint,4,opt,name=operator_user_id,json=operatorUserId,proto3" json:"operator_user_id,omitempty"`
	ReplicationId      *uint64             `protobuf:"varint,5,opt,name=replication_id,json=replicationId,proto3,oneof" json:"replication_id,omitempty"` // non-nil if this is a restore for replication
	RegionName         *string             `protobuf:"bytes,6,opt,name=region_name,json=regionName,proto3,oneof" json:"region_name,omitempty"`           // non-nil if restore cluster to an another region different from the region of backup's cluster
	ClusterName        string              `protobuf:"bytes,11,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
	ClusterDescription string              `protobuf:"bytes,12,opt,name=cluster_description,json=clusterDescription,proto3" json:"cluster_description,omitempty"`
	ClusterPassword    string              `protobuf:"bytes,13,opt,name=cluster_password,json=clusterPassword,proto3" json:"cluster_password,omitempty"`
	Components         []*ClusterComponent `protobuf:"bytes,14,rep,name=components,proto3" json:"components,omitempty"`
	Port               int32               `protobuf:"varint,15,opt,name=port,proto3" json:"port,omitempty"` // the port for connect to the cluster
	BaseReq            *base.BaseReq       `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

func (x *RestoreClusterReq) Reset() {
	*x = RestoreClusterReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[66]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RestoreClusterReq) ProtoMessage() {}

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

func (x *RestoreClusterReq) GetBackupId() uint64 {
	if x != nil {
		return x.BackupId
	}
	return 0
}

func (x *RestoreClusterReq) GetOperatorUserId() uint64 {
	if x != nil {
		return x.OperatorUserId
	}
	return 0
}

func (x *RestoreClusterReq) GetReplicationId() uint64 {
	if x != nil && x.ReplicationId != nil {
		return *x.ReplicationId
	}
	return 0
}

func (x *RestoreClusterReq) GetRegionName() string {
	if x != nil && x.RegionName != nil {
		return *x.RegionName
	}
	return ""
}

func (x *RestoreClusterReq) GetClusterName() string {
	if x != nil {
		return x.ClusterName
	}
	return ""
}

func (x *RestoreClusterReq) GetClusterDescription() string {
	if x != nil {
		return x.ClusterDescription
	}
	return ""
}

func (x *RestoreClusterReq) GetClusterPassword() string {
	if x != nil {
		return x.ClusterPassword
	}
	return ""
}

func (x *RestoreClusterReq) GetComponents() []*ClusterComponent {
	if x != nil {
		return x.Components
	}
	return nil
}

func (x *RestoreClusterReq) GetPort() int32 {
	if x != nil {
		return x.Port
	}
	return 0
}

func (x *RestoreClusterReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	RestoreId uint64         `protobuf:"varint,1,opt,name=restore_id,json=restoreId,proto3" json:"restore_id,omitempty"`
	ClusterId uint64         `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	BaseResp  *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

func (x *RestoreClusterResp) Reset() {
	*x = RestoreClusterResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[67]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RestoreClusterResp) ProtoMessage() {}

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

func (x *RestoreClusterResp) GetRestoreId() uint64 {
	if x != nil {
		return x.RestoreId
	}
	return 0
}

func (x *RestoreClusterResp) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *RestoreClusterResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	Statuses        []BackupStatus `protobuf:"varint,3,rep,packed,name=statuses,proto3,enum=core.BackupStatus" json:"statuses,omitempty"`
	ExcludeStatuses []BackupStatus `protobuf:"varint,4,rep,packed,name=exclude_statuses,json=excludeStatuses,proto3,enum=core.BackupStatus" json:"exclude_statuses,omitempty"`
	TenantIds       []uint64       `protobuf:"varint,5,rep,packed,name=tenant_ids,json=tenantIds,proto3" json:"tenant_ids,omitempty"`
	//  repeated uint64 project_ids = 6;
	ClusterIds []uint64 `protobuf:"varint,7,rep,packed,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` //  optional bool deleted = 8;
}

func (x *BackupFilter) Reset() {
	*x = BackupFilter{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[68]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*BackupFilter) ProtoMessage() {}

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

func (x *BackupFilter) GetStatuses() []BackupStatus {
	if x != nil {
		return x.Statuses
	}
	return nil
}

func (x *BackupFilter) GetExcludeStatuses() []BackupStatus {
	if x != nil {
		return x.ExcludeStatuses
	}
	return nil
}

func (x *BackupFilter) GetTenantIds() []uint64 {
	if x != nil {
		return x.TenantIds
	}
	return nil
}

func (x *BackupFilter) GetClusterIds() []uint64 {
	if x != nil {
		return x.ClusterIds
	}
	return nil
}

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

	Filter  *BackupFilter `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"`
	BaseReq *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

func (x *ListBackupsReq) Reset() {
	*x = ListBackupsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[69]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListBackupsReq) ProtoMessage() {}

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

func (x *ListBackupsReq) GetFilter() *BackupFilter {
	if x != nil {
		return x.Filter
	}
	return nil
}

func (x *ListBackupsReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	Backups  []*Backup      `protobuf:"bytes,1,rep,name=backups,proto3" json:"backups,omitempty"`
	BaseResp *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

func (x *ListBackupsResp) Reset() {
	*x = ListBackupsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[70]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListBackupsResp) ProtoMessage() {}

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

func (x *ListBackupsResp) GetBackups() []*Backup {
	if x != nil {
		return x.Backups
	}
	return nil
}

func (x *ListBackupsResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

// sort by created_at desc
type ListBackupsOfClusterReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ClusterId uint64        `protobuf:"varint,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	BaseReq   *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

func (x *ListBackupsOfClusterReq) Reset() {
	*x = ListBackupsOfClusterReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[71]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListBackupsOfClusterReq) ProtoMessage() {}

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

func (x *ListBackupsOfClusterReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *ListBackupsOfClusterReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	Backups  []*Backup      `protobuf:"bytes,1,rep,name=backups,proto3" json:"backups,omitempty"`
	BaseResp *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

func (x *ListBackupsOfClusterResp) Reset() {
	*x = ListBackupsOfClusterResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[72]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListBackupsOfClusterResp) ProtoMessage() {}

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

func (x *ListBackupsOfClusterResp) GetBackups() []*Backup {
	if x != nil {
		return x.Backups
	}
	return nil
}

func (x *ListBackupsOfClusterResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	Type                         Replication_Type    `protobuf:"varint,1,opt,name=type,proto3,enum=core.Replication_Type" json:"type,omitempty"`
	PrimaryClusterId             uint64              `protobuf:"varint,2,opt,name=primary_cluster_id,json=primaryClusterId,proto3" json:"primary_cluster_id,omitempty"`
	SecondaryComponents          []*ClusterComponent `protobuf:"bytes,3,rep,name=secondary_components,json=secondaryComponents,proto3" json:"secondary_components,omitempty"`
	SecondaryClusterRootPassword string              `protobuf:"bytes,5,opt,name=secondary_cluster_root_password,json=secondaryClusterRootPassword,proto3" json:"secondary_cluster_root_password,omitempty"`
	SecondaryClusterRegion       string              `protobuf:"bytes,6,opt,name=secondary_cluster_region,json=secondaryClusterRegion,proto3" json:"secondary_cluster_region,omitempty"`
	SecondaryClusterName         string              `protobuf:"bytes,7,opt,name=secondary_cluster_name,json=secondaryClusterName,proto3" json:"secondary_cluster_name,omitempty"`
	SecondaryPort                int32               `protobuf:"varint,8,opt,name=secondary_port,json=secondaryPort,proto3" json:"secondary_port,omitempty"`
	CreateById                   uint64              `protobuf:"varint,10,opt,name=create_by_id,json=createById,proto3" json:"create_by_id,omitempty"`
	IgnoreReplication            bool                `protobuf:"varint,11,opt,name=ignore_replication,json=ignoreReplication,proto3" json:"ignore_replication,omitempty"`
	BaseReq                      *base.BaseReq       `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

func (x *CreateReplicationReq) Reset() {
	*x = CreateReplicationReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[73]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateReplicationReq) ProtoMessage() {}

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

func (x *CreateReplicationReq) GetType() Replication_Type {
	if x != nil {
		return x.Type
	}
	return Replication_TYPE_UNSPECIFIED
}

func (x *CreateReplicationReq) GetPrimaryClusterId() uint64 {
	if x != nil {
		return x.PrimaryClusterId
	}
	return 0
}

func (x *CreateReplicationReq) GetSecondaryComponents() []*ClusterComponent {
	if x != nil {
		return x.SecondaryComponents
	}
	return nil
}

func (x *CreateReplicationReq) GetSecondaryClusterRootPassword() string {
	if x != nil {
		return x.SecondaryClusterRootPassword
	}
	return ""
}

func (x *CreateReplicationReq) GetSecondaryClusterRegion() string {
	if x != nil {
		return x.SecondaryClusterRegion
	}
	return ""
}

func (x *CreateReplicationReq) GetSecondaryClusterName() string {
	if x != nil {
		return x.SecondaryClusterName
	}
	return ""
}

func (x *CreateReplicationReq) GetSecondaryPort() int32 {
	if x != nil {
		return x.SecondaryPort
	}
	return 0
}

func (x *CreateReplicationReq) GetCreateById() uint64 {
	if x != nil {
		return x.CreateById
	}
	return 0
}

func (x *CreateReplicationReq) GetIgnoreReplication() bool {
	if x != nil {
		return x.IgnoreReplication
	}
	return false
}

func (x *CreateReplicationReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	Id       uint64         `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	BaseResp *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

func (x *CreateReplicationResp) Reset() {
	*x = CreateReplicationResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[74]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateReplicationResp) ProtoMessage() {}

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

func (x *CreateReplicationResp) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *CreateReplicationResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	TenantIds      []uint64      `protobuf:"varint,1,rep,packed,name=tenant_ids,json=tenantIds,proto3" json:"tenant_ids,omitempty"`
	EndTime        int64         `protobuf:"varint,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
	MeasureProject bool          `protobuf:"varint,11,opt,name=measure_project,json=measureProject,proto3" json:"measure_project,omitempty"`
	MeasureCluster bool          `protobuf:"varint,12,opt,name=measure_cluster,json=measureCluster,proto3" json:"measure_cluster,omitempty"`
	BaseReq        *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

func (x *MeasureReq) Reset() {
	*x = MeasureReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[75]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MeasureReq) ProtoMessage() {}

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

func (x *MeasureReq) GetTenantIds() []uint64 {
	if x != nil {
		return x.TenantIds
	}
	return nil
}

func (x *MeasureReq) GetEndTime() int64 {
	if x != nil {
		return x.EndTime
	}
	return 0
}

func (x *MeasureReq) GetMeasureProject() bool {
	if x != nil {
		return x.MeasureProject
	}
	return false
}

func (x *MeasureReq) GetMeasureCluster() bool {
	if x != nil {
		return x.MeasureCluster
	}
	return false
}

func (x *MeasureReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	BaseResp *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

func (x *MeasureResp) Reset() {
	*x = MeasureResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[76]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MeasureResp) ProtoMessage() {}

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

func (x *MeasureResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	BaseReq *base.BaseReq `protobuf:"bytes,255,opt,name=base_req,json=baseReq,proto3" json:"base_req,omitempty"`
}

func (x *SampleReq) Reset() {
	*x = SampleReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[77]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SampleReq) ProtoMessage() {}

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

func (x *SampleReq) GetBaseReq() *base.BaseReq {
	if x != nil {
		return x.BaseReq
	}
	return nil
}

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

	BaseResp *base.BaseResp `protobuf:"bytes,255,opt,name=base_resp,json=baseResp,proto3" json:"base_resp,omitempty"`
}

func (x *SampleResp) Reset() {
	*x = SampleResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[78]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SampleResp) ProtoMessage() {}

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

func (x *SampleResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

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

	ComputeInstanceType string     `protobuf:"bytes,1,opt,name=compute_instance_type,json=computeInstanceType,proto3" json:"compute_instance_type,omitempty"`
	DiskInstanceType    string     `protobuf:"bytes,2,opt,name=disk_instance_type,json=diskInstanceType,proto3" json:"disk_instance_type,omitempty"`
	DeployType          DeployType `protobuf:"varint,3,opt,name=deploy_type,json=deployType,proto3,enum=core.DeployType" json:"deploy_type,omitempty"`
}

func (x *ReplaceProfileByYamlReq_ResourceDetail) Reset() {
	*x = ReplaceProfileByYamlReq_ResourceDetail{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[80]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ReplaceProfileByYamlReq_ResourceDetail) ProtoMessage() {}

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

func (x *ReplaceProfileByYamlReq_ResourceDetail) GetComputeInstanceType() string {
	if x != nil {
		return x.ComputeInstanceType
	}
	return ""
}

func (x *ReplaceProfileByYamlReq_ResourceDetail) GetDiskInstanceType() string {
	if x != nil {
		return x.DiskInstanceType
	}
	return ""
}

func (x *ReplaceProfileByYamlReq_ResourceDetail) GetDeployType() DeployType {
	if x != nil {
		return x.DeployType
	}
	return DeployType_DEPLOY_TYPE_UNSPECIFIED
}

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

	NodeName string `protobuf:"bytes,1,opt,name=node_name,json=nodeName,proto3" json:"node_name,omitempty"`
	NodeNum  int32  `protobuf:"varint,2,opt,name=node_num,json=nodeNum,proto3" json:"node_num,omitempty"`
}

func (x *ReplaceProfileByYamlReq_PDNode) Reset() {
	*x = ReplaceProfileByYamlReq_PDNode{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[81]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ReplaceProfileByYamlReq_PDNode) ProtoMessage() {}

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

func (x *ReplaceProfileByYamlReq_PDNode) GetNodeName() string {
	if x != nil {
		return x.NodeName
	}
	return ""
}

func (x *ReplaceProfileByYamlReq_PDNode) GetNodeNum() int32 {
	if x != nil {
		return x.NodeNum
	}
	return 0
}

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

	CloudProvider  string                                  `protobuf:"bytes,1,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"`
	Region         string                                  `protobuf:"bytes,2,opt,name=region,proto3" json:"region,omitempty"`
	ResourceType   SKUType                                 `protobuf:"varint,3,opt,name=resource_type,json=resourceType,proto3,enum=core.SKUType" json:"resource_type,omitempty"`
	Price          string                                  `protobuf:"bytes,4,opt,name=price,proto3" json:"price,omitempty"`
	Extra          string                                  `protobuf:"bytes,5,opt,name=extra,proto3" json:"extra,omitempty"`
	ResourceDetail *ReplaceProfileByYamlReq_ResourceDetail `protobuf:"bytes,6,opt,name=resource_detail,json=resourceDetail,proto3" json:"resource_detail,omitempty"`
}

func (x *ReplaceProfileByYamlReq_SKU) Reset() {
	*x = ReplaceProfileByYamlReq_SKU{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[82]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ReplaceProfileByYamlReq_SKU) ProtoMessage() {}

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

func (x *ReplaceProfileByYamlReq_SKU) GetCloudProvider() string {
	if x != nil {
		return x.CloudProvider
	}
	return ""
}

func (x *ReplaceProfileByYamlReq_SKU) GetRegion() string {
	if x != nil {
		return x.Region
	}
	return ""
}

func (x *ReplaceProfileByYamlReq_SKU) GetResourceType() SKUType {
	if x != nil {
		return x.ResourceType
	}
	return SKUType_SKU_TYPE_UNSPECIFIED
}

func (x *ReplaceProfileByYamlReq_SKU) GetPrice() string {
	if x != nil {
		return x.Price
	}
	return ""
}

func (x *ReplaceProfileByYamlReq_SKU) GetExtra() string {
	if x != nil {
		return x.Extra
	}
	return ""
}

func (x *ReplaceProfileByYamlReq_SKU) GetResourceDetail() *ReplaceProfileByYamlReq_ResourceDetail {
	if x != nil {
		return x.ResourceDetail
	}
	return nil
}

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

	CloudProvider       string                          `protobuf:"bytes,1,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"`
	Regions             []string                        `protobuf:"bytes,2,rep,name=regions,proto3" json:"regions,omitempty"`
	DeployType          DeployType                      `protobuf:"varint,3,opt,name=deploy_type,json=deployType,proto3,enum=core.DeployType" json:"deploy_type,omitempty"`
	ComponentType       ComponentType                   `protobuf:"varint,4,opt,name=component_type,json=componentType,proto3,enum=core.ComponentType" json:"component_type,omitempty"`
	OpenedTenantIds     []uint64                        `protobuf:"varint,5,rep,packed,name=opened_tenant_ids,json=openedTenantIds,proto3" json:"opened_tenant_ids,omitempty"`
	Name                string                          `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"`
	ComputeInstanceType string                          `protobuf:"bytes,7,opt,name=compute_instance_type,json=computeInstanceType,proto3" json:"compute_instance_type,omitempty"`
	Cpu                 int32                           `protobuf:"varint,8,opt,name=cpu,proto3" json:"cpu,omitempty"`
	MemoryGi            int32                           `protobuf:"varint,9,opt,name=memory_gi,json=memoryGi,proto3" json:"memory_gi,omitempty"`
	DefaultNodeNum      int32                           `protobuf:"varint,10,opt,name=default_node_num,json=defaultNodeNum,proto3" json:"default_node_num,omitempty"`
	DiskInstanceType    string                          `protobuf:"bytes,11,opt,name=disk_instance_type,json=diskInstanceType,proto3" json:"disk_instance_type,omitempty"`
	DiskIops            int32                           `protobuf:"varint,12,opt,name=disk_iops,json=diskIops,proto3" json:"disk_iops,omitempty"`
	DiskThroughput      int32                           `protobuf:"varint,13,opt,name=disk_throughput,json=diskThroughput,proto3" json:"disk_throughput,omitempty"`
	MinStorageGi        int32                           `protobuf:"varint,14,opt,name=min_storage_gi,json=minStorageGi,proto3" json:"min_storage_gi,omitempty"`
	MaxStorageGi        int32                           `protobuf:"varint,15,opt,name=max_storage_gi,json=maxStorageGi,proto3" json:"max_storage_gi,omitempty"`
	IsPublic            bool                            `protobuf:"varint,16,opt,name=is_public,json=isPublic,proto3" json:"is_public,omitempty"`
	Annotation          string                          `protobuf:"bytes,17,opt,name=annotation,proto3" json:"annotation,omitempty"`
	PdNode              *ReplaceProfileByYamlReq_PDNode `protobuf:"bytes,18,opt,name=pd_node,json=pdNode,proto3,oneof" json:"pd_node,omitempty"`
}

func (x *ReplaceProfileByYamlReq_Node) Reset() {
	*x = ReplaceProfileByYamlReq_Node{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[83]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ReplaceProfileByYamlReq_Node) ProtoMessage() {}

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

func (x *ReplaceProfileByYamlReq_Node) GetCloudProvider() string {
	if x != nil {
		return x.CloudProvider
	}
	return ""
}

func (x *ReplaceProfileByYamlReq_Node) GetRegions() []string {
	if x != nil {
		return x.Regions
	}
	return nil
}

func (x *ReplaceProfileByYamlReq_Node) GetDeployType() DeployType {
	if x != nil {
		return x.DeployType
	}
	return DeployType_DEPLOY_TYPE_UNSPECIFIED
}

func (x *ReplaceProfileByYamlReq_Node) GetComponentType() ComponentType {
	if x != nil {
		return x.ComponentType
	}
	return ComponentType_COMPONENT_TYPE_UNSPECIFIED
}

func (x *ReplaceProfileByYamlReq_Node) GetOpenedTenantIds() []uint64 {
	if x != nil {
		return x.OpenedTenantIds
	}
	return nil
}

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

func (x *ReplaceProfileByYamlReq_Node) GetComputeInstanceType() string {
	if x != nil {
		return x.ComputeInstanceType
	}
	return ""
}

func (x *ReplaceProfileByYamlReq_Node) GetCpu() int32 {
	if x != nil {
		return x.Cpu
	}
	return 0
}

func (x *ReplaceProfileByYamlReq_Node) GetMemoryGi() int32 {
	if x != nil {
		return x.MemoryGi
	}
	return 0
}

func (x *ReplaceProfileByYamlReq_Node) GetDefaultNodeNum() int32 {
	if x != nil {
		return x.DefaultNodeNum
	}
	return 0
}

func (x *ReplaceProfileByYamlReq_Node) GetDiskInstanceType() string {
	if x != nil {
		return x.DiskInstanceType
	}
	return ""
}

func (x *ReplaceProfileByYamlReq_Node) GetDiskIops() int32 {
	if x != nil {
		return x.DiskIops
	}
	return 0
}

func (x *ReplaceProfileByYamlReq_Node) GetDiskThroughput() int32 {
	if x != nil {
		return x.DiskThroughput
	}
	return 0
}

func (x *ReplaceProfileByYamlReq_Node) GetMinStorageGi() int32 {
	if x != nil {
		return x.MinStorageGi
	}
	return 0
}

func (x *ReplaceProfileByYamlReq_Node) GetMaxStorageGi() int32 {
	if x != nil {
		return x.MaxStorageGi
	}
	return 0
}

func (x *ReplaceProfileByYamlReq_Node) GetIsPublic() bool {
	if x != nil {
		return x.IsPublic
	}
	return false
}

func (x *ReplaceProfileByYamlReq_Node) GetAnnotation() string {
	if x != nil {
		return x.Annotation
	}
	return ""
}

func (x *ReplaceProfileByYamlReq_Node) GetPdNode() *ReplaceProfileByYamlReq_PDNode {
	if x != nil {
		return x.PdNode
	}
	return nil
}

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

	ComponentType ComponentType `protobuf:"varint,1,opt,name=component_type,json=componentType,proto3,enum=core.ComponentType" json:"component_type,omitempty"`
	Compute       float64       `protobuf:"fixed64,2,opt,name=compute,proto3" json:"compute,omitempty"`
	Storage       float64       `protobuf:"fixed64,3,opt,name=storage,proto3" json:"storage,omitempty"`
	RawCompute    float64       `protobuf:"fixed64,11,opt,name=raw_compute,json=rawCompute,proto3" json:"raw_compute,omitempty"`
	RawStorage    float64       `protobuf:"fixed64,12,opt,name=raw_storage,json=rawStorage,proto3" json:"raw_storage,omitempty"`
}

func (x *CalcClusterFeeResp_ComponentCost) Reset() {
	*x = CalcClusterFeeResp_ComponentCost{}
	if protoimpl.UnsafeEnabled {
		mi := &file_core_core_proto_msgTypes[86]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CalcClusterFeeResp_ComponentCost) ProtoMessage() {}

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

func (x *CalcClusterFeeResp_ComponentCost) GetComponentType() ComponentType {
	if x != nil {
		return x.ComponentType
	}
	return ComponentType_COMPONENT_TYPE_UNSPECIFIED
}

func (x *CalcClusterFeeResp_ComponentCost) GetCompute() float64 {
	if x != nil {
		return x.Compute
	}
	return 0
}

func (x *CalcClusterFeeResp_ComponentCost) GetStorage() float64 {
	if x != nil {
		return x.Storage
	}
	return 0
}

func (x *CalcClusterFeeResp_ComponentCost) GetRawCompute() float64 {
	if x != nil {
		return x.RawCompute
	}
	return 0
}

func (x *CalcClusterFeeResp_ComponentCost) GetRawStorage() float64 {
	if x != nil {
		return x.RawStorage
	}
	return 0
}

var File_core_core_proto protoreflect.FileDescriptor

var file_core_core_proto_rawDesc = []byte{
	0x0a, 0x0f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x12, 0x04, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x0f, 0x62, 0x61, 0x73, 0x65, 0x2f, 0x62, 0x61,
	0x73, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb7, 0x02, 0x0a, 0x0d, 0x43, 0x6c, 0x6f,
	0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32,
	0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a,
	0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69,
	0x64, 0x65, 0x72, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x12, 0x46, 0x0a, 0x0b, 0x6e, 0x61, 0x6d, 0x65, 0x32, 0x72, 0x65, 0x67, 0x69, 0x6f,
	0x6e, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43,
	0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4e, 0x61, 0x6d,
	0x65, 0x32, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x6e,
	0x61, 0x6d, 0x65, 0x32, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x1a, 0x4c, 0x0a, 0x10, 0x4e, 0x61,
	0x6d, 0x65, 0x32, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
	0x12, 0x22, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0c, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x05, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x48, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53,
	0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54,
	0x41, 0x54, 0x55, 0x53, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x13, 0x0a,
	0x0f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x49, 0x4e, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45,
	0x10, 0x02, 0x22, 0xc0, 0x02, 0x0a, 0x06, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a,
	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79,
	0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72,
	0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x11, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
	0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x67, 0x69,
	0x6f, 0x6e, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x12, 0x2a, 0x0a, 0x11, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x5f, 0x74, 0x65, 0x6e, 0x61,
	0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0f, 0x6f, 0x70,
	0x65, 0x6e, 0x65, 0x64, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x2c, 0x0a,
	0x12, 0x78, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79,
	0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x78, 0x61, 0x63, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x49, 0x64, 0x22, 0x48, 0x0a, 0x06, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f,
	0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a,
	0x0d, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01,
	0x12, 0x13, 0x0a, 0x0f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x49, 0x4e, 0x41, 0x43, 0x54,
	0x49, 0x56, 0x45, 0x10, 0x02, 0x22, 0xcf, 0x01, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
	0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x33, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
	0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a,
	0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x49, 0x64, 0x22, 0x5b, 0x0a, 0x06, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55,
	0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e,
	0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x59, 0x4e, 0x43, 0x49, 0x4e, 0x47, 0x10, 0x01,
	0x12, 0x10, 0x0a, 0x0c, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x53, 0x49, 0x4e, 0x47,
	0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x4f, 0x55, 0x54,
	0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x03, 0x22, 0x84, 0x03, 0x0a, 0x10, 0x43, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x0e,
	0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6f, 0x6d, 0x70,
	0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6f,
	0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x6f, 0x64, 0x65,
	0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x04, 0x52, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x64,
	0x12, 0x2a, 0x0a, 0x11, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
	0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6e, 0x6f, 0x64,
	0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08,
	0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08,
	0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x70,
	0x75, 0x74, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65,
	0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x07,
	0x63, 0x70, 0x75, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x63,
	0x70, 0x75, 0x4e, 0x75, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f,
	0x67, 0x69, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79,
	0x47, 0x69, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e,
	0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x15, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x13, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
	0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67,
	0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x69, 0x18, 0x16, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x0d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x47, 0x69, 0x22, 0x87,
	0x03, 0x0a, 0x12, 0x4e, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x34, 0x54,
	0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x0e, 0x63, 0x6f, 0x6d,
	0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65,
	0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e,
	0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x31, 0x0a, 0x0b, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x5f,
	0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x72,
	0x65, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x64, 0x65,
	0x70, 0x6c, 0x6f, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75,
	0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12,
	0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x70, 0x75, 0x5f, 0x6e,
	0x75, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x63, 0x70, 0x75, 0x4e, 0x75, 0x6d,
	0x12, 0x28, 0x0a, 0x10, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65,
	0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x64, 0x65, 0x66, 0x61,
	0x75, 0x6c, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x2d, 0x0a, 0x13, 0x6d, 0x69,
	0x6e, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67,
	0x69, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x6f, 0x72,
	0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x47, 0x69, 0x12, 0x2d, 0x0a, 0x13, 0x6d, 0x61, 0x78,
	0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x69,
	0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6d, 0x61, 0x78, 0x53, 0x74, 0x6f, 0x72, 0x61,
	0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x47, 0x69, 0x22, 0xb2, 0x01, 0x0a, 0x11, 0x43, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d,
	0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x04, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2f, 0x0a,
	0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x63, 0x6f,
	0x72, 0x65, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x25,
	0x0a, 0x0e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x75,
	0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x0b, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72,
	0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x22, 0xfb, 0x05,
	0x0a, 0x07, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e,
	0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x74, 0x65,
	0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70,
	0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x11, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x5f, 0x70,
	0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x11, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x67, 0x69,
	0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65,
	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72,
	0x73, 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e,
	0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
	0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74,
	0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2b, 0x0a, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x63,
	0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x38, 0x0a, 0x0b, 0x75, 0x73, 0x65,
	0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17,
	0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x12, 0x42, 0x0a, 0x0f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x62, 0x5f,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x63,
	0x6f, 0x72, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53,
	0x75, 0x62, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0d, 0x75, 0x73, 0x65, 0x72, 0x53, 0x75,
	0x62, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x64, 0x65,
	0x76, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73,
	0x44, 0x65, 0x76, 0x54, 0x69, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x09, 0x69, 0x6d, 0x70, 0x6f, 0x72,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x08, 0x69, 0x6d,
	0x70, 0x6f, 0x72, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x0b, 0x63, 0x6f, 0x6e,
	0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17,
	0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e,
	0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c,
	0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x4f, 0x6e, 0x6c,
	0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18,
	0x15, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74,
	0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x16,
	0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12,
	0x2c, 0x0a, 0x12, 0x78, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x70, 0x6c,
	0x6f, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x78, 0x61, 0x63,
	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x49, 0x64, 0x42, 0x0c, 0x0a,
	0x0a, 0x5f, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x22, 0xf5, 0x01, 0x0a, 0x0f,
	0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12,
	0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12,
	0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x04, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a,
	0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04,
	0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x63,
	0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50,
	0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x69,
	0x6e, 0x66, 0x72, 0x61, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x50,
	0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x0a, 0x63,
	0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x16, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f,
	0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65,
	0x6e, 0x74, 0x73, 0x22, 0x98, 0x03, 0x0a, 0x17, 0x41, 0x77, 0x73, 0x58, 0x41, 0x63, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12,
	0x15, 0x0a, 0x06, 0x76, 0x70, 0x63, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x05, 0x76, 0x70, 0x63, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73,
	0x18, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x49, 0x64,
	0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x61,
	0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0b, 0x6b, 0x6d, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x61, 0x72,
	0x6e, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6b, 0x6d, 0x73, 0x4b, 0x65, 0x79, 0x41,
	0x72, 0x6e, 0x12, 0x3b, 0x0a, 0x1a, 0x70, 0x63, 0x61, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x61, 0x72, 0x6e,
	0x18, 0x20, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x70, 0x63, 0x61, 0x43, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x72, 0x6e, 0x12,
	0x24, 0x0a, 0x0e, 0x70, 0x63, 0x61, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x72,
	0x6e, 0x18, 0x21, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x63, 0x61, 0x43, 0x6c, 0x69, 0x65,
	0x6e, 0x74, 0x41, 0x72, 0x6e, 0x12, 0x22, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x72, 0x6f,
	0x6c, 0x65, 0x5f, 0x61, 0x72, 0x6e, 0x18, 0x29, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x6f,
	0x64, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x41, 0x72, 0x6e, 0x12, 0x20, 0x0a, 0x0c, 0x65, 0x6b, 0x73,
	0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x61, 0x72, 0x6e, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0a, 0x65, 0x6b, 0x73, 0x52, 0x6f, 0x6c, 0x65, 0x41, 0x72, 0x6e, 0x12, 0x31, 0x0a, 0x15, 0x74,
	0x69, 0x64, 0x62, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x65,
	0x5f, 0x61, 0x72, 0x6e, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x74, 0x69, 0x64, 0x62,
	0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x41, 0x72, 0x6e, 0x22, 0xee,
	0x02, 0x0a, 0x0e, 0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f,
	0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69,
	0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64,
	0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12,
	0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72,
	0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x33,
	0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b,
	0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65,
	0x70, 0x6c, 0x6f, 0x79, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x12, 0x34, 0x0a, 0x03, 0x61, 0x77, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x41, 0x77, 0x73, 0x58, 0x41, 0x63, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48,
	0x00, 0x52, 0x03, 0x61, 0x77, 0x73, 0x88, 0x01, 0x01, 0x22, 0x5c, 0x0a, 0x06, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e,
	0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53,
	0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12,
	0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45,
	0x10, 0x0a, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x44, 0x45, 0x4c,
	0x45, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x14, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x61, 0x77, 0x73, 0x22,
	0x9f, 0x01, 0x0a, 0x0a, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x49, 0x44, 0x52, 0x12, 0x1d,
	0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x04, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a,
	0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72,
	0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f,
	0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x11, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61,
	0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, 0x64, 0x72, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x69, 0x64, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74,
	0x69, 0x76, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76,
	0x65, 0x22, 0x8f, 0x01, 0x0a, 0x13, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65,
	0x72, 0x49, 0x6e, 0x66, 0x6f, 0x34, 0x41, 0x77, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x65, 0x65,
	0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0d, 0x70, 0x65, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49,
	0x64, 0x12, 0x24, 0x0a, 0x0e, 0x76, 0x70, 0x63, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x69, 0x6e, 0x67,
	0x5f, 0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x76, 0x70, 0x63, 0x50, 0x65,
	0x65, 0x72, 0x69, 0x6e, 0x67, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x69, 0x76, 0x61,
	0x74, 0x65, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x16, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x5a,
	0x6f, 0x6e, 0x65, 0x22, 0x3d, 0x0a, 0x13, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65,
	0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x34, 0x47, 0x63, 0x70, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x65,
	0x65, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x65, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
	0x49, 0x64, 0x22, 0xa4, 0x05, 0x0a, 0x0b, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65,
	0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02,
	0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12,
	0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x25,
	0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f,
	0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a,
	0x08, 0x76, 0x70, 0x63, 0x5f, 0x63, 0x69, 0x64, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x07, 0x76, 0x70, 0x63, 0x43, 0x69, 0x64, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f,
	0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x52, 0x65, 0x67,
	0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0d, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x76, 0x70, 0x63, 0x5f,
	0x63, 0x69, 0x64, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x65, 0x65, 0x72,
	0x56, 0x70, 0x63, 0x43, 0x69, 0x64, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x65, 0x65, 0x72, 0x5f,
	0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70,
	0x65, 0x65, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x2a, 0x0a, 0x04, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
	0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x2e, 0x54, 0x79, 0x70, 0x65,
	0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x30, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x30, 0x0a, 0x03, 0x61, 0x77, 0x73, 0x18,
	0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x34, 0x41, 0x77, 0x73,
	0x48, 0x00, 0x52, 0x03, 0x61, 0x77, 0x73, 0x88, 0x01, 0x01, 0x12, 0x30, 0x0a, 0x03, 0x67, 0x63,
	0x70, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x34, 0x47,
	0x63, 0x70, 0x48, 0x01, 0x52, 0x03, 0x67, 0x63, 0x70, 0x88, 0x01, 0x01, 0x22, 0x3f, 0x0a, 0x04,
	0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53,
	0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x59,
	0x50, 0x45, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x45, 0x52, 0x10, 0x01, 0x12, 0x0e, 0x0a,
	0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x44, 0x42, 0x41, 0x41, 0x53, 0x10, 0x02, 0x22, 0x5a, 0x0a,
	0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x54, 0x41, 0x54, 0x55,
	0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12,
	0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e,
	0x47, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x46, 0x41,
	0x49, 0x4c, 0x45, 0x44, 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53,
	0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x05, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x61, 0x77,
	0x73, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x67, 0x63, 0x70, 0x22, 0xeb, 0x04, 0x0a, 0x06, 0x42, 0x61,
	0x63, 0x6b, 0x75, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
	0x52, 0x02, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69,
	0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49,
	0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64,
	0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12,
	0x25, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e,
	0x63, 0x6f, 0x72, 0x65, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x54, 0x79, 0x70, 0x65,
	0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x42, 0x61,
	0x63, 0x6b, 0x75, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x12, 0x2b, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70,
	0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12,
	0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74,
	0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x52,
	0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a,
	0x0a, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x09, 0x73, 0x69, 0x7a, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a,
	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0xc6, 0x09, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x2c, 0x0a, 0x0f,
	0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18,
	0x0e, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x22, 0x3c, 0x0a, 0x04, 0x54, 0x79,
	0x70, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45,
	0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x59, 0x50, 0x45,
	0x5f, 0x41, 0x55, 0x54, 0x4f, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f,
	0x4d, 0x41, 0x4e, 0x55, 0x41, 0x4c, 0x10, 0x02, 0x22, 0x49, 0x0a, 0x06, 0x4d, 0x65, 0x74, 0x68,
	0x6f, 0x64, 0x12, 0x16, 0x0a, 0x12, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x55, 0x4e, 0x53,
	0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x45,
	0x54, 0x48, 0x4f, 0x44, 0x5f, 0x46, 0x55, 0x4c, 0x4c, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x4d,
	0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x49, 0x4e, 0x43, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x41,
	0x4c, 0x10, 0x02, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x22, 0xcb, 0x02, 0x0a, 0x0b, 0x52, 0x65, 0x70, 0x6c,
	0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2a, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12,
	0x14, 0x0a, 0x10, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
	0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x44,
	0x43, 0x10, 0x01, 0x22, 0x9e, 0x01, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16,
	0x0a, 0x12, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
	0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53,
	0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x53,
	0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4e,
	0x47, 0x10, 0x0b, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x44, 0x45,
	0x54, 0x41, 0x43, 0x48, 0x49, 0x4e, 0x47, 0x10, 0x15, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x54, 0x41,
	0x54, 0x55, 0x53, 0x5f, 0x44, 0x45, 0x54, 0x41, 0x43, 0x48, 0x45, 0x44, 0x10, 0x1f, 0x12, 0x11,
	0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10,
	0x29, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x50, 0x41, 0x55, 0x53,
	0x45, 0x44, 0x10, 0x33, 0x22, 0x6f, 0x0a, 0x0a, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x54, 0x79,
	0x70, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x45, 0x54, 0x41, 0x43, 0x48, 0x5f, 0x54, 0x59, 0x50,
	0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12,
	0x17, 0x0a, 0x13, 0x44, 0x45, 0x54, 0x41, 0x43, 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50,
	0x4c, 0x41, 0x4e, 0x4e, 0x45, 0x44, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x44, 0x45, 0x54, 0x41,
	0x43, 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x4f, 0x52, 0x43, 0x45, 0x10, 0x0b, 0x12,
	0x14, 0x0a, 0x10, 0x44, 0x45, 0x54, 0x41, 0x43, 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4e,
	0x4f, 0x4e, 0x45, 0x10, 0x15, 0x22, 0xe4, 0x01, 0x0a, 0x0c, 0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c,
	0x65, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x63,
	0x6f, 0x72, 0x65, 0x2e, 0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x55, 0x73, 0x61, 0x67, 0x65,
	0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0b, 0x73, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x6f,
	0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0c, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f,
	0x0a, 0x0b, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22,
	0x4b, 0x0a, 0x0b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1c,
	0x0a, 0x18, 0x53, 0x45, 0x52, 0x56, 0x49, 0x43, 0x45, 0x5f, 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x55,
	0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a,
	0x53, 0x45, 0x52, 0x56, 0x49, 0x43, 0x45, 0x5f, 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x43, 0x52, 0x4f,
	0x53, 0x53, 0x5f, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x01, 0x22, 0x76, 0x0a, 0x07,
	0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x72, 0x6e, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x61, 0x72, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x2a, 0x0a, 0x06, 0x75, 0x73, 0x61, 0x67,
	0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
	0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x06, 0x75, 0x73,
	0x61, 0x67, 0x65, 0x73, 0x22, 0x40, 0x0a, 0x13, 0x53, 0x79, 0x6e, 0x63, 0x49, 0x6e, 0x66, 0x72,
	0x61, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x12, 0x29, 0x0a, 0x08, 0x62,
	0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d,
	0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62,
	0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0x63, 0x0a, 0x14, 0x53, 0x79, 0x6e, 0x63, 0x49, 0x6e,
	0x66, 0x72, 0x61, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d,
	0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x2c, 0x0a,
	0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0xa5, 0x0b, 0x0a, 0x17,
	0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x79,
	0x59, 0x61, 0x6d, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x35, 0x0a, 0x04, 0x73, 0x6b, 0x75, 0x73, 0x18,
	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x70,
	0x6c, 0x61, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x79, 0x59, 0x61, 0x6d,
	0x6c, 0x52, 0x65, 0x71, 0x2e, 0x53, 0x4b, 0x55, 0x52, 0x04, 0x73, 0x6b, 0x75, 0x73, 0x12, 0x38,
	0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e,
	0x63, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66,
	0x69, 0x6c, 0x65, 0x42, 0x79, 0x59, 0x61, 0x6d, 0x6c, 0x52, 0x65, 0x71, 0x2e, 0x4e, 0x6f, 0x64,
	0x65, 0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d,
	0x69, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6d,
	0x6d, 0x69, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x72, 0x79, 0x72, 0x75, 0x6e, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x64, 0x72, 0x79, 0x72, 0x75, 0x6e, 0x12, 0x29, 0x0a,
	0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52,
	0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x1a, 0xa5, 0x01, 0x0a, 0x0e, 0x52, 0x65, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x32, 0x0a, 0x15, 0x63,
	0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f,
	0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x70,
	0x75, 0x74, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12,
	0x2c, 0x0a, 0x12, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
	0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x64, 0x69, 0x73,
	0x6b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x31, 0x0a,
	0x0b, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79,
	0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x54, 0x79, 0x70, 0x65,
	0x1a, 0x40, 0x0a, 0x06, 0x50, 0x44, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x6f,
	0x64, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e,
	0x6f, 0x64, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x5f,
	0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x4e,
	0x75, 0x6d, 0x1a, 0xfb, 0x01, 0x0a, 0x03, 0x53, 0x4b, 0x55, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c,
	0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x0d, 0x72, 0x65, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e,
	0x32, 0x0d, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53, 0x4b, 0x55, 0x54, 0x79, 0x70, 0x65, 0x52,
	0x0c, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a,
	0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72,
	0x69, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x55, 0x0a, 0x0f, 0x72, 0x65, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63,
	0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x79, 0x59, 0x61, 0x6d, 0x6c, 0x52, 0x65,
	0x71, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x52, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x1a, 0xd0, 0x05, 0x0a, 0x04, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x6f,
	0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
	0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x07, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x31, 0x0a, 0x0b, 0x64, 0x65,
	0x70, 0x6c, 0x6f, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x10, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x54, 0x79, 0x70,
	0x65, 0x52, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3a, 0x0a,
	0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6f, 0x6d,
	0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70,
	0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x6f, 0x70, 0x65,
	0x6e, 0x65, 0x64, 0x5f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05,
	0x20, 0x03, 0x28, 0x04, 0x52, 0x0f, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x54, 0x65, 0x6e, 0x61,
	0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x6f, 0x6d,
	0x70, 0x75, 0x74, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74,
	0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a,
	0x03, 0x63, 0x70, 0x75, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x63, 0x70, 0x75, 0x12,
	0x1b, 0x0a, 0x09, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x67, 0x69, 0x18, 0x09, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x08, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x47, 0x69, 0x12, 0x28, 0x0a, 0x10,
	0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x6e, 0x75, 0x6d,
	0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4e,
	0x6f, 0x64, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x2c, 0x0a, 0x12, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x69,
	0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x10, 0x64, 0x69, 0x73, 0x6b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
	0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x69, 0x6f, 0x70,
	0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x49, 0x6f, 0x70,
	0x73, 0x12, 0x27, 0x0a, 0x0f, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67,
	0x68, 0x70, 0x75, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x64, 0x69, 0x73, 0x6b,
	0x54, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x70, 0x75, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x69,
	0x6e, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x67, 0x69, 0x18, 0x0e, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x0c, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x47, 0x69,
	0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f,
	0x67, 0x69, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x53, 0x74, 0x6f,
	0x72, 0x61, 0x67, 0x65, 0x47, 0x69, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x70, 0x75, 0x62,
	0x6c, 0x69, 0x63, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x50, 0x75, 0x62,
	0x6c, 0x69, 0x63, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x42, 0x0a, 0x07, 0x70, 0x64, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x12,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6c,
	0x61, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x79, 0x59, 0x61, 0x6d, 0x6c,
	0x52, 0x65, 0x71, 0x2e, 0x50, 0x44, 0x4e, 0x6f, 0x64, 0x65, 0x48, 0x00, 0x52, 0x06, 0x70, 0x64,
	0x4e, 0x6f, 0x64, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x64, 0x5f, 0x6e,
	0x6f, 0x64, 0x65, 0x22, 0x67, 0x0a, 0x18, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x50, 0x72,
	0x6f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x79, 0x59, 0x61, 0x6d, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x1d, 0x0a, 0x0a, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x09, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2c,
	0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x87, 0x02, 0x0a,
	0x1a, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
	0x73, 0x34, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x74,
	0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08,
	0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6c, 0x6f, 0x75,
	0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76,
	0x69, 0x64, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x67, 0x69,
	0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72,
	0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x0b, 0x64, 0x65, 0x70,
	0x6c, 0x6f, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10,
	0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x54, 0x79, 0x70, 0x65,
	0x52, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a,
	0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04,
	0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x08, 0x62,
	0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d,
	0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62,
	0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0x81, 0x01, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x4e,
	0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x34, 0x54, 0x65, 0x6e, 0x61,
	0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x34, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c,
	0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
	0x4e, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x34, 0x54, 0x65, 0x6e, 0x61,
	0x6e, 0x74, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x09,
	0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0xd3, 0x04, 0x0a, 0x15, 0x4c,
	0x69, 0x73, 0x74, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
	0x73, 0x52, 0x65, 0x71, 0x12, 0x31, 0x0a, 0x12, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63,
	0x5f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
	0x48, 0x00, 0x52, 0x10, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x54, 0x65, 0x6e, 0x61,
	0x6e, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x44, 0x0a, 0x1f, 0x66, 0x69, 0x6c, 0x74, 0x65,
	0x72, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x5f, 0x63, 0x6c, 0x6f, 0x75,
	0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x1b, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x75, 0x74, 0x45, 0x6d, 0x70, 0x74, 0x79,
	0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x35, 0x0a,
	0x17, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x65, 0x6d, 0x70, 0x74,
	0x79, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14,
	0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x75, 0x74, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x65,
	0x67, 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x0b, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x5f, 0x74,
	0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x72, 0x65,
	0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x54, 0x79, 0x70, 0x65, 0x48, 0x01, 0x52, 0x0a, 0x64,
	0x65, 0x70, 0x6c, 0x6f, 0x79, 0x54, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x1a,
	0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x61, 0x63, 0x74,
	0x69, 0x76, 0x65, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x17, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x75, 0x74, 0x49, 0x6e, 0x61, 0x63, 0x74,
	0x69, 0x76, 0x65, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x3f, 0x0a, 0x1c, 0x66, 0x69, 0x6c,
	0x74, 0x65, 0x72, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65,
	0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x19, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x75, 0x74, 0x49, 0x6e, 0x61, 0x63, 0x74, 0x69,
	0x76, 0x65, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x35, 0x0a, 0x17, 0x77, 0x69,
	0x74, 0x68, 0x5f, 0x78, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x70, 0x6c,
	0x6f, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x77, 0x69, 0x74,
	0x68, 0x58, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x49,
	0x64, 0x12, 0x33, 0x0a, 0x13, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x5f, 0x70, 0x72,
	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02,
	0x52, 0x11, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72,
	0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65,
	0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65,
	0x71, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x5f, 0x74,
	0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x70,
	0x6c, 0x6f, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x73, 0x70, 0x65,
	0x63, 0x69, 0x66, 0x69, 0x63, 0x5f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64,
	0x22, 0x89, 0x02, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72,
	0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x65, 0x0a, 0x13, 0x6e,
	0x61, 0x6d, 0x65, 0x32, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64,
	0x65, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x32, 0x63, 0x6c, 0x6f, 0x75,
	0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x12,
	0x6e, 0x61, 0x6d, 0x65, 0x32, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64,
	0x65, 0x72, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18,
	0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61,
	0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x1a, 0x5a, 0x0a, 0x17, 0x4e, 0x61, 0x6d, 0x65, 0x32, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72,
	0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
	0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x29, 0x0a,
	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63,
	0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x77, 0x0a, 0x10,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71,
	0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12,
	0x19, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x61, 0x72, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x41, 0x72, 0x6e, 0x12, 0x29, 0x0a, 0x08, 0x62, 0x61,
	0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e,
	0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62, 0x61,
	0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0x51, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49,
	0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61,
	0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e,
	0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08,
	0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x56, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65,
	0x74, 0x65, 0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07,
	0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x72,
	0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65,
	0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e,
	0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71,
	0x22, 0x41, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65,
	0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65,
	0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x22, 0x30, 0x0a, 0x0d, 0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x46, 0x69,
	0x6c, 0x74, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f,
	0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65,
	0x63, 0x74, 0x49, 0x64, 0x73, 0x22, 0x69, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x61, 0x6d,
	0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x12, 0x2b, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74,
	0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
	0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66,
	0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65,
	0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e,
	0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71,
	0x22, 0x65, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x23, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x49, 0x61, 0x6d, 0x52, 0x6f,
	0x6c, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73,
	0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e,
	0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x62,
	0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x8e, 0x04, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09,
	0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52,
	0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f,
	0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x70,
	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d,
	0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x6f, 0x6f, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72,
	0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69,
	0x64, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x75, 0x64,
	0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69,
	0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e,
	0x12, 0x31, 0x0a, 0x0b, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x44, 0x65, 0x70,
	0x6c, 0x6f, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x54,
	0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x76, 0x5f, 0x74, 0x69,
	0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x44, 0x65, 0x76, 0x54,
	0x69, 0x65, 0x72, 0x12, 0x36, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74,
	0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x52,
	0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28,
	0x04, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x79, 0x49, 0x64, 0x12, 0x2c, 0x0a,
	0x12, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x70, 0x72, 0x69, 0x6d, 0x61,
	0x72, 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70,
	0x6f, 0x72, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12,
	0x2c, 0x0a, 0x12, 0x78, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x70, 0x6c,
	0x6f, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x78, 0x61, 0x63,
	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x49, 0x64, 0x12, 0x29, 0x0a,
	0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52,
	0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0x51, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x0e, 0x0a,
	0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2c, 0x0a,
	0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x64, 0x0a, 0x18, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x61, 0x70,
	0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72,
	0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65,
	0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65,
	0x71, 0x22, 0x6a, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1f,
	0x0a, 0x0b, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x0a, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x49, 0x64, 0x12,
	0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x6a, 0x0a,
	0x1a, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x12, 0x21, 0x0a, 0x0c, 0x73,
	0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x04, 0x52, 0x0b, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x49, 0x64, 0x73, 0x12, 0x29,
	0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71,
	0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0xf0, 0x01, 0x0a, 0x1b, 0x42, 0x61,
	0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x61,
	0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4e, 0x0a, 0x09, 0x73, 0x6e, 0x61,
	0x70, 0x73, 0x68, 0x6f, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x63,
	0x6f, 0x72, 0x65, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09,
	0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73,
	0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e,
	0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x62,
	0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x1a, 0x53, 0x0a, 0x0e, 0x53, 0x6e, 0x61, 0x70, 0x73,
	0x68, 0x6f, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2b, 0x0a, 0x05, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x72,
	0x65, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f,
	0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xf4, 0x01, 0x0a,
	0x0f, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71,
	0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12,
	0x3d, 0x0a, 0x0e, 0x6e, 0x65, 0x77, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74,
	0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x52,
	0x0d, 0x6e, 0x65, 0x77, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x24,
	0x0a, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x69, 0x6e,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x63, 0x61,
	0x6c, 0x65, 0x49, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x73, 0x63,
	0x61, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x53,
	0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x12, 0x29, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65,
	0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x62, 0x61,
	0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65,
	0x52, 0x65, 0x71, 0x22, 0x40, 0x0a, 0x10, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x43, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f,
	0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61,
	0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0xd2, 0x02, 0x0a, 0x11, 0x43, 0x61, 0x6c, 0x63, 0x43, 0x6c,
	0x75, 0x73, 0x74, 0x65, 0x72, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x74,
	0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08,
	0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x70, 0x72,
	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6c, 0x6f, 0x75, 0x64,
	0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69,
	0x64, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x67, 0x69, 0x6f,
	0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65,
	0x67, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x0b, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x5f, 0x74,
	0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x72, 0x65,
	0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x64, 0x65, 0x70,
	0x6c, 0x6f, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x36, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f,
	0x6e, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f,
	0x72, 0x65, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e,
	0x65, 0x6e, 0x74, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12,
	0x29, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65,
	0x71, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0xc4, 0x02, 0x0a, 0x12, 0x43,
	0x61, 0x6c, 0x63, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x46, 0x65, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x3c, 0x0a, 0x05, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x26, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x61, 0x6c, 0x63, 0x43, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x46, 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f,
	0x6e, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x73, 0x74, 0x52, 0x05, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x12,
	0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x1a, 0xc1, 0x01,
	0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x73, 0x74, 0x12,
	0x3a, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43,
	0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x63, 0x6f,
	0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63,
	0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x07, 0x63, 0x6f,
	0x6d, 0x70, 0x75, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x07, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12,
	0x1f, 0x0a, 0x0b, 0x72, 0x61, 0x77, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x18, 0x0b,
	0x20, 0x01, 0x28, 0x01, 0x52, 0x0a, 0x72, 0x61, 0x77, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65,
	0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x61, 0x77, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18,
	0x0c, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a, 0x72, 0x61, 0x77, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67,
	0x65, 0x22, 0xbe, 0x02, 0x0a, 0x0d, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x46, 0x69, 0x6c,
	0x74, 0x65, 0x72, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f,
	0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x12, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
	0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65,
	0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x08, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x12, 0x3e, 0x0a, 0x10, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64,
	0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0e,
	0x32, 0x13, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0f, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
	0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x04, 0x52, 0x09, 0x74, 0x65, 0x6e, 0x61,
	0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
	0x5f, 0x69, 0x64, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x49, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0a, 0x63, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x1d, 0x0a, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74,
	0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x65,
	0x74, 0x65, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74,
	0x65, 0x64, 0x22, 0xd1, 0x01, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, 0x2b, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6c,
	0x75, 0x73, 0x74, 0x65, 0x72, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c,
	0x74, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x05, 0x70, 0x61, 0x67, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x72, 0x48,
	0x00, 0x52, 0x05, 0x70, 0x61, 0x67, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x06, 0x73,
	0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x62, 0x61,
	0x73, 0x65, 0x2e, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x01, 0x52, 0x06, 0x73, 0x6f, 0x72,
	0x74, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72,
	0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65,
	0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65,
	0x71, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x72, 0x42, 0x09, 0x0a, 0x07, 0x5f,
	0x73, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x22, 0xfe, 0x01, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x40, 0x0a, 0x08, 0x63,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e,
	0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e,
	0x74, 0x72, 0x79, 0x52, 0x08, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x12, 0x2e, 0x0a,
	0x13, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x11, 0x6f, 0x72, 0x64, 0x65,
	0x72, 0x65, 0x64, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x2c, 0x0a,
	0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x1a, 0x4a, 0x0a, 0x0d, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
	0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x23,
	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e,
	0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x05, 0x76, 0x61,
	0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x6a, 0x0a, 0x10, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, 0x2b, 0x0a, 0x06, 0x66,
	0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f,
	0x72, 0x65, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72,
	0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65,
	0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x62, 0x61,
	0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65,
	0x52, 0x65, 0x71, 0x22, 0x57, 0x0a, 0x11, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2c,
	0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0xe0, 0x01, 0x0a,
	0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44,
	0x65, 0x70, 0x6c, 0x6f, 0x79, 0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x70, 0x72,
	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
	0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x16,
	0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x03, 0x61, 0x77, 0x73, 0x18, 0x0b, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x41, 0x77, 0x73, 0x58, 0x41,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x61,
	0x6d, 0x73, 0x48, 0x00, 0x52, 0x03, 0x61, 0x77, 0x73, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x08,
	0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07,
	0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x61, 0x77, 0x73, 0x22,
	0x76, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x12, 0x78,
	0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x5f, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x78, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73,
	0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e,
	0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x62,
	0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x37, 0x0a, 0x14, 0x58, 0x41, 0x63, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12,
	0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01,
	0x20, 0x03, 0x28, 0x04, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x73,
	0x22, 0x76, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
	0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x52, 0x65, 0x71, 0x12, 0x32, 0x0a, 0x06, 0x66, 0x69, 0x6c,
	0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x63, 0x6f, 0x72, 0x65,
	0x2e, 0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x46,
	0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x29, 0x0a,
	0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52,
	0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0x87, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73,
	0x74, 0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x52,
	0x65, 0x73, 0x70, 0x12, 0x3f, 0x0a, 0x10, 0x78, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
	0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e,
	0x63, 0x6f, 0x72, 0x65, 0x2e, 0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70,
	0x6c, 0x6f, 0x79, 0x52, 0x0f, 0x78, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70,
	0x6c, 0x6f, 0x79, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73,
	0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e,
	0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x22, 0x72, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x58, 0x41, 0x63, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x52, 0x65, 0x71, 0x12, 0x2c, 0x0a,
	0x12, 0x78, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79,
	0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x78, 0x61, 0x63, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x08, 0x62,
	0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d,
	0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62,
	0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0x48, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18,
	0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61,
	0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x22, 0x98, 0x01, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x2b, 0x0a, 0x07, 0x70, 0x65, 0x65,
	0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6f, 0x72,
	0x65, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x52, 0x07, 0x70,
	0x65, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x28, 0x0a, 0x10, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74,
	0x6f, 0x72, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04,
	0x52, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64,
	0x12, 0x29, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52,
	0x65, 0x71, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0x64, 0x0a, 0x15, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x5f,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x70, 0x65, 0x65, 0x72, 0x69, 0x6e,
	0x67, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70,
	0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42,
	0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x22, 0xb1, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x65,
	0x65, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09,
	0x70, 0x65, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x6f,
	0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
	0x12, 0x28, 0x0a, 0x10, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x75, 0x73, 0x65,
	0x72, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x6f, 0x70, 0x65, 0x72,
	0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x08, 0x62, 0x61,
	0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e,
	0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62, 0x61,
	0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0x45, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c,
	0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x83, 0x02, 0x0a,
	0x11, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x46, 0x69, 0x6c, 0x74,
	0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76,
	0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x75,
	0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x67,
	0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x0b, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x08,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x18,
	0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65,
	0x72, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x65, 0x73, 0x12, 0x2c, 0x0a, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28,
	0x0e, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x50, 0x65, 0x65, 0x72, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73,
	0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18,
	0x07, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64,
	0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x65, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x64, 0x73,
	0x18, 0x08, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x49,
	0x64, 0x73, 0x22, 0xd8, 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x2f, 0x0a, 0x06, 0x66, 0x69, 0x6c,
	0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6f, 0x72, 0x65,
	0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x46, 0x69, 0x6c, 0x74,
	0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x05, 0x70, 0x61,
	0x67, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x62, 0x61, 0x73, 0x65,
	0x2e, 0x50, 0x61, 0x67, 0x65, 0x72, 0x48, 0x00, 0x52, 0x05, 0x70, 0x61, 0x67, 0x65, 0x72, 0x88,
	0x01, 0x01, 0x12, 0x29, 0x0a, 0x06, 0x73, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x72,
	0x48, 0x01, 0x52, 0x06, 0x73, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a,
	0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52,
	0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x70, 0x61, 0x67,
	0x65, 0x72, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x22, 0x79, 0x0a,
	0x13, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x34, 0x0a, 0x0c, 0x70, 0x65, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x5f,
	0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6f, 0x72,
	0x65, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x52, 0x0b, 0x70,
	0x65, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61,
	0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e,
	0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08,
	0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x8d, 0x01, 0x0a, 0x1a, 0x4c, 0x69, 0x73,
	0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x49, 0x44, 0x52, 0x4f, 0x66, 0x50, 0x72, 0x6f,
	0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65,
	0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x70, 0x72, 0x6f,
	0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f,
	0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x29, 0x0a,
	0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52,
	0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0xa3, 0x01, 0x0a, 0x1b, 0x4c, 0x69, 0x73,
	0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x49, 0x44, 0x52, 0x4f, 0x66, 0x50, 0x72, 0x6f,
	0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x5f, 0x63, 0x69, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
	0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x69, 0x64, 0x72, 0x12, 0x33, 0x0a, 0x0c, 0x72,
	0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x69, 0x64, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43,
	0x49, 0x44, 0x52, 0x52, 0x0b, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x69, 0x64, 0x72, 0x73,
	0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x9a,
	0x01, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x43, 0x6f, 0x6e, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x5f, 0x74,
	0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x63, 0x6f, 0x72, 0x65,
	0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x6e, 0x54, 0x79, 0x70, 0x65,
	0x12, 0x29, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52,
	0x65, 0x71, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0x45, 0x0a, 0x15, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73,
	0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e,
	0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x22, 0xc5, 0x03, 0x0a, 0x11, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x6c,
	0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x63, 0x6b,
	0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x62, 0x61, 0x63,
	0x6b, 0x75, 0x70, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f,
	0x72, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52,
	0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12,
	0x2a, 0x0a, 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
	0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0d, 0x72, 0x65, 0x70, 0x6c, 0x69,
	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x72,
	0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x88, 0x01,
	0x01, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x12, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64,
	0x12, 0x36, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0e,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x52, 0x0a, 0x63, 0x6f,
	0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74,
	0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x29, 0x0a, 0x08,
	0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07,
	0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x72, 0x65, 0x70, 0x6c,
	0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x72,
	0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x80, 0x01, 0x0a, 0x12, 0x52,
	0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x49, 0x64,
	0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12,
	0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0xbd, 0x01,
	0x0a, 0x0c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x2e,
	0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0e,
	0x32, 0x12, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x12, 0x3d,
	0x0a, 0x10, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
	0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0f, 0x65, 0x78,
	0x63, 0x6c, 0x75, 0x64, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x12, 0x1d, 0x0a,
	0x0a, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28,
	0x04, 0x52, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b,
	0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28,
	0x04, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x67, 0x0a,
	0x0e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x12,
	0x2a, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x12, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x46, 0x69, 0x6c,
	0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x08, 0x62,
	0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d,
	0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62,
	0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0x67, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61,
	0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x26, 0x0a, 0x07, 0x62, 0x61, 0x63,
	0x6b, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6f, 0x72,
	0x65, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x07, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70,
	0x73, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22,
	0x63, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x4f, 0x66,
	0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c,
	0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09,
	0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x08, 0x62, 0x61, 0x73,
	0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x62,
	0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62, 0x61, 0x73,
	0x65, 0x52, 0x65, 0x71, 0x22, 0x70, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x63, 0x6b,
	0x75, 0x70, 0x73, 0x4f, 0x66, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70,
	0x12, 0x26, 0x0a, 0x07, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52,
	0x07, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65,
	0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62,
	0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x62, 0x61,
	0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x95, 0x04, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12,
	0x2a, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e,
	0x63, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x70,
	0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69,
	0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79,
	0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x49, 0x0a, 0x14, 0x73, 0x65, 0x63,
	0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74,
	0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x52,
	0x13, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e,
	0x65, 0x6e, 0x74, 0x73, 0x12, 0x45, 0x0a, 0x1f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72,
	0x79, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x70,
	0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1c, 0x73,
	0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52,
	0x6f, 0x6f, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x38, 0x0a, 0x18, 0x73,
	0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x73,
	0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52,
	0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x16, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61,
	0x72, 0x79, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79,
	0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73,
	0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x08, 0x20,
	0x01, 0x28, 0x05, 0x52, 0x0d, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x50, 0x6f,
	0x72, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x79, 0x5f,
	0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x42, 0x79, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x72,
	0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x11, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18,
	0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61,
	0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0x55,
	0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f,
	0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61,
	0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0xc3, 0x01, 0x0a, 0x0a, 0x4d, 0x65, 0x61, 0x73, 0x75, 0x72,
	0x65, 0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69,
	0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
	0x49, 0x64, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x27,
	0x0a, 0x0f, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65,
	0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x65, 0x61, 0x73, 0x75,
	0x72, 0x65, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x0e, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x12, 0x29, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x18, 0xff, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52,
	0x65, 0x71, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x22, 0x3b, 0x0a, 0x0b, 0x4d,
	0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61,
	0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e,
	0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08,
	0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x36, 0x0a, 0x09, 0x53, 0x61, 0x6d, 0x70,
	0x6c, 0x65, 0x52, 0x65, 0x71, 0x12, 0x29, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65,
	0x71, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e,
	0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71,
	0x22, 0x3a, 0x0a, 0x0a, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c,
	0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2a, 0x74, 0x0a, 0x0a,
	0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x45,
	0x50, 0x4c, 0x4f, 0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43,
	0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x45, 0x50, 0x4c, 0x4f,
	0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x44, 0x45, 0x44, 0x49, 0x43, 0x41, 0x54, 0x45, 0x44,
	0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x5f, 0x54, 0x59, 0x50,
	0x45, 0x5f, 0x53, 0x48, 0x41, 0x52, 0x45, 0x44, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x45,
	0x50, 0x4c, 0x4f, 0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x48, 0x59, 0x42, 0x52, 0x49, 0x44,
	0x10, 0x03, 0x2a, 0xae, 0x01, 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74,
	0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e,
	0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
	0x45, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e,
	0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x49, 0x44, 0x42, 0x10, 0x01, 0x12, 0x17, 0x0a,
	0x13, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f,
	0x54, 0x49, 0x4b, 0x56, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e,
	0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x49, 0x46, 0x4c, 0x41, 0x53, 0x48,
	0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f,
	0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x44, 0x10, 0x04, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x4d,
	0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x49, 0x43, 0x44,
	0x43, 0x10, 0x05, 0x2a, 0xda, 0x01, 0x0a, 0x07, 0x53, 0x4b, 0x55, 0x54, 0x79, 0x70, 0x65, 0x12,
	0x18, 0x0a, 0x14, 0x53, 0x4b, 0x55, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50,
	0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x4b, 0x55,
	0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12,
	0x53, 0x4b, 0x55, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x44, 0x49, 0x53, 0x4b, 0x5f, 0x49, 0x4f,
	0x50, 0x53, 0x10, 0x15, 0x12, 0x1c, 0x0a, 0x18, 0x53, 0x4b, 0x55, 0x5f, 0x54, 0x59, 0x50, 0x45,
	0x5f, 0x44, 0x49, 0x53, 0x4b, 0x5f, 0x54, 0x48, 0x52, 0x4f, 0x55, 0x47, 0x48, 0x50, 0x55, 0x54,
	0x10, 0x16, 0x12, 0x19, 0x0a, 0x15, 0x53, 0x4b, 0x55, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x44,
	0x49, 0x53, 0x4b, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x41, 0x47, 0x45, 0x10, 0x17, 0x12, 0x1c, 0x0a,
	0x18, 0x53, 0x4b, 0x55, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52,
	0x4b, 0x5f, 0x54, 0x52, 0x41, 0x46, 0x46, 0x49, 0x43, 0x10, 0x1f, 0x12, 0x1b, 0x0a, 0x17, 0x53,
	0x4b, 0x55, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x5f, 0x53,
	0x54, 0x4f, 0x52, 0x41, 0x47, 0x45, 0x10, 0x20, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x4b, 0x55, 0x5f,
	0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x49, 0x43, 0x44, 0x43, 0x5f, 0x54, 0x43, 0x55, 0x10, 0x29,
	0x2a, 0x83, 0x01, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x12, 0x1e, 0x0a, 0x1a, 0x50, 0x52, 0x4f, 0x46, 0x49, 0x4c, 0x45, 0x5f, 0x53, 0x54,
	0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
	0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x52, 0x4f, 0x46, 0x49, 0x4c, 0x45, 0x5f, 0x53, 0x54,
	0x41, 0x54, 0x55, 0x53, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x1b, 0x0a,
	0x17, 0x50, 0x52, 0x4f, 0x46, 0x49, 0x4c, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f,
	0x49, 0x4e, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52,
	0x4f, 0x46, 0x49, 0x4c, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x44, 0x45, 0x4c,
	0x45, 0x54, 0x45, 0x44, 0x10, 0x03, 0x2a, 0x89, 0x01, 0x0a, 0x15, 0x43, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65,
	0x12, 0x27, 0x0a, 0x23, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x43, 0x4f, 0x4e, 0x4e,
	0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50,
	0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x23, 0x0a, 0x1f, 0x43, 0x4c, 0x55,
	0x53, 0x54, 0x45, 0x52, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
	0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, 0x22,
	0x0a, 0x1e, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43,
	0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43,
	0x10, 0x02, 0x2a, 0xbd, 0x02, 0x0a, 0x0d, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f,
	0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
	0x45, 0x44, 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f,
	0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x49, 0x4e, 0x49, 0x54, 0x49, 0x41, 0x4c, 0x49, 0x5a,
	0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52,
	0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x49, 0x4e,
	0x47, 0x10, 0x05, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53,
	0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x4c, 0x41, 0x55, 0x4e, 0x43, 0x48, 0x49, 0x4e, 0x47, 0x10,
	0x0a, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41,
	0x54, 0x55, 0x53, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x0f, 0x12, 0x1a, 0x0a, 0x16,
	0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53,
	0x43, 0x41, 0x4c, 0x49, 0x4e, 0x47, 0x10, 0x14, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x4c, 0x55, 0x53,
	0x54, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x45, 0x43, 0x4f, 0x56,
	0x45, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x19, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x4c, 0x55, 0x53, 0x54,
	0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45,
	0x44, 0x10, 0x1e, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53,
	0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x43, 0x4f, 0x4d, 0x50,
	0x4c, 0x45, 0x54, 0x45, 0x10, 0x23, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45,
	0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x43, 0x4c, 0x45, 0x41, 0x52, 0x45, 0x44,
	0x10, 0x28, 0x2a, 0x85, 0x02, 0x0a, 0x11, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x1a, 0x55, 0x53, 0x45, 0x52,
	0x5f, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f,
	0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x55, 0x53, 0x45, 0x52,
	0x5f, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f,
	0x43, 0x52, 0x45, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x55, 0x53,
	0x45, 0x52, 0x5f, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55,
	0x53, 0x5f, 0x53, 0x43, 0x41, 0x4c, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x21, 0x0a, 0x1d, 0x55,
	0x53, 0x45, 0x52, 0x5f, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54,
	0x55, 0x53, 0x5f, 0x55, 0x50, 0x47, 0x52, 0x41, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x23,
	0x0a, 0x1f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53,
	0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c,
	0x45, 0x10, 0x04, 0x12, 0x22, 0x0a, 0x1e, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x43, 0x4c, 0x55, 0x53,
	0x54, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x45, 0x43, 0x4f, 0x56,
	0x45, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x12, 0x21, 0x0a, 0x1d, 0x55, 0x53, 0x45, 0x52, 0x5f,
	0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x49,
	0x4d, 0x50, 0x4f, 0x52, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x06, 0x2a, 0x62, 0x0a, 0x14, 0x55, 0x73,
	0x65, 0x72, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x53, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x12, 0x23, 0x0a, 0x1f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x43, 0x4c, 0x55, 0x53, 0x54,
	0x45, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x48, 0x45,
	0x41, 0x4c, 0x54, 0x48, 0x59, 0x10, 0x00, 0x12, 0x25, 0x0a, 0x21, 0x55, 0x53, 0x45, 0x52, 0x5f,
	0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x5f, 0x53, 0x54, 0x41, 0x54,
	0x55, 0x53, 0x5f, 0x55, 0x4e, 0x48, 0x45, 0x41, 0x4c, 0x54, 0x48, 0x59, 0x10, 0x01, 0x2a, 0x98,
	0x01, 0x0a, 0x0c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
	0x1d, 0x0a, 0x19, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53,
	0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19,
	0x0a, 0x15, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f,
	0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x42, 0x41, 0x43,
	0x4b, 0x55, 0x50, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49,
	0x4e, 0x47, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x5f, 0x53,
	0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x03, 0x12, 0x19,
	0x0a, 0x15, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f,
	0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x04, 0x2a, 0x9e, 0x01, 0x0a, 0x0d, 0x52, 0x65,
	0x73, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x1a, 0x52,
	0x45, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e,
	0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x52,
	0x45, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x50, 0x45,
	0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x52, 0x45, 0x53, 0x54, 0x4f,
	0x52, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e,
	0x47, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x45, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x53,
	0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x03, 0x12, 0x1a,
	0x0a, 0x16, 0x52, 0x45, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53,
	0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x04, 0x32, 0xc1, 0x10, 0x0a, 0x0b, 0x43,
	0x6f, 0x72, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x4b, 0x0a, 0x10, 0x53, 0x79,
	0x6e, 0x63, 0x49, 0x6e, 0x66, 0x72, 0x61, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x19,
	0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x49, 0x6e, 0x66, 0x72, 0x61, 0x50,
	0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x63, 0x6f, 0x72, 0x65,
	0x2e, 0x53, 0x79, 0x6e, 0x63, 0x49, 0x6e, 0x66, 0x72, 0x61, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x14, 0x52, 0x65, 0x70, 0x6c, 0x61,
	0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x79, 0x59, 0x61, 0x6d, 0x6c, 0x12,
	0x1d, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x50, 0x72,
	0x6f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x79, 0x59, 0x61, 0x6d, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x1e,
	0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x50, 0x72, 0x6f,
	0x66, 0x69, 0x6c, 0x65, 0x42, 0x79, 0x59, 0x61, 0x6d, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00,
	0x12, 0x60, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x66,
	0x69, 0x6c, 0x65, 0x73, 0x34, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x20, 0x2e, 0x63, 0x6f,
	0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69,
	0x6c, 0x65, 0x73, 0x34, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x21, 0x2e,
	0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f,
	0x66, 0x69, 0x6c, 0x65, 0x73, 0x34, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x22, 0x00, 0x12, 0x51, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50,
	0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49,
	0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x16, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x17,
	0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x61, 0x6d, 0x52,
	0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0d, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x16, 0x2e, 0x63, 0x6f, 0x72,
	0x65, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x52,
	0x65, 0x71, 0x1a, 0x17, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a,
	0x0c, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x15, 0x2e,
	0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65,
	0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x49, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x42,
	0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12,
	0x16, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70,
	0x22, 0x00, 0x12, 0x5a, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x1e, 0x2e, 0x63, 0x6f,
	0x72, 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x63, 0x6f,
	0x72, 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x60,
	0x0a, 0x17, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x20, 0x2e, 0x63, 0x6f, 0x72, 0x65,
	0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x21, 0x2e, 0x63, 0x6f,
	0x72, 0x65, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00,
	0x12, 0x3f, 0x0a, 0x0c, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x12, 0x15, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x43, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53,
	0x63, 0x61, 0x6c, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x22,
	0x00, 0x12, 0x45, 0x0a, 0x0e, 0x43, 0x61, 0x6c, 0x63, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x46, 0x65, 0x65, 0x12, 0x17, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x61, 0x6c, 0x63, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x63,
	0x6f, 0x72, 0x65, 0x2e, 0x43, 0x61, 0x6c, 0x63, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x46,
	0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74,
	0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x12, 0x15, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a,
	0x16, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0d, 0x43, 0x6f, 0x75,
	0x6e, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x12, 0x16, 0x2e, 0x63, 0x6f, 0x72,
	0x65, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x52,
	0x65, 0x71, 0x1a, 0x17, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x57, 0x0a,
	0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44,
	0x65, 0x70, 0x6c, 0x6f, 0x79, 0x12, 0x1d, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f,
	0x79, 0x52, 0x65, 0x71, 0x1a, 0x1e, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79,
	0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x58, 0x41,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x12, 0x1b, 0x2e, 0x63,
	0x6f, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
	0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x63, 0x6f, 0x72, 0x65,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70,
	0x6c, 0x6f, 0x79, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x14, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x58, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f,
	0x79, 0x12, 0x1d, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x58,
	0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x52, 0x65, 0x71,
	0x1a, 0x1e, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x58, 0x41,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x52, 0x65, 0x73, 0x70,
	0x22, 0x00, 0x12, 0x60, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e,
	0x43, 0x49, 0x44, 0x52, 0x4f, 0x66, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x20, 0x2e,
	0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43,
	0x49, 0x44, 0x52, 0x4f, 0x66, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x1a,
	0x21, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f,
	0x6e, 0x43, 0x49, 0x44, 0x52, 0x4f, 0x66, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65,
	0x73, 0x70, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c,
	0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x12, 0x1a, 0x2e, 0x63, 0x6f, 0x72, 0x65,
	0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f,
	0x6e, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x52, 0x65,
	0x73, 0x70, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x63, 0x6f, 0x72, 0x65,
	0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65,
	0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x63, 0x6f, 0x72, 0x65,
	0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65,
	0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x12, 0x18, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65,
	0x71, 0x1a, 0x19, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x45,
	0x0a, 0x0e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x12, 0x17, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x63, 0x6f, 0x72, 0x65,
	0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52,
	0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x63,
	0x6b, 0x75, 0x70, 0x73, 0x12, 0x14, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x63, 0x6f, 0x72,
	0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75,
	0x70, 0x73, 0x4f, 0x66, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1d, 0x2e, 0x63, 0x6f,
	0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x4f, 0x66,
	0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1e, 0x2e, 0x63, 0x6f, 0x72,
	0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x4f, 0x66, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x1a, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52,
	0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e,
	0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69,
	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x30, 0x0a, 0x07,
	0x4d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x12, 0x10, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4d,
	0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x11, 0x2e, 0x63, 0x6f, 0x72, 0x65,
	0x2e, 0x4d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x42, 0x2b,
	0x5a, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x74, 0x69, 0x64,
	0x62, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x69, 0x64, 0x6c, 0x2f, 0x70, 0x62, 0x67, 0x65, 0x6e,
	0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x33,
}

var (
	file_core_core_proto_rawDescOnce sync.Once
	file_core_core_proto_rawDescData = file_core_core_proto_rawDesc
)

func file_core_core_proto_rawDescGZIP() []byte {
	file_core_core_proto_rawDescOnce.Do(func() {
		file_core_core_proto_rawDescData = protoimpl.X.CompressGZIP(file_core_core_proto_rawDescData)
	})
	return file_core_core_proto_rawDescData
}

var file_core_core_proto_enumTypes = make([]protoimpl.EnumInfo, 22)
var file_core_core_proto_msgTypes = make([]protoimpl.MessageInfo, 88)
var file_core_core_proto_goTypes = []interface{}{
	(DeployType)(0),                                // 0: core.DeployType
	(ComponentType)(0),                             // 1: core.ComponentType
	(SKUType)(0),                                   // 2: core.SKUType
	(ProfileStatus)(0),                             // 3: core.ProfileStatus
	(ClusterConnectionType)(0),                     // 4: core.ClusterConnectionType
	(ClusterStatus)(0),                             // 5: core.ClusterStatus
	(UserClusterStatus)(0),                         // 6: core.UserClusterStatus
	(UserClusterSubStatus)(0),                      // 7: core.UserClusterSubStatus
	(BackupStatus)(0),                              // 8: core.BackupStatus
	(RestoreStatus)(0),                             // 9: core.RestoreStatus
	(CloudProvider_Status)(0),                      // 10: core.CloudProvider.Status
	(Region_Status)(0),                             // 11: core.Region.Status
	(ProfileVersion_Status)(0),                     // 12: core.ProfileVersion.Status
	(XAccountDeploy_Status)(0),                     // 13: core.XAccountDeploy.Status
	(NetworkPeer_Type)(0),                          // 14: core.NetworkPeer.Type
	(NetworkPeer_Status)(0),                        // 15: core.NetworkPeer.Status
	(Backup_Type)(0),                               // 16: core.Backup.Type
	(Backup_Method)(0),                             // 17: core.Backup.Method
	(Replication_Type)(0),                          // 18: core.Replication.Type
	(Replication_Status)(0),                        // 19: core.Replication.Status
	(Replication_DetachType)(0),                    // 20: core.Replication.DetachType
	(IamRoleUsage_ServiceName)(0),                  // 21: core.IamRoleUsage.ServiceName
	(*CloudProvider)(nil),                          // 22: core.CloudProvider
	(*Region)(nil),                                 // 23: core.Region
	(*ProfileVersion)(nil),                         // 24: core.ProfileVersion
	(*ClusterComponent)(nil),                       // 25: core.ClusterComponent
	(*NodeProfile4Tenant)(nil),                     // 26: core.NodeProfile4Tenant
	(*ClusterConnection)(nil),                      // 27: core.ClusterConnection
	(*Cluster)(nil),                                // 28: core.Cluster
	(*ClusterSnapshot)(nil),                        // 29: core.ClusterSnapshot
	(*AwsXAccountDeployParams)(nil),                // 30: core.AwsXAccountDeployParams
	(*XAccountDeploy)(nil),                         // 31: core.XAccountDeploy
	(*RegionCIDR)(nil),                             // 32: core.RegionCIDR
	(*NetworkPeerInfo4Aws)(nil),                    // 33: core.NetworkPeerInfo4Aws
	(*NetworkPeerInfo4Gcp)(nil),                    // 34: core.NetworkPeerInfo4Gcp
	(*NetworkPeer)(nil),                            // 35: core.NetworkPeer
	(*Backup)(nil),                                 // 36: core.Backup
	(*Replication)(nil),                            // 37: core.Replication
	(*IamRoleUsage)(nil),                           // 38: core.IamRoleUsage
	(*IamRole)(nil),                                // 39: core.IamRole
	(*SyncInfraProfileReq)(nil),                    // 40: core.SyncInfraProfileReq
	(*SyncInfraProfileResp)(nil),                   // 41: core.SyncInfraProfileResp
	(*ReplaceProfileByYamlReq)(nil),                // 42: core.ReplaceProfileByYamlReq
	(*ReplaceProfileByYamlResp)(nil),               // 43: core.ReplaceProfileByYamlResp
	(*ListNodeProfiles4TenantReq)(nil),             // 44: core.ListNodeProfiles4TenantReq
	(*ListNodeProfiles4TenantResp)(nil),            // 45: core.ListNodeProfiles4TenantResp
	(*ListCloudProvidersReq)(nil),                  // 46: core.ListCloudProvidersReq
	(*ListCloudProvidersResp)(nil),                 // 47: core.ListCloudProvidersResp
	(*CreateIamRoleReq)(nil),                       // 48: core.CreateIamRoleReq
	(*CreateIamRoleResp)(nil),                      // 49: core.CreateIamRoleResp
	(*DeleteIamRoleReq)(nil),                       // 50: core.DeleteIamRoleReq
	(*DeleteIamRoleResp)(nil),                      // 51: core.DeleteIamRoleResp
	(*IamRoleFilter)(nil),                          // 52: core.IamRoleFilter
	(*ListIamRolesReq)(nil),                        // 53: core.ListIamRolesReq
	(*ListIamRolesResp)(nil),                       // 54: core.ListIamRolesResp
	(*CreateClusterReq)(nil),                       // 55: core.CreateClusterReq
	(*CreateClusterResp)(nil),                      // 56: core.CreateClusterResp
	(*CreateClusterSnapshotReq)(nil),               // 57: core.CreateClusterSnapshotReq
	(*CreateClusterSnapshotResp)(nil),              // 58: core.CreateClusterSnapshotResp
	(*BatchGetClusterSnapshotReq)(nil),             // 59: core.BatchGetClusterSnapshotReq
	(*BatchGetClusterSnapshotResp)(nil),            // 60: core.BatchGetClusterSnapshotResp
	(*ScaleClusterReq)(nil),                        // 61: core.ScaleClusterReq
	(*ScaleClusterResp)(nil),                       // 62: core.ScaleClusterResp
	(*CalcClusterFeeReq)(nil),                      // 63: core.CalcClusterFeeReq
	(*CalcClusterFeeResp)(nil),                     // 64: core.CalcClusterFeeResp
	(*ClusterFilter)(nil),                          // 65: core.ClusterFilter
	(*ListClustersReq)(nil),                        // 66: core.ListClustersReq
	(*ListClustersResp)(nil),                       // 67: core.ListClustersResp
	(*CountClustersReq)(nil),                       // 68: core.CountClustersReq
	(*CountClustersResp)(nil),                      // 69: core.CountClustersResp
	(*CreateXAccountDeployReq)(nil),                // 70: core.CreateXAccountDeployReq
	(*CreateXAccountDeployResp)(nil),               // 71: core.CreateXAccountDeployResp
	(*XAccountDeployFilter)(nil),                   // 72: core.XAccountDeployFilter
	(*ListXAccountDeployReq)(nil),                  // 73: core.ListXAccountDeployReq
	(*ListXAccountDeployResp)(nil),                 // 74: core.ListXAccountDeployResp
	(*DeleteXAccountDeployReq)(nil),                // 75: core.DeleteXAccountDeployReq
	(*DeleteXAccountDeployResp)(nil),               // 76: core.DeleteXAccountDeployResp
	(*CreateNetworkPeerReq)(nil),                   // 77: core.CreateNetworkPeerReq
	(*CreateNetworkPeerResp)(nil),                  // 78: core.CreateNetworkPeerResp
	(*DeleteNetworkPeerReq)(nil),                   // 79: core.DeleteNetworkPeerReq
	(*DeleteNetworkPeerResp)(nil),                  // 80: core.DeleteNetworkPeerResp
	(*NetworkPeerFilter)(nil),                      // 81: core.NetworkPeerFilter
	(*ListNetworkPeerReq)(nil),                     // 82: core.ListNetworkPeerReq
	(*ListNetworkPeerResp)(nil),                    // 83: core.ListNetworkPeerResp
	(*ListRegionCIDROfProjectReq)(nil),             // 84: core.ListRegionCIDROfProjectReq
	(*ListRegionCIDROfProjectResp)(nil),            // 85: core.ListRegionCIDROfProjectResp
	(*CreateClusterConnReq)(nil),                   // 86: core.CreateClusterConnReq
	(*CreateClusterConnResp)(nil),                  // 87: core.CreateClusterConnResp
	(*RestoreClusterReq)(nil),                      // 88: core.RestoreClusterReq
	(*RestoreClusterResp)(nil),                     // 89: core.RestoreClusterResp
	(*BackupFilter)(nil),                           // 90: core.BackupFilter
	(*ListBackupsReq)(nil),                         // 91: core.ListBackupsReq
	(*ListBackupsResp)(nil),                        // 92: core.ListBackupsResp
	(*ListBackupsOfClusterReq)(nil),                // 93: core.ListBackupsOfClusterReq
	(*ListBackupsOfClusterResp)(nil),               // 94: core.ListBackupsOfClusterResp
	(*CreateReplicationReq)(nil),                   // 95: core.CreateReplicationReq
	(*CreateReplicationResp)(nil),                  // 96: core.CreateReplicationResp
	(*MeasureReq)(nil),                             // 97: core.MeasureReq
	(*MeasureResp)(nil),                            // 98: core.MeasureResp
	(*SampleReq)(nil),                              // 99: core.SampleReq
	(*SampleResp)(nil),                             // 100: core.SampleResp
	nil,                                            // 101: core.CloudProvider.Name2regionEntry
	(*ReplaceProfileByYamlReq_ResourceDetail)(nil), // 102: core.ReplaceProfileByYamlReq.ResourceDetail
	(*ReplaceProfileByYamlReq_PDNode)(nil),         // 103: core.ReplaceProfileByYamlReq.PDNode
	(*ReplaceProfileByYamlReq_SKU)(nil),            // 104: core.ReplaceProfileByYamlReq.SKU
	(*ReplaceProfileByYamlReq_Node)(nil),           // 105: core.ReplaceProfileByYamlReq.Node
	nil,                                            // 106: core.ListCloudProvidersResp.Name2cloudProviderEntry
	nil,                                            // 107: core.BatchGetClusterSnapshotResp.SnapshotsEntry
	(*CalcClusterFeeResp_ComponentCost)(nil),       // 108: core.CalcClusterFeeResp.ComponentCost
	nil,                                            // 109: core.ListClustersResp.ClustersEntry
	(*base.BaseReq)(nil),                           // 110: base.BaseReq
	(*base.BaseResp)(nil),                          // 111: base.BaseResp
	(*base.Pager)(nil),                             // 112: base.Pager
	(*base.Sorter)(nil),                            // 113: base.Sorter
}
var file_core_core_proto_depIdxs = []int32{
	10,  // 0: core.CloudProvider.status:type_name -> core.CloudProvider.Status
	101, // 1: core.CloudProvider.name2region:type_name -> core.CloudProvider.Name2regionEntry
	11,  // 2: core.Region.status:type_name -> core.Region.Status
	12,  // 3: core.ProfileVersion.status:type_name -> core.ProfileVersion.Status
	1,   // 4: core.ClusterComponent.component_type:type_name -> core.ComponentType
	1,   // 5: core.NodeProfile4Tenant.component_type:type_name -> core.ComponentType
	0,   // 6: core.NodeProfile4Tenant.deploy_type:type_name -> core.DeployType
	4,   // 7: core.ClusterConnection.type:type_name -> core.ClusterConnectionType
	25,  // 8: core.Cluster.components:type_name -> core.ClusterComponent
	5,   // 9: core.Cluster.status:type_name -> core.ClusterStatus
	6,   // 10: core.Cluster.user_status:type_name -> core.UserClusterStatus
	7,   // 11: core.Cluster.user_sub_status:type_name -> core.UserClusterSubStatus
	27,  // 12: core.Cluster.connections:type_name -> core.ClusterConnection
	25,  // 13: core.ClusterSnapshot.components:type_name -> core.ClusterComponent
	13,  // 14: core.XAccountDeploy.status:type_name -> core.XAccountDeploy.Status
	30,  // 15: core.XAccountDeploy.aws:type_name -> core.AwsXAccountDeployParams
	14,  // 16: core.NetworkPeer.type:type_name -> core.NetworkPeer.Type
	15,  // 17: core.NetworkPeer.status:type_name -> core.NetworkPeer.Status
	33,  // 18: core.NetworkPeer.aws:type_name -> core.NetworkPeerInfo4Aws
	34,  // 19: core.NetworkPeer.gcp:type_name -> core.NetworkPeerInfo4Gcp
	16,  // 20: core.Backup.type:type_name -> core.Backup.Type
	8,   // 21: core.Backup.status:type_name -> core.BackupStatus
	17,  // 22: core.Backup.method:type_name -> core.Backup.Method
	25,  // 23: core.Backup.components:type_name -> core.ClusterComponent
	21,  // 24: core.IamRoleUsage.service_name:type_name -> core.IamRoleUsage.ServiceName
	38,  // 25: core.IamRole.usages:type_name -> core.IamRoleUsage
	110, // 26: core.SyncInfraProfileReq.base_req:type_name -> base.BaseReq
	111, // 27: core.SyncInfraProfileResp.base_resp:type_name -> base.BaseResp
	104, // 28: core.ReplaceProfileByYamlReq.skus:type_name -> core.ReplaceProfileByYamlReq.SKU
	105, // 29: core.ReplaceProfileByYamlReq.nodes:type_name -> core.ReplaceProfileByYamlReq.Node
	110, // 30: core.ReplaceProfileByYamlReq.base_req:type_name -> base.BaseReq
	111, // 31: core.ReplaceProfileByYamlResp.base_resp:type_name -> base.BaseResp
	0,   // 32: core.ListNodeProfiles4TenantReq.deploy_type:type_name -> core.DeployType
	110, // 33: core.ListNodeProfiles4TenantReq.base_req:type_name -> base.BaseReq
	26,  // 34: core.ListNodeProfiles4TenantResp.profiles:type_name -> core.NodeProfile4Tenant
	111, // 35: core.ListNodeProfiles4TenantResp.base_resp:type_name -> base.BaseResp
	0,   // 36: core.ListCloudProvidersReq.deploy_type:type_name -> core.DeployType
	110, // 37: core.ListCloudProvidersReq.base_req:type_name -> base.BaseReq
	106, // 38: core.ListCloudProvidersResp.name2cloud_provider:type_name -> core.ListCloudProvidersResp.Name2cloudProviderEntry
	111, // 39: core.ListCloudProvidersResp.base_resp:type_name -> base.BaseResp
	110, // 40: core.CreateIamRoleReq.base_req:type_name -> base.BaseReq
	111, // 41: core.CreateIamRoleResp.base_resp:type_name -> base.BaseResp
	110, // 42: core.DeleteIamRoleReq.base_req:type_name -> base.BaseReq
	111, // 43: core.DeleteIamRoleResp.base_resp:type_name -> base.BaseResp
	52,  // 44: core.ListIamRolesReq.filter:type_name -> core.IamRoleFilter
	110, // 45: core.ListIamRolesReq.base_req:type_name -> base.BaseReq
	39,  // 46: core.ListIamRolesResp.roles:type_name -> core.IamRole
	111, // 47: core.ListIamRolesResp.base_resp:type_name -> base.BaseResp
	0,   // 48: core.CreateClusterReq.deploy_type:type_name -> core.DeployType
	25,  // 49: core.CreateClusterReq.components:type_name -> core.ClusterComponent
	110, // 50: core.CreateClusterReq.base_req:type_name -> base.BaseReq
	111, // 51: core.CreateClusterResp.base_resp:type_name -> base.BaseResp
	110, // 52: core.CreateClusterSnapshotReq.base_req:type_name -> base.BaseReq
	111, // 53: core.CreateClusterSnapshotResp.base_resp:type_name -> base.BaseResp
	110, // 54: core.BatchGetClusterSnapshotReq.base_req:type_name -> base.BaseReq
	107, // 55: core.BatchGetClusterSnapshotResp.snapshots:type_name -> core.BatchGetClusterSnapshotResp.SnapshotsEntry
	111, // 56: core.BatchGetClusterSnapshotResp.base_resp:type_name -> base.BaseResp
	25,  // 57: core.ScaleClusterReq.new_components:type_name -> core.ClusterComponent
	110, // 58: core.ScaleClusterReq.base_req:type_name -> base.BaseReq
	111, // 59: core.ScaleClusterResp.base_resp:type_name -> base.BaseResp
	0,   // 60: core.CalcClusterFeeReq.deploy_type:type_name -> core.DeployType
	25,  // 61: core.CalcClusterFeeReq.components:type_name -> core.ClusterComponent
	110, // 62: core.CalcClusterFeeReq.base_req:type_name -> base.BaseReq
	108, // 63: core.CalcClusterFeeResp.costs:type_name -> core.CalcClusterFeeResp.ComponentCost
	111, // 64: core.CalcClusterFeeResp.base_resp:type_name -> base.BaseResp
	5,   // 65: core.ClusterFilter.statuses:type_name -> core.ClusterStatus
	5,   // 66: core.ClusterFilter.exclude_statuses:type_name -> core.ClusterStatus
	65,  // 67: core.ListClustersReq.filter:type_name -> core.ClusterFilter
	112, // 68: core.ListClustersReq.pager:type_name -> base.Pager
	113, // 69: core.ListClustersReq.sorter:type_name -> base.Sorter
	110, // 70: core.ListClustersReq.base_req:type_name -> base.BaseReq
	109, // 71: core.ListClustersResp.clusters:type_name -> core.ListClustersResp.ClustersEntry
	111, // 72: core.ListClustersResp.base_resp:type_name -> base.BaseResp
	65,  // 73: core.CountClustersReq.filter:type_name -> core.ClusterFilter
	110, // 74: core.CountClustersReq.base_req:type_name -> base.BaseReq
	111, // 75: core.CountClustersResp.base_resp:type_name -> base.BaseResp
	30,  // 76: core.CreateXAccountDeployReq.aws:type_name -> core.AwsXAccountDeployParams
	110, // 77: core.CreateXAccountDeployReq.base_req:type_name -> base.BaseReq
	111, // 78: core.CreateXAccountDeployResp.base_resp:type_name -> base.BaseResp
	72,  // 79: core.ListXAccountDeployReq.filter:type_name -> core.XAccountDeployFilter
	110, // 80: core.ListXAccountDeployReq.base_req:type_name -> base.BaseReq
	31,  // 81: core.ListXAccountDeployResp.xaccount_deploys:type_name -> core.XAccountDeploy
	111, // 82: core.ListXAccountDeployResp.base_resp:type_name -> base.BaseResp
	110, // 83: core.DeleteXAccountDeployReq.base_req:type_name -> base.BaseReq
	111, // 84: core.DeleteXAccountDeployResp.base_resp:type_name -> base.BaseResp
	35,  // 85: core.CreateNetworkPeerReq.peering:type_name -> core.NetworkPeer
	110, // 86: core.CreateNetworkPeerReq.base_req:type_name -> base.BaseReq
	111, // 87: core.CreateNetworkPeerResp.base_resp:type_name -> base.BaseResp
	110, // 88: core.DeleteNetworkPeerReq.base_req:type_name -> base.BaseReq
	111, // 89: core.DeleteNetworkPeerResp.base_resp:type_name -> base.BaseResp
	15,  // 90: core.NetworkPeerFilter.statuses:type_name -> core.NetworkPeer.Status
	14,  // 91: core.NetworkPeerFilter.types:type_name -> core.NetworkPeer.Type
	81,  // 92: core.ListNetworkPeerReq.filter:type_name -> core.NetworkPeerFilter
	112, // 93: core.ListNetworkPeerReq.pager:type_name -> base.Pager
	113, // 94: core.ListNetworkPeerReq.sorter:type_name -> base.Sorter
	110, // 95: core.ListNetworkPeerReq.base_req:type_name -> base.BaseReq
	35,  // 96: core.ListNetworkPeerResp.peering_list:type_name -> core.NetworkPeer
	111, // 97: core.ListNetworkPeerResp.base_resp:type_name -> base.BaseResp
	110, // 98: core.ListRegionCIDROfProjectReq.base_req:type_name -> base.BaseReq
	32,  // 99: core.ListRegionCIDROfProjectResp.region_cidrs:type_name -> core.RegionCIDR
	111, // 100: core.ListRegionCIDROfProjectResp.base_resp:type_name -> base.BaseResp
	4,   // 101: core.CreateClusterConnReq.conn_type:type_name -> core.ClusterConnectionType
	110, // 102: core.CreateClusterConnReq.base_req:type_name -> base.BaseReq
	111, // 103: core.CreateClusterConnResp.base_resp:type_name -> base.BaseResp
	25,  // 104: core.RestoreClusterReq.components:type_name -> core.ClusterComponent
	110, // 105: core.RestoreClusterReq.base_req:type_name -> base.BaseReq
	111, // 106: core.RestoreClusterResp.base_resp:type_name -> base.BaseResp
	8,   // 107: core.BackupFilter.statuses:type_name -> core.BackupStatus
	8,   // 108: core.BackupFilter.exclude_statuses:type_name -> core.BackupStatus
	90,  // 109: core.ListBackupsReq.filter:type_name -> core.BackupFilter
	110, // 110: core.ListBackupsReq.base_req:type_name -> base.BaseReq
	36,  // 111: core.ListBackupsResp.backups:type_name -> core.Backup
	111, // 112: core.ListBackupsResp.base_resp:type_name -> base.BaseResp
	110, // 113: core.ListBackupsOfClusterReq.base_req:type_name -> base.BaseReq
	36,  // 114: core.ListBackupsOfClusterResp.backups:type_name -> core.Backup
	111, // 115: core.ListBackupsOfClusterResp.base_resp:type_name -> base.BaseResp
	18,  // 116: core.CreateReplicationReq.type:type_name -> core.Replication.Type
	25,  // 117: core.CreateReplicationReq.secondary_components:type_name -> core.ClusterComponent
	110, // 118: core.CreateReplicationReq.base_req:type_name -> base.BaseReq
	111, // 119: core.CreateReplicationResp.base_resp:type_name -> base.BaseResp
	110, // 120: core.MeasureReq.base_req:type_name -> base.BaseReq
	111, // 121: core.MeasureResp.base_resp:type_name -> base.BaseResp
	110, // 122: core.SampleReq.base_req:type_name -> base.BaseReq
	111, // 123: core.SampleResp.base_resp:type_name -> base.BaseResp
	23,  // 124: core.CloudProvider.Name2regionEntry.value:type_name -> core.Region
	0,   // 125: core.ReplaceProfileByYamlReq.ResourceDetail.deploy_type:type_name -> core.DeployType
	2,   // 126: core.ReplaceProfileByYamlReq.SKU.resource_type:type_name -> core.SKUType
	102, // 127: core.ReplaceProfileByYamlReq.SKU.resource_detail:type_name -> core.ReplaceProfileByYamlReq.ResourceDetail
	0,   // 128: core.ReplaceProfileByYamlReq.Node.deploy_type:type_name -> core.DeployType
	1,   // 129: core.ReplaceProfileByYamlReq.Node.component_type:type_name -> core.ComponentType
	103, // 130: core.ReplaceProfileByYamlReq.Node.pd_node:type_name -> core.ReplaceProfileByYamlReq.PDNode
	22,  // 131: core.ListCloudProvidersResp.Name2cloudProviderEntry.value:type_name -> core.CloudProvider
	29,  // 132: core.BatchGetClusterSnapshotResp.SnapshotsEntry.value:type_name -> core.ClusterSnapshot
	1,   // 133: core.CalcClusterFeeResp.ComponentCost.component_type:type_name -> core.ComponentType
	28,  // 134: core.ListClustersResp.ClustersEntry.value:type_name -> core.Cluster
	40,  // 135: core.CoreService.SyncInfraProfile:input_type -> core.SyncInfraProfileReq
	42,  // 136: core.CoreService.ReplaceProfileByYaml:input_type -> core.ReplaceProfileByYamlReq
	44,  // 137: core.CoreService.ListNodeProfiles4Tenant:input_type -> core.ListNodeProfiles4TenantReq
	46,  // 138: core.CoreService.ListCloudProviders:input_type -> core.ListCloudProvidersReq
	48,  // 139: core.CoreService.CreateIamRole:input_type -> core.CreateIamRoleReq
	50,  // 140: core.CoreService.DeleteIamRole:input_type -> core.DeleteIamRoleReq
	53,  // 141: core.CoreService.ListIamRoles:input_type -> core.ListIamRolesReq
	55,  // 142: core.CoreService.CreateCluster:input_type -> core.CreateClusterReq
	57,  // 143: core.CoreService.CreateClusterSnapshot:input_type -> core.CreateClusterSnapshotReq
	59,  // 144: core.CoreService.BatchGetClusterSnapshot:input_type -> core.BatchGetClusterSnapshotReq
	61,  // 145: core.CoreService.ScaleCluster:input_type -> core.ScaleClusterReq
	63,  // 146: core.CoreService.CalcClusterFee:input_type -> core.CalcClusterFeeReq
	66,  // 147: core.CoreService.ListClusters:input_type -> core.ListClustersReq
	68,  // 148: core.CoreService.CountClusters:input_type -> core.CountClustersReq
	70,  // 149: core.CoreService.CreateXAccountDeploy:input_type -> core.CreateXAccountDeployReq
	73,  // 150: core.CoreService.ListXAccountDeploy:input_type -> core.ListXAccountDeployReq
	75,  // 151: core.CoreService.DeleteXAccountDeploy:input_type -> core.DeleteXAccountDeployReq
	84,  // 152: core.CoreService.ListRegionCIDROfProject:input_type -> core.ListRegionCIDROfProjectReq
	86,  // 153: core.CoreService.CreateClusterConn:input_type -> core.CreateClusterConnReq
	77,  // 154: core.CoreService.CreateNetworkPeer:input_type -> core.CreateNetworkPeerReq
	79,  // 155: core.CoreService.DeleteNetworkPeer:input_type -> core.DeleteNetworkPeerReq
	82,  // 156: core.CoreService.ListNetworkPeer:input_type -> core.ListNetworkPeerReq
	88,  // 157: core.CoreService.RestoreCluster:input_type -> core.RestoreClusterReq
	91,  // 158: core.CoreService.ListBackups:input_type -> core.ListBackupsReq
	93,  // 159: core.CoreService.ListBackupsOfCluster:input_type -> core.ListBackupsOfClusterReq
	95,  // 160: core.CoreService.CreateReplication:input_type -> core.CreateReplicationReq
	97,  // 161: core.CoreService.Measure:input_type -> core.MeasureReq
	41,  // 162: core.CoreService.SyncInfraProfile:output_type -> core.SyncInfraProfileResp
	43,  // 163: core.CoreService.ReplaceProfileByYaml:output_type -> core.ReplaceProfileByYamlResp
	45,  // 164: core.CoreService.ListNodeProfiles4Tenant:output_type -> core.ListNodeProfiles4TenantResp
	47,  // 165: core.CoreService.ListCloudProviders:output_type -> core.ListCloudProvidersResp
	49,  // 166: core.CoreService.CreateIamRole:output_type -> core.CreateIamRoleResp
	51,  // 167: core.CoreService.DeleteIamRole:output_type -> core.DeleteIamRoleResp
	54,  // 168: core.CoreService.ListIamRoles:output_type -> core.ListIamRolesResp
	56,  // 169: core.CoreService.CreateCluster:output_type -> core.CreateClusterResp
	58,  // 170: core.CoreService.CreateClusterSnapshot:output_type -> core.CreateClusterSnapshotResp
	60,  // 171: core.CoreService.BatchGetClusterSnapshot:output_type -> core.BatchGetClusterSnapshotResp
	62,  // 172: core.CoreService.ScaleCluster:output_type -> core.ScaleClusterResp
	64,  // 173: core.CoreService.CalcClusterFee:output_type -> core.CalcClusterFeeResp
	67,  // 174: core.CoreService.ListClusters:output_type -> core.ListClustersResp
	69,  // 175: core.CoreService.CountClusters:output_type -> core.CountClustersResp
	71,  // 176: core.CoreService.CreateXAccountDeploy:output_type -> core.CreateXAccountDeployResp
	74,  // 177: core.CoreService.ListXAccountDeploy:output_type -> core.ListXAccountDeployResp
	76,  // 178: core.CoreService.DeleteXAccountDeploy:output_type -> core.DeleteXAccountDeployResp
	85,  // 179: core.CoreService.ListRegionCIDROfProject:output_type -> core.ListRegionCIDROfProjectResp
	87,  // 180: core.CoreService.CreateClusterConn:output_type -> core.CreateClusterConnResp
	78,  // 181: core.CoreService.CreateNetworkPeer:output_type -> core.CreateNetworkPeerResp
	80,  // 182: core.CoreService.DeleteNetworkPeer:output_type -> core.DeleteNetworkPeerResp
	83,  // 183: core.CoreService.ListNetworkPeer:output_type -> core.ListNetworkPeerResp
	89,  // 184: core.CoreService.RestoreCluster:output_type -> core.RestoreClusterResp
	92,  // 185: core.CoreService.ListBackups:output_type -> core.ListBackupsResp
	94,  // 186: core.CoreService.ListBackupsOfCluster:output_type -> core.ListBackupsOfClusterResp
	96,  // 187: core.CoreService.CreateReplication:output_type -> core.CreateReplicationResp
	98,  // 188: core.CoreService.Measure:output_type -> core.MeasureResp
	162, // [162:189] is the sub-list for method output_type
	135, // [135:162] is the sub-list for method input_type
	135, // [135:135] is the sub-list for extension type_name
	135, // [135:135] is the sub-list for extension extendee
	0,   // [0:135] is the sub-list for field type_name
}

func init() { file_core_core_proto_init() }
func file_core_core_proto_init() {
	if File_core_core_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_core_core_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CloudProvider); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Region); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ProfileVersion); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ClusterComponent); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NodeProfile4Tenant); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ClusterConnection); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Cluster); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ClusterSnapshot); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AwsXAccountDeployParams); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*XAccountDeploy); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RegionCIDR); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NetworkPeerInfo4Aws); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NetworkPeerInfo4Gcp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NetworkPeer); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Backup); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Replication); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*IamRoleUsage); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*IamRole); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SyncInfraProfileReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SyncInfraProfileResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReplaceProfileByYamlReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReplaceProfileByYamlResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListNodeProfiles4TenantReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListNodeProfiles4TenantResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListCloudProvidersReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListCloudProvidersResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateIamRoleReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateIamRoleResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteIamRoleReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteIamRoleResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*IamRoleFilter); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListIamRolesReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListIamRolesResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateClusterReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateClusterResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateClusterSnapshotReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateClusterSnapshotResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BatchGetClusterSnapshotReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BatchGetClusterSnapshotResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ScaleClusterReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ScaleClusterResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CalcClusterFeeReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CalcClusterFeeResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ClusterFilter); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListClustersReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListClustersResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CountClustersReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CountClustersResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateXAccountDeployReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateXAccountDeployResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*XAccountDeployFilter); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListXAccountDeployReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListXAccountDeployResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteXAccountDeployReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteXAccountDeployResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNetworkPeerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNetworkPeerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteNetworkPeerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteNetworkPeerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NetworkPeerFilter); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListNetworkPeerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListNetworkPeerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListRegionCIDROfProjectReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListRegionCIDROfProjectResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateClusterConnReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateClusterConnResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RestoreClusterReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RestoreClusterResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BackupFilter); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListBackupsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListBackupsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListBackupsOfClusterReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListBackupsOfClusterResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateReplicationReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateReplicationResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MeasureReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MeasureResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SampleReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SampleResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReplaceProfileByYamlReq_ResourceDetail); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReplaceProfileByYamlReq_PDNode); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReplaceProfileByYamlReq_SKU); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReplaceProfileByYamlReq_Node); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_core_core_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CalcClusterFeeResp_ComponentCost); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	file_core_core_proto_msgTypes[6].OneofWrappers = []interface{}{}
	file_core_core_proto_msgTypes[9].OneofWrappers = []interface{}{}
	file_core_core_proto_msgTypes[13].OneofWrappers = []interface{}{}
	file_core_core_proto_msgTypes[14].OneofWrappers = []interface{}{}
	file_core_core_proto_msgTypes[24].OneofWrappers = []interface{}{}
	file_core_core_proto_msgTypes[43].OneofWrappers = []interface{}{}
	file_core_core_proto_msgTypes[44].OneofWrappers = []interface{}{}
	file_core_core_proto_msgTypes[48].OneofWrappers = []interface{}{}
	file_core_core_proto_msgTypes[60].OneofWrappers = []interface{}{}
	file_core_core_proto_msgTypes[66].OneofWrappers = []interface{}{}
	file_core_core_proto_msgTypes[83].OneofWrappers = []interface{}{}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_core_core_proto_rawDesc,
			NumEnums:      22,
			NumMessages:   88,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_core_core_proto_goTypes,
		DependencyIndexes: file_core_core_proto_depIdxs,
		EnumInfos:         file_core_core_proto_enumTypes,
		MessageInfos:      file_core_core_proto_msgTypes,
	}.Build()
	File_core_core_proto = out.File
	file_core_core_proto_rawDesc = nil
	file_core_core_proto_goTypes = nil
	file_core_core_proto_depIdxs = nil
}
