// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.34.2
// 	protoc        (unknown)
// source: global/nextgen/v1/cluster.proto

package nextgenv1

import (
	v1 "github.com/tidbcloud/tidb-management-service/api/spec/global/common/v1"
	_ "google.golang.org/genproto/googleapis/api/annotations"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	emptypb "google.golang.org/protobuf/types/known/emptypb"
	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
	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)
)

// RestoreState enum for restore operations
type RestoreState int32

const (
	RestoreState_RESTORE_STATE_UNSPECIFIED RestoreState = 0
	RestoreState_RESTORE_STATE_UNKNOWN     RestoreState = 1
	RestoreState_RESTORE_STATE_PENDING     RestoreState = 2
	RestoreState_RESTORE_STATE_RUNNING     RestoreState = 3
	RestoreState_RESTORE_STATE_SUCCESS     RestoreState = 4
	RestoreState_RESTORE_STATE_FAILED      RestoreState = 5
	RestoreState_RESTORE_STATE_CANCELLED   RestoreState = 6
)

// Enum value maps for RestoreState.
var (
	RestoreState_name = map[int32]string{
		0: "RESTORE_STATE_UNSPECIFIED",
		1: "RESTORE_STATE_UNKNOWN",
		2: "RESTORE_STATE_PENDING",
		3: "RESTORE_STATE_RUNNING",
		4: "RESTORE_STATE_SUCCESS",
		5: "RESTORE_STATE_FAILED",
		6: "RESTORE_STATE_CANCELLED",
	}
	RestoreState_value = map[string]int32{
		"RESTORE_STATE_UNSPECIFIED": 0,
		"RESTORE_STATE_UNKNOWN":     1,
		"RESTORE_STATE_PENDING":     2,
		"RESTORE_STATE_RUNNING":     3,
		"RESTORE_STATE_SUCCESS":     4,
		"RESTORE_STATE_FAILED":      5,
		"RESTORE_STATE_CANCELLED":   6,
	}
)

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

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

func (RestoreState) Descriptor() protoreflect.EnumDescriptor {
	return file_global_nextgen_v1_cluster_proto_enumTypes[0].Descriptor()
}

func (RestoreState) Type() protoreflect.EnumType {
	return &file_global_nextgen_v1_cluster_proto_enumTypes[0]
}

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

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

// RestoreMode enum for restore operations
type RestoreMode int32

const (
	RestoreMode_RESTORE_MODE_UNSPECIFIED        RestoreMode = 0
	RestoreMode_RESTORE_MODE_SNAPSHOT           RestoreMode = 1
	RestoreMode_RESTORE_MODE_PITR               RestoreMode = 2
	RestoreMode_RESTORE_MODE_DEDICATED_SNAPSHOT RestoreMode = 3
	RestoreMode_RESTORE_MODE_CLASSIC_SNAPSHOT   RestoreMode = 4
)

// Enum value maps for RestoreMode.
var (
	RestoreMode_name = map[int32]string{
		0: "RESTORE_MODE_UNSPECIFIED",
		1: "RESTORE_MODE_SNAPSHOT",
		2: "RESTORE_MODE_PITR",
		3: "RESTORE_MODE_DEDICATED_SNAPSHOT",
		4: "RESTORE_MODE_CLASSIC_SNAPSHOT",
	}
	RestoreMode_value = map[string]int32{
		"RESTORE_MODE_UNSPECIFIED":        0,
		"RESTORE_MODE_SNAPSHOT":           1,
		"RESTORE_MODE_PITR":               2,
		"RESTORE_MODE_DEDICATED_SNAPSHOT": 3,
		"RESTORE_MODE_CLASSIC_SNAPSHOT":   4,
	}
)

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

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

func (RestoreMode) Descriptor() protoreflect.EnumDescriptor {
	return file_global_nextgen_v1_cluster_proto_enumTypes[1].Descriptor()
}

func (RestoreMode) Type() protoreflect.EnumType {
	return &file_global_nextgen_v1_cluster_proto_enumTypes[1]
}

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

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

type Cluster_HighAvailabilityType int32

const (
	Cluster_HIGH_AVAILABILITY_TYPE_UNSPECIFIED Cluster_HighAvailabilityType = 0
	Cluster_REGIONAL                           Cluster_HighAvailabilityType = 1
	Cluster_ZONAL                              Cluster_HighAvailabilityType = 2
)

// Enum value maps for Cluster_HighAvailabilityType.
var (
	Cluster_HighAvailabilityType_name = map[int32]string{
		0: "HIGH_AVAILABILITY_TYPE_UNSPECIFIED",
		1: "REGIONAL",
		2: "ZONAL",
	}
	Cluster_HighAvailabilityType_value = map[string]int32{
		"HIGH_AVAILABILITY_TYPE_UNSPECIFIED": 0,
		"REGIONAL":                           1,
		"ZONAL":                              2,
	}
)

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

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

func (Cluster_HighAvailabilityType) Descriptor() protoreflect.EnumDescriptor {
	return file_global_nextgen_v1_cluster_proto_enumTypes[2].Descriptor()
}

func (Cluster_HighAvailabilityType) Type() protoreflect.EnumType {
	return &file_global_nextgen_v1_cluster_proto_enumTypes[2]
}

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

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

type Cluster_HealthState int32

const (
	Cluster_HEALTH_STATE_UNSPECIFIED Cluster_HealthState = 0
	Cluster_HEALTHY                  Cluster_HealthState = 1
	Cluster_UNHEALTHY                Cluster_HealthState = 2
)

// Enum value maps for Cluster_HealthState.
var (
	Cluster_HealthState_name = map[int32]string{
		0: "HEALTH_STATE_UNSPECIFIED",
		1: "HEALTHY",
		2: "UNHEALTHY",
	}
	Cluster_HealthState_value = map[string]int32{
		"HEALTH_STATE_UNSPECIFIED": 0,
		"HEALTHY":                  1,
		"UNHEALTHY":                2,
	}
)

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

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

func (Cluster_HealthState) Descriptor() protoreflect.EnumDescriptor {
	return file_global_nextgen_v1_cluster_proto_enumTypes[3].Descriptor()
}

func (Cluster_HealthState) Type() protoreflect.EnumType {
	return &file_global_nextgen_v1_cluster_proto_enumTypes[3]
}

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

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

type Cluster_State int32

const (
	Cluster_STATE_UNSPECIFIED Cluster_State = 0
	Cluster_CREATING          Cluster_State = 1
	Cluster_AVAILABLE         Cluster_State = 2
	Cluster_MODIFYING         Cluster_State = 3
	Cluster_UNAVAILABLE       Cluster_State = 4
	Cluster_DELETED           Cluster_State = 5
	Cluster_PAUSING           Cluster_State = 6
	Cluster_PAUSED            Cluster_State = 7
	Cluster_RESUMING          Cluster_State = 8
)

// Enum value maps for Cluster_State.
var (
	Cluster_State_name = map[int32]string{
		0: "STATE_UNSPECIFIED",
		1: "CREATING",
		2: "AVAILABLE",
		3: "MODIFYING",
		4: "UNAVAILABLE",
		5: "DELETED",
		6: "PAUSING",
		7: "PAUSED",
		8: "RESUMING",
	}
	Cluster_State_value = map[string]int32{
		"STATE_UNSPECIFIED": 0,
		"CREATING":          1,
		"AVAILABLE":         2,
		"MODIFYING":         3,
		"UNAVAILABLE":       4,
		"DELETED":           5,
		"PAUSING":           6,
		"PAUSED":            7,
		"RESUMING":          8,
	}
)

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

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

func (Cluster_State) Descriptor() protoreflect.EnumDescriptor {
	return file_global_nextgen_v1_cluster_proto_enumTypes[4].Descriptor()
}

func (Cluster_State) Type() protoreflect.EnumType {
	return &file_global_nextgen_v1_cluster_proto_enumTypes[4]
}

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

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

type TestClassicBackupAccessResponse_Status int32

const (
	TestClassicBackupAccessResponse_STATUS_UNSPECIFIED TestClassicBackupAccessResponse_Status = 0
	TestClassicBackupAccessResponse_SUCCESS            TestClassicBackupAccessResponse_Status = 1
	TestClassicBackupAccessResponse_NO_SUCH_BUCKET     TestClassicBackupAccessResponse_Status = 2
	TestClassicBackupAccessResponse_ILLEGAL_BACKUP     TestClassicBackupAccessResponse_Status = 3
	TestClassicBackupAccessResponse_ACCESS_DENIED      TestClassicBackupAccessResponse_Status = 4
	TestClassicBackupAccessResponse_INVALID_PARAMS     TestClassicBackupAccessResponse_Status = 5
)

// Enum value maps for TestClassicBackupAccessResponse_Status.
var (
	TestClassicBackupAccessResponse_Status_name = map[int32]string{
		0: "STATUS_UNSPECIFIED",
		1: "SUCCESS",
		2: "NO_SUCH_BUCKET",
		3: "ILLEGAL_BACKUP",
		4: "ACCESS_DENIED",
		5: "INVALID_PARAMS",
	}
	TestClassicBackupAccessResponse_Status_value = map[string]int32{
		"STATUS_UNSPECIFIED": 0,
		"SUCCESS":            1,
		"NO_SUCH_BUCKET":     2,
		"ILLEGAL_BACKUP":     3,
		"ACCESS_DENIED":      4,
		"INVALID_PARAMS":     5,
	}
)

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

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

func (TestClassicBackupAccessResponse_Status) Descriptor() protoreflect.EnumDescriptor {
	return file_global_nextgen_v1_cluster_proto_enumTypes[5].Descriptor()
}

func (TestClassicBackupAccessResponse_Status) Type() protoreflect.EnumType {
	return &file_global_nextgen_v1_cluster_proto_enumTypes[5]
}

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

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

type ClusterEncryptionStatus_State int32

const (
	ClusterEncryptionStatus_STATE_UNSPECIFIED ClusterEncryptionStatus_State = 0
	ClusterEncryptionStatus_MODIFYING         ClusterEncryptionStatus_State = 1
	ClusterEncryptionStatus_ENABLED           ClusterEncryptionStatus_State = 2
)

// Enum value maps for ClusterEncryptionStatus_State.
var (
	ClusterEncryptionStatus_State_name = map[int32]string{
		0: "STATE_UNSPECIFIED",
		1: "MODIFYING",
		2: "ENABLED",
	}
	ClusterEncryptionStatus_State_value = map[string]int32{
		"STATE_UNSPECIFIED": 0,
		"MODIFYING":         1,
		"ENABLED":           2,
	}
)

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

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

func (ClusterEncryptionStatus_State) Descriptor() protoreflect.EnumDescriptor {
	return file_global_nextgen_v1_cluster_proto_enumTypes[6].Descriptor()
}

func (ClusterEncryptionStatus_State) Type() protoreflect.EnumType {
	return &file_global_nextgen_v1_cluster_proto_enumTypes[6]
}

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

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

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

	// Metadata.
	ClusterId          uint64                 `protobuf:"varint,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	OrganizationId     uint64                 `protobuf:"varint,2,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
	CreateTime         *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	CreateFinishedTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=create_finished_time,json=createFinishedTime,proto3" json:"create_finished_time,omitempty"`
	UpdateTime         *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
	DeleteTime         *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=delete_time,json=deleteTime,proto3" json:"delete_time,omitempty"`
	// Specs.
	CloudProviderId v1.CloudProvider_Name `protobuf:"varint,7,opt,name=cloud_provider_id,json=cloudProviderId,proto3,enum=global.common.v1.CloudProvider_Name" json:"cloud_provider_id,omitempty"`
	RegionId        v1.Region_Name        `protobuf:"varint,8,opt,name=region_id,json=regionId,proto3,enum=global.common.v1.Region_Name" json:"region_id,omitempty"`
	RootPassword    string                `protobuf:"bytes,9,opt,name=root_password,json=rootPassword,proto3" json:"root_password,omitempty"`
	// Version of TiDB kernel.
	Version               string                       `protobuf:"bytes,12,opt,name=version,proto3" json:"version,omitempty"`
	HasRootPassword       bool                         `protobuf:"varint,13,opt,name=has_root_password,json=hasRootPassword,proto3" json:"has_root_password,omitempty"`
	State                 Cluster_State                `protobuf:"varint,14,opt,name=state,proto3,enum=global.nextgen.v1.Cluster_State" json:"state,omitempty"`
	HealthState           Cluster_HealthState          `protobuf:"varint,15,opt,name=health_state,json=healthState,proto3,enum=global.nextgen.v1.Cluster_HealthState" json:"health_state,omitempty"`
	TokenBasedAuthEnabled bool                         `protobuf:"varint,16,opt,name=token_based_auth_enabled,json=tokenBasedAuthEnabled,proto3" json:"token_based_auth_enabled,omitempty"`
	RegionDisplayName     string                       `protobuf:"bytes,17,opt,name=region_display_name,json=regionDisplayName,proto3" json:"region_display_name,omitempty"`
	MinRcu                int64                        `protobuf:"varint,18,opt,name=min_rcu,json=minRcu,proto3" json:"min_rcu,omitempty"`
	MaxRcu                int64                        `protobuf:"varint,19,opt,name=max_rcu,json=maxRcu,proto3" json:"max_rcu,omitempty"`
	ServicePlan           v1.ServicePlan               `protobuf:"varint,20,opt,name=service_plan,json=servicePlan,proto3,enum=global.common.v1.ServicePlan" json:"service_plan,omitempty"`
	HighAvailabilityType  Cluster_HighAvailabilityType `protobuf:"varint,21,opt,name=high_availability_type,json=highAvailabilityType,proto3,enum=global.nextgen.v1.Cluster_HighAvailabilityType" json:"high_availability_type,omitempty"`
	RegionLogicalName     string                       `protobuf:"bytes,22,opt,name=region_logical_name,json=regionLogicalName,proto3" json:"region_logical_name,omitempty"`
	Endpoints             []*Endpoint                  `protobuf:"bytes,23,rep,name=endpoints,proto3" json:"endpoints,omitempty"`
	SharedPoolId          string                       `protobuf:"bytes,24,opt,name=shared_pool_id,json=sharedPoolId,proto3" json:"shared_pool_id,omitempty"`
	DataplaneId           string                       `protobuf:"bytes,25,opt,name=dataplane_id,json=dataplaneId,proto3" json:"dataplane_id,omitempty"`
	// only used in restore to set cloud admin passwd
	SourceClusterId                   uint64                           `protobuf:"varint,26,opt,name=source_cluster_id,json=sourceClusterId,proto3" json:"source_cluster_id,omitempty"`
	EncryptedPlatformAdminPassword    string                           `protobuf:"bytes,27,opt,name=encrypted_platform_admin_password,json=encryptedPlatformAdminPassword,proto3" json:"encrypted_platform_admin_password,omitempty"`
	EncryptedMaintenanceAdminPassword string                           `protobuf:"bytes,28,opt,name=encrypted_maintenance_admin_password,json=encryptedMaintenanceAdminPassword,proto3" json:"encrypted_maintenance_admin_password,omitempty"`
	DualLayerDataEncryption           *Cluster_DualLayerDataEncryption `protobuf:"bytes,29,opt,name=dual_layer_data_encryption,json=dualLayerDataEncryption,proto3" json:"dual_layer_data_encryption,omitempty"`
	DisplayName                       string                           `protobuf:"bytes,30,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	ProjectId                         int64                            `protobuf:"varint,31,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RuVersion                         int32                            `protobuf:"varint,32,opt,name=ru_version,json=ruVersion,proto3" json:"ru_version,omitempty"`
	CapacityUpdatedAt                 *timestamppb.Timestamp           `protobuf:"bytes,33,opt,name=capacity_updated_at,json=capacityUpdatedAt,proto3" json:"capacity_updated_at,omitempty"`
	ReservedCapacityTemplateId        uint64                           `protobuf:"varint,35,opt,name=reserved_capacity_template_id,json=reservedCapacityTemplateId,proto3" json:"reserved_capacity_template_id,omitempty"`
	ReservedCapacityTemplate          *ReservedCapacityTemplate        `protobuf:"bytes,36,opt,name=reserved_capacity_template,json=reservedCapacityTemplate,proto3" json:"reserved_capacity_template,omitempty"`
	ResourcePoolDisplayName           string                           `protobuf:"bytes,37,opt,name=resource_pool_display_name,json=resourcePoolDisplayName,proto3" json:"resource_pool_display_name,omitempty"`
	PlanReplayerStatus                *PlanReplayerStatus              `protobuf:"bytes,38,opt,name=plan_replayer_status,json=planReplayerStatus,proto3" json:"plan_replayer_status,omitempty"`
	AutomaticResumeAt                 *timestamppb.Timestamp           `protobuf:"bytes,39,opt,name=automatic_resume_at,json=automaticResumeAt,proto3" json:"automatic_resume_at,omitempty"`
}

func (x *Cluster) Reset() {
	*x = Cluster{}
	if protoimpl.UnsafeEnabled {
		mi := &file_global_nextgen_v1_cluster_proto_msgTypes[0]
		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_global_nextgen_v1_cluster_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 Cluster.ProtoReflect.Descriptor instead.
func (*Cluster) Descriptor() ([]byte, []int) {
	return file_global_nextgen_v1_cluster_proto_rawDescGZIP(), []int{0}
}

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

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

func (x *Cluster) GetCreateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.CreateTime
	}
	return nil
}

func (x *Cluster) GetCreateFinishedTime() *timestamppb.Timestamp {
	if x != nil {
		return x.CreateFinishedTime
	}
	return nil
}

func (x *Cluster) GetUpdateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdateTime
	}
	return nil
}

func (x *Cluster) GetDeleteTime() *timestamppb.Timestamp {
	if x != nil {
		return x.DeleteTime
	}
	return nil
}

func (x *Cluster) GetCloudProviderId() v1.CloudProvider_Name {
	if x != nil {
		return x.CloudProviderId
	}
	return v1.CloudProvider_Name(0)
}

func (x *Cluster) GetRegionId() v1.Region_Name {
	if x != nil {
		return x.RegionId
	}
	return v1.Region_Name(0)
}

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

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

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

func (x *Cluster) GetState() Cluster_State {
	if x != nil {
		return x.State
	}
	return Cluster_STATE_UNSPECIFIED
}

func (x *Cluster) GetHealthState() Cluster_HealthState {
	if x != nil {
		return x.HealthState
	}
	return Cluster_HEALTH_STATE_UNSPECIFIED
}

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

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

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

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

func (x *Cluster) GetServicePlan() v1.ServicePlan {
	if x != nil {
		return x.ServicePlan
	}
	return v1.ServicePlan(0)
}

func (x *Cluster) GetHighAvailabilityType() Cluster_HighAvailabilityType {
	if x != nil {
		return x.HighAvailabilityType
	}
	return Cluster_HIGH_AVAILABILITY_TYPE_UNSPECIFIED
}

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

func (x *Cluster) GetEndpoints() []*Endpoint {
	if x != nil {
		return x.Endpoints
	}
	return nil
}

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

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

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

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

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

func (x *Cluster) GetDualLayerDataEncryption() *Cluster_DualLayerDataEncryption {
	if x != nil {
		return x.DualLayerDataEncryption
	}
	return nil
}

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

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

func (x *Cluster) GetRuVersion() int32 {
	if x != nil {
		return x.RuVersion
	}
	return 0
}

func (x *Cluster) GetCapacityUpdatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.CapacityUpdatedAt
	}
	return nil
}

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

func (x *Cluster) GetReservedCapacityTemplate() *ReservedCapacityTemplate {
	if x != nil {
		return x.ReservedCapacityTemplate
	}
	return nil
}

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

func (x *Cluster) GetPlanReplayerStatus() *PlanReplayerStatus {
	if x != nil {
		return x.PlanReplayerStatus
	}
	return nil
}

func (x *Cluster) GetAutomaticResumeAt() *timestamppb.Timestamp {
	if x != nil {
		return x.AutomaticResumeAt
	}
	return nil
}

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

	CloudIamIdentity string `protobuf:"bytes,1,opt,name=cloud_iam_identity,json=cloudIamIdentity,proto3" json:"cloud_iam_identity,omitempty"` // aws role or gcp serviceaccount
	NodeRole         string `protobuf:"bytes,2,opt,name=node_role,json=nodeRole,proto3" json:"node_role,omitempty"`                           // e.g. eks-nodegroup-role
	ExternalId       string `protobuf:"bytes,3,opt,name=external_id,json=externalId,proto3" json:"external_id,omitempty"`
}

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

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

func (*ProviderRole) ProtoMessage() {}

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

func (x *ProviderRole) GetCloudIamIdentity() string {
	if x != nil {
		return x.CloudIamIdentity
	}
	return ""
}

func (x *ProviderRole) GetNodeRole() string {
	if x != nil {
		return x.NodeRole
	}
	return ""
}

func (x *ProviderRole) GetExternalId() string {
	if x != nil {
		return x.ExternalId
	}
	return ""
}

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

	Cluster        *Cluster `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"`
	ValidateOnly   bool     `protobuf:"varint,2,opt,name=validate_only,json=validateOnly,proto3" json:"validate_only,omitempty"`
	ResourcePoolId *uint64  `protobuf:"varint,3,opt,name=resource_pool_id,json=resourcePoolId,proto3,oneof" json:"resource_pool_id,omitempty"`
}

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

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

func (*CreateClusterRequest) ProtoMessage() {}

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

func (x *CreateClusterRequest) GetCluster() *Cluster {
	if x != nil {
		return x.Cluster
	}
	return nil
}

func (x *CreateClusterRequest) GetValidateOnly() bool {
	if x != nil {
		return x.ValidateOnly
	}
	return false
}

func (x *CreateClusterRequest) GetResourcePoolId() uint64 {
	if x != nil && x.ResourcePoolId != nil {
		return *x.ResourcePoolId
	}
	return 0
}

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

	ClusterIds       []uint64                `protobuf:"varint,1,rep,packed,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"`
	OrganizationIds  []uint64                `protobuf:"varint,2,rep,packed,name=organization_ids,json=organizationIds,proto3" json:"organization_ids,omitempty"`
	CloudProviderIds []v1.CloudProvider_Name `protobuf:"varint,3,rep,packed,name=cloud_provider_ids,json=cloudProviderIds,proto3,enum=global.common.v1.CloudProvider_Name" json:"cloud_provider_ids,omitempty"`
	RegionIds        []v1.Region_Name        `protobuf:"varint,4,rep,packed,name=region_ids,json=regionIds,proto3,enum=global.common.v1.Region_Name" json:"region_ids,omitempty"`
	States           []Cluster_State         `protobuf:"varint,5,rep,packed,name=states,proto3,enum=global.nextgen.v1.Cluster_State" json:"states,omitempty"`
	ExcludeStates    []Cluster_State         `protobuf:"varint,6,rep,packed,name=exclude_states,json=excludeStates,proto3,enum=global.nextgen.v1.Cluster_State" json:"exclude_states,omitempty"`
	// Default to return non-deleted clusters only.
	ShowDeleted bool `protobuf:"varint,7,opt,name=show_deleted,json=showDeleted,proto3" json:"show_deleted,omitempty"`
	// if show details is false, not return modify progress and network info
	ShowDetails     bool             `protobuf:"varint,8,opt,name=show_details,json=showDetails,proto3" json:"show_details,omitempty"`
	ServicePlans    []v1.ServicePlan `protobuf:"varint,9,rep,packed,name=service_plans,json=servicePlans,proto3,enum=global.common.v1.ServicePlan" json:"service_plans,omitempty"`
	ResourcePoolIds []uint64         `protobuf:"varint,10,rep,packed,name=resource_pool_ids,json=resourcePoolIds,proto3" json:"resource_pool_ids,omitempty"`
	// Maximum number of clusters to return.
	PageSize uint32 `protobuf:"varint,100,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	Page     uint32 `protobuf:"varint,101,opt,name=page,proto3" json:"page,omitempty"`
}

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

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

func (*ListClustersRequest) ProtoMessage() {}

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

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

func (x *ListClustersRequest) GetOrganizationIds() []uint64 {
	if x != nil {
		return x.OrganizationIds
	}
	return nil
}

func (x *ListClustersRequest) GetCloudProviderIds() []v1.CloudProvider_Name {
	if x != nil {
		return x.CloudProviderIds
	}
	return nil
}

func (x *ListClustersRequest) GetRegionIds() []v1.Region_Name {
	if x != nil {
		return x.RegionIds
	}
	return nil
}

func (x *ListClustersRequest) GetStates() []Cluster_State {
	if x != nil {
		return x.States
	}
	return nil
}

func (x *ListClustersRequest) GetExcludeStates() []Cluster_State {
	if x != nil {
		return x.ExcludeStates
	}
	return nil
}

func (x *ListClustersRequest) GetShowDeleted() bool {
	if x != nil {
		return x.ShowDeleted
	}
	return false
}

func (x *ListClustersRequest) GetShowDetails() bool {
	if x != nil {
		return x.ShowDetails
	}
	return false
}

func (x *ListClustersRequest) GetServicePlans() []v1.ServicePlan {
	if x != nil {
		return x.ServicePlans
	}
	return nil
}

func (x *ListClustersRequest) GetResourcePoolIds() []uint64 {
	if x != nil {
		return x.ResourcePoolIds
	}
	return nil
}

func (x *ListClustersRequest) GetPageSize() uint32 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListClustersRequest) GetPage() uint32 {
	if x != nil {
		return x.Page
	}
	return 0
}

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

	Clusters []*Cluster `protobuf:"bytes,1,rep,name=clusters,proto3" json:"clusters,omitempty"`
	Total    uint32     `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"`
}

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

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

func (*ListClustersResponse) ProtoMessage() {}

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

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

func (x *ListClustersResponse) GetTotal() uint32 {
	if x != nil {
		return x.Total
	}
	return 0
}

type GetClusterRequest 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"`
	// Default to return non-deleted cluster only.
	ShowDeleted bool `protobuf:"varint,2,opt,name=show_deleted,json=showDeleted,proto3" json:"show_deleted,omitempty"`
}

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

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

func (*GetClusterRequest) ProtoMessage() {}

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

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

func (x *GetClusterRequest) GetShowDeleted() bool {
	if x != nil {
		return x.ShowDeleted
	}
	return false
}

type DeleteClusterRequest 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"`
	ValidateOnly bool   `protobuf:"varint,2,opt,name=validate_only,json=validateOnly,proto3" json:"validate_only,omitempty"`
}

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

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

func (*DeleteClusterRequest) ProtoMessage() {}

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

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

func (x *DeleteClusterRequest) GetValidateOnly() bool {
	if x != nil {
		return x.ValidateOnly
	}
	return false
}

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

	Cluster *Cluster `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"`
	// If set to true, only validate the request without making any changes.
	ValidateOnly bool `protobuf:"varint,3,opt,name=validate_only,json=validateOnly,proto3" json:"validate_only,omitempty"`
}

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

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

func (*UpdateClusterRequest) ProtoMessage() {}

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

func (x *UpdateClusterRequest) GetCluster() *Cluster {
	if x != nil {
		return x.Cluster
	}
	return nil
}

func (x *UpdateClusterRequest) GetValidateOnly() bool {
	if x != nil {
		return x.ValidateOnly
	}
	return false
}

type ChangeClusterPasswdRequest 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"`
	Passwd    string `protobuf:"bytes,2,opt,name=passwd,proto3" json:"passwd,omitempty"`
}

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

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

func (*ChangeClusterPasswdRequest) ProtoMessage() {}

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

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

func (x *ChangeClusterPasswdRequest) GetPasswd() string {
	if x != nil {
		return x.Passwd
	}
	return ""
}

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

	Synced bool `protobuf:"varint,1,opt,name=synced,proto3" json:"synced,omitempty"` // whether the passwd is synced to cluster or only saved into metadb
}

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

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

func (*ChangeClusterPasswdResponse) ProtoMessage() {}

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

func (x *ChangeClusterPasswdResponse) GetSynced() bool {
	if x != nil {
		return x.Synced
	}
	return false
}

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

	// filter fields
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// (-- api-linter: core::0216::state-field-output-only=disabled
	//
	//	aip.dev/not-precedent: It in a input param --)
	States       []Backup_State         `protobuf:"varint,2,rep,packed,name=states,proto3,enum=global.nextgen.v1.Backup_State" json:"states,omitempty"`
	RegionIds    []string               `protobuf:"bytes,3,rep,name=region_ids,json=regionIds,proto3" json:"region_ids,omitempty"`
	TriggerTypes []Backup_TriggerType   `protobuf:"varint,4,rep,packed,name=trigger_types,json=triggerTypes,proto3,enum=global.nextgen.v1.Backup_TriggerType" json:"trigger_types,omitempty"`
	StartTime    *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
	EndTime      *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
	BackupIds    []string               `protobuf:"bytes,7,rep,name=backup_ids,json=backupIds,proto3" json:"backup_ids,omitempty"`
	// page fileds
	PageSize  int32  `protobuf:"varint,100,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	PageToken string `protobuf:"bytes,101,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	Skip      int32  `protobuf:"varint,102,opt,name=skip,proto3" json:"skip,omitempty"`
}

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

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

func (*ListClusterBackupsRequest) ProtoMessage() {}

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

func (x *ListClusterBackupsRequest) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

func (x *ListClusterBackupsRequest) GetStates() []Backup_State {
	if x != nil {
		return x.States
	}
	return nil
}

func (x *ListClusterBackupsRequest) GetRegionIds() []string {
	if x != nil {
		return x.RegionIds
	}
	return nil
}

func (x *ListClusterBackupsRequest) GetTriggerTypes() []Backup_TriggerType {
	if x != nil {
		return x.TriggerTypes
	}
	return nil
}

func (x *ListClusterBackupsRequest) GetStartTime() *timestamppb.Timestamp {
	if x != nil {
		return x.StartTime
	}
	return nil
}

func (x *ListClusterBackupsRequest) GetEndTime() *timestamppb.Timestamp {
	if x != nil {
		return x.EndTime
	}
	return nil
}

func (x *ListClusterBackupsRequest) GetBackupIds() []string {
	if x != nil {
		return x.BackupIds
	}
	return nil
}

func (x *ListClusterBackupsRequest) GetPageSize() int32 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListClusterBackupsRequest) GetPageToken() string {
	if x != nil {
		return x.PageToken
	}
	return ""
}

func (x *ListClusterBackupsRequest) GetSkip() int32 {
	if x != nil {
		return x.Skip
	}
	return 0
}

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

	Backups []*Backup `protobuf:"bytes,1,rep,name=backups,proto3" json:"backups,omitempty"`
	// page fileds
	TotalSize     int32  `protobuf:"varint,2,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
	NextPageToken string `protobuf:"bytes,3,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
}

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

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

func (*ListClusterBackupsResponse) ProtoMessage() {}

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

func (x *ListClusterBackupsResponse) GetBackups() []*Backup {
	if x != nil {
		return x.Backups
	}
	return nil
}

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

func (x *ListClusterBackupsResponse) GetNextPageToken() string {
	if x != nil {
		return x.NextPageToken
	}
	return ""
}

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

	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	BackupId  string `protobuf:"bytes,2,opt,name=backup_id,json=backupId,proto3" json:"backup_id,omitempty"`
}

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

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

func (*DeleteClusterBackupRequest) ProtoMessage() {}

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

func (x *DeleteClusterBackupRequest) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

func (x *DeleteClusterBackupRequest) GetBackupId() string {
	if x != nil {
		return x.BackupId
	}
	return ""
}

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

	TargetClusterId      string                 `protobuf:"bytes,1,opt,name=target_cluster_id,json=targetClusterId,proto3" json:"target_cluster_id,omitempty"`
	SourceClusterId      string                 `protobuf:"bytes,2,opt,name=source_cluster_id,json=sourceClusterId,proto3" json:"source_cluster_id,omitempty"`
	RestoreMode          RestoreMode            `protobuf:"varint,3,opt,name=restore_mode,json=restoreMode,proto3,enum=global.nextgen.v1.RestoreMode" json:"restore_mode,omitempty"`
	BackupId             string                 `protobuf:"bytes,4,opt,name=backup_id,json=backupId,proto3" json:"backup_id,omitempty"`
	PointInTime          *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=point_in_time,json=pointInTime,proto3" json:"point_in_time,omitempty"`
	ClassicBackupStorage *ClassicBackupStorage  `protobuf:"bytes,6,opt,name=classic_backup_storage,json=classicBackupStorage,proto3" json:"classic_backup_storage,omitempty"`
}

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

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

func (*RestoreClusterRequest) ProtoMessage() {}

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

func (x *RestoreClusterRequest) GetTargetClusterId() string {
	if x != nil {
		return x.TargetClusterId
	}
	return ""
}

func (x *RestoreClusterRequest) GetSourceClusterId() string {
	if x != nil {
		return x.SourceClusterId
	}
	return ""
}

func (x *RestoreClusterRequest) GetRestoreMode() RestoreMode {
	if x != nil {
		return x.RestoreMode
	}
	return RestoreMode_RESTORE_MODE_UNSPECIFIED
}

func (x *RestoreClusterRequest) GetBackupId() string {
	if x != nil {
		return x.BackupId
	}
	return ""
}

func (x *RestoreClusterRequest) GetPointInTime() *timestamppb.Timestamp {
	if x != nil {
		return x.PointInTime
	}
	return nil
}

func (x *RestoreClusterRequest) GetClassicBackupStorage() *ClassicBackupStorage {
	if x != nil {
		return x.ClassicBackupStorage
	}
	return nil
}

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

	CloudProvider v1.CloudProvider_Name `protobuf:"varint,1,opt,name=cloud_provider,json=cloudProvider,proto3,enum=global.common.v1.CloudProvider_Name" json:"cloud_provider,omitempty"`
	// only required when cloud_provider=alicloud
	Region    string             `protobuf:"bytes,2,opt,name=region,proto3" json:"region,omitempty"`
	BucketUri string             `protobuf:"bytes,3,opt,name=bucket_uri,json=bucketUri,proto3" json:"bucket_uri,omitempty"`
	Auth      *BackupStorageAuth `protobuf:"bytes,4,opt,name=auth,proto3" json:"auth,omitempty"`
}

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

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

func (*ClassicBackupStorage) ProtoMessage() {}

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

func (x *ClassicBackupStorage) GetCloudProvider() v1.CloudProvider_Name {
	if x != nil {
		return x.CloudProvider
	}
	return v1.CloudProvider_Name(0)
}

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

func (x *ClassicBackupStorage) GetBucketUri() string {
	if x != nil {
		return x.BucketUri
	}
	return ""
}

func (x *ClassicBackupStorage) GetAuth() *BackupStorageAuth {
	if x != nil {
		return x.Auth
	}
	return nil
}

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

	AccessKeyId     string `protobuf:"bytes,1,opt,name=access_key_id,json=accessKeyId,proto3" json:"access_key_id,omitempty"`
	AccessKeySecret string `protobuf:"bytes,2,opt,name=access_key_secret,json=accessKeySecret,proto3" json:"access_key_secret,omitempty"`
}

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

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

func (*BackupStorageAuth) ProtoMessage() {}

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

func (x *BackupStorageAuth) GetAccessKeyId() string {
	if x != nil {
		return x.AccessKeyId
	}
	return ""
}

func (x *BackupStorageAuth) GetAccessKeySecret() string {
	if x != nil {
		return x.AccessKeySecret
	}
	return ""
}

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

	ClassicBackupStorage *ClassicBackupStorage `protobuf:"bytes,1,opt,name=classic_backup_storage,json=classicBackupStorage,proto3" json:"classic_backup_storage,omitempty"`
	ServicePlan          v1.ServicePlan        `protobuf:"varint,2,opt,name=service_plan,json=servicePlan,proto3,enum=global.common.v1.ServicePlan" json:"service_plan,omitempty"`
	OrganizationId       uint64                `protobuf:"varint,3,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
}

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

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

func (*TestClassicBackupAccessRequest) ProtoMessage() {}

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

func (x *TestClassicBackupAccessRequest) GetClassicBackupStorage() *ClassicBackupStorage {
	if x != nil {
		return x.ClassicBackupStorage
	}
	return nil
}

func (x *TestClassicBackupAccessRequest) GetServicePlan() v1.ServicePlan {
	if x != nil {
		return x.ServicePlan
	}
	return v1.ServicePlan(0)
}

func (x *TestClassicBackupAccessRequest) GetOrganizationId() uint64 {
	if x != nil {
		return x.OrganizationId
	}
	return 0
}

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

	Status  TestClassicBackupAccessResponse_Status `protobuf:"varint,1,opt,name=status,proto3,enum=global.nextgen.v1.TestClassicBackupAccessResponse_Status" json:"status,omitempty"`
	Message string                                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	// following fields only return when status is success
	CloudProvider v1.CloudProvider_Name  `protobuf:"varint,3,opt,name=cloud_provider,json=cloudProvider,proto3,enum=global.common.v1.CloudProvider_Name" json:"cloud_provider,omitempty"`
	Region        string                 `protobuf:"bytes,4,opt,name=region,proto3" json:"region,omitempty"`
	Version       string                 `protobuf:"bytes,5,opt,name=version,proto3" json:"version,omitempty"`
	BackupTime    *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=backup_time,json=backupTime,proto3" json:"backup_time,omitempty"`
	DataSizeBytes uint64                 `protobuf:"varint,7,opt,name=data_size_bytes,json=dataSizeBytes,proto3" json:"data_size_bytes,omitempty"`
}

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

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

func (*TestClassicBackupAccessResponse) ProtoMessage() {}

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

func (x *TestClassicBackupAccessResponse) GetStatus() TestClassicBackupAccessResponse_Status {
	if x != nil {
		return x.Status
	}
	return TestClassicBackupAccessResponse_STATUS_UNSPECIFIED
}

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

func (x *TestClassicBackupAccessResponse) GetCloudProvider() v1.CloudProvider_Name {
	if x != nil {
		return x.CloudProvider
	}
	return v1.CloudProvider_Name(0)
}

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

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

func (x *TestClassicBackupAccessResponse) GetBackupTime() *timestamppb.Timestamp {
	if x != nil {
		return x.BackupTime
	}
	return nil
}

func (x *TestClassicBackupAccessResponse) GetDataSizeBytes() uint64 {
	if x != nil {
		return x.DataSizeBytes
	}
	return 0
}

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

	TargetClusterId string `protobuf:"bytes,1,opt,name=target_cluster_id,json=targetClusterId,proto3" json:"target_cluster_id,omitempty"`
}

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

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

func (*StopRestoreClusterRequest) ProtoMessage() {}

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

func (x *StopRestoreClusterRequest) GetTargetClusterId() string {
	if x != nil {
		return x.TargetClusterId
	}
	return ""
}

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

	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
}

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

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

func (*RestoreStatusRequest) ProtoMessage() {}

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

func (x *RestoreStatusRequest) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

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

	// The status of the restore operation
	State RestoreState `protobuf:"varint,1,opt,name=state,proto3,enum=global.nextgen.v1.RestoreState" json:"state,omitempty"`
	// Error message provided if the restore failed
	Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	// Progress percentage (0-100)
	Progress int32 `protobuf:"varint,3,opt,name=progress,proto3" json:"progress,omitempty"`
	// Durable metadata for the restore operation.
	Details *RestoreDetails `protobuf:"bytes,4,opt,name=details,proto3" json:"details,omitempty"`
}

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

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

func (*RestoreStatusResponse) ProtoMessage() {}

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

func (x *RestoreStatusResponse) GetState() RestoreState {
	if x != nil {
		return x.State
	}
	return RestoreState_RESTORE_STATE_UNSPECIFIED
}

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

func (x *RestoreStatusResponse) GetProgress() int32 {
	if x != nil {
		return x.Progress
	}
	return 0
}

func (x *RestoreStatusResponse) GetDetails() *RestoreDetails {
	if x != nil {
		return x.Details
	}
	return nil
}

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

	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
}

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

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

func (*GetBackupSettingRequest) ProtoMessage() {}

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

func (x *GetBackupSettingRequest) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

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

	BackupSetting *BackupSetting `protobuf:"bytes,1,opt,name=backup_setting,json=backupSetting,proto3" json:"backup_setting,omitempty"`
	ValidateOnly  bool           `protobuf:"varint,100,opt,name=validate_only,json=validateOnly,proto3" json:"validate_only,omitempty"`
}

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

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

func (*UpdateBackupSettingRequest) ProtoMessage() {}

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

func (x *UpdateBackupSettingRequest) GetBackupSetting() *BackupSetting {
	if x != nil {
		return x.BackupSetting
	}
	return nil
}

func (x *UpdateBackupSettingRequest) GetValidateOnly() bool {
	if x != nil {
		return x.ValidateOnly
	}
	return false
}

type GetProviderRoleRequest 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"`
}

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

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

func (*GetProviderRoleRequest) ProtoMessage() {}

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

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

type GetCaCertificateDownloadUrlRequest 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"`
}

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

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

func (*GetCaCertificateDownloadUrlRequest) ProtoMessage() {}

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

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

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

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

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

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

func (*CaCertificateDownloadUrl) ProtoMessage() {}

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

func (x *CaCertificateDownloadUrl) GetUri() string {
	if x != nil {
		return x.Uri
	}
	return ""
}

// UpdateClusterProjectRequest is the request to update a cluster's project_id.
type UpdateClusterProjectRequest 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"`
	ProjectId uint64 `protobuf:"varint,2,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
}

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

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

func (*UpdateClusterProjectRequest) ProtoMessage() {}

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

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

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

// UpdateClusterProjectResponse is the response for updating a cluster's project_id.
type UpdateClusterProjectResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*UpdateClusterProjectResponse) ProtoMessage() {}

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

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

	OrganizationId             uint64         `protobuf:"varint,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
	RegionId                   v1.Region_Name `protobuf:"varint,2,opt,name=region_id,json=regionId,proto3,enum=global.common.v1.Region_Name" json:"region_id,omitempty"`
	ServicePlan                v1.ServicePlan `protobuf:"varint,3,opt,name=service_plan,json=servicePlan,proto3,enum=global.common.v1.ServicePlan" json:"service_plan,omitempty"`
	MaxRcu                     int64          `protobuf:"varint,4,opt,name=max_rcu,json=maxRcu,proto3" json:"max_rcu,omitempty"`
	ReservedCapacityTemplateId uint64         `protobuf:"varint,7,opt,name=reserved_capacity_template_id,json=reservedCapacityTemplateId,proto3" json:"reserved_capacity_template_id,omitempty"`
}

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

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

func (*EstimatePriceRequest) ProtoMessage() {}

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

func (x *EstimatePriceRequest) GetOrganizationId() uint64 {
	if x != nil {
		return x.OrganizationId
	}
	return 0
}

func (x *EstimatePriceRequest) GetRegionId() v1.Region_Name {
	if x != nil {
		return x.RegionId
	}
	return v1.Region_Name(0)
}

func (x *EstimatePriceRequest) GetServicePlan() v1.ServicePlan {
	if x != nil {
		return x.ServicePlan
	}
	return v1.ServicePlan(0)
}

func (x *EstimatePriceRequest) GetMaxRcu() int64 {
	if x != nil {
		return x.MaxRcu
	}
	return 0
}

func (x *EstimatePriceRequest) GetReservedCapacityTemplateId() uint64 {
	if x != nil {
		return x.ReservedCapacityTemplateId
	}
	return 0
}

type EstimatePriceResponse 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"`
	Rcu            int64  `protobuf:"varint,3,opt,name=rcu,proto3" json:"rcu,omitempty"`
	RcuCostHourly  string `protobuf:"bytes,4,opt,name=rcu_cost_hourly,json=rcuCostHourly,proto3" json:"rcu_cost_hourly,omitempty"`
	RcuCostMonthly string `protobuf:"bytes,5,opt,name=rcu_cost_monthly,json=rcuCostMonthly,proto3" json:"rcu_cost_monthly,omitempty"`
}

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

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

func (*EstimatePriceResponse) ProtoMessage() {}

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

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

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

func (x *EstimatePriceResponse) GetRcu() int64 {
	if x != nil {
		return x.Rcu
	}
	return 0
}

func (x *EstimatePriceResponse) GetRcuCostHourly() string {
	if x != nil {
		return x.RcuCostHourly
	}
	return ""
}

func (x *EstimatePriceResponse) GetRcuCostMonthly() string {
	if x != nil {
		return x.RcuCostMonthly
	}
	return ""
}

type UpdateClusterDualLayerEncryptionRequest 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"`
	// Types that are assignable to TargetEncryption:
	//
	//	*UpdateClusterDualLayerEncryptionRequest_Cmek
	//	*UpdateClusterDualLayerEncryptionRequest_DefaultKey
	//	*UpdateClusterDualLayerEncryptionRequest_NoEncryption
	TargetEncryption isUpdateClusterDualLayerEncryptionRequest_TargetEncryption `protobuf_oneof:"target_encryption"`
	ValidateOnly     bool                                                       `protobuf:"varint,4,opt,name=validate_only,json=validateOnly,proto3" json:"validate_only,omitempty"`
}

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

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

func (*UpdateClusterDualLayerEncryptionRequest) ProtoMessage() {}

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

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

func (m *UpdateClusterDualLayerEncryptionRequest) GetTargetEncryption() isUpdateClusterDualLayerEncryptionRequest_TargetEncryption {
	if m != nil {
		return m.TargetEncryption
	}
	return nil
}

func (x *UpdateClusterDualLayerEncryptionRequest) GetCmek() *CustomerManagedEncryptionKey {
	if x, ok := x.GetTargetEncryption().(*UpdateClusterDualLayerEncryptionRequest_Cmek); ok {
		return x.Cmek
	}
	return nil
}

func (x *UpdateClusterDualLayerEncryptionRequest) GetDefaultKey() *emptypb.Empty {
	if x, ok := x.GetTargetEncryption().(*UpdateClusterDualLayerEncryptionRequest_DefaultKey); ok {
		return x.DefaultKey
	}
	return nil
}

func (x *UpdateClusterDualLayerEncryptionRequest) GetNoEncryption() *emptypb.Empty {
	if x, ok := x.GetTargetEncryption().(*UpdateClusterDualLayerEncryptionRequest_NoEncryption); ok {
		return x.NoEncryption
	}
	return nil
}

func (x *UpdateClusterDualLayerEncryptionRequest) GetValidateOnly() bool {
	if x != nil {
		return x.ValidateOnly
	}
	return false
}

type isUpdateClusterDualLayerEncryptionRequest_TargetEncryption interface {
	isUpdateClusterDualLayerEncryptionRequest_TargetEncryption()
}

type UpdateClusterDualLayerEncryptionRequest_Cmek struct {
	Cmek *CustomerManagedEncryptionKey `protobuf:"bytes,2,opt,name=cmek,proto3,oneof"`
}

type UpdateClusterDualLayerEncryptionRequest_DefaultKey struct {
	DefaultKey *emptypb.Empty `protobuf:"bytes,3,opt,name=default_key,json=defaultKey,proto3,oneof"`
}

type UpdateClusterDualLayerEncryptionRequest_NoEncryption struct {
	NoEncryption *emptypb.Empty `protobuf:"bytes,5,opt,name=no_encryption,json=noEncryption,proto3,oneof"`
}

func (*UpdateClusterDualLayerEncryptionRequest_Cmek) isUpdateClusterDualLayerEncryptionRequest_TargetEncryption() {
}

func (*UpdateClusterDualLayerEncryptionRequest_DefaultKey) isUpdateClusterDualLayerEncryptionRequest_TargetEncryption() {
}

func (*UpdateClusterDualLayerEncryptionRequest_NoEncryption) isUpdateClusterDualLayerEncryptionRequest_TargetEncryption() {
}

type UpdateClusterDualLayerEncryptionResponse 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"`
}

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

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

func (*UpdateClusterDualLayerEncryptionResponse) ProtoMessage() {}

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

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

type GetClusterEncryptionStatusRequest 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"`
}

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

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

func (*GetClusterEncryptionStatusRequest) ProtoMessage() {}

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

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

type ClusterEncryptionStatus 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"`
	State             ClusterEncryptionStatus_State    `protobuf:"varint,2,opt,name=state,proto3,enum=global.nextgen.v1.ClusterEncryptionStatus_State" json:"state,omitempty"`
	Message           string                           `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"`
	CurrentEncryption *Cluster_DualLayerDataEncryption `protobuf:"bytes,4,opt,name=current_encryption,json=currentEncryption,proto3" json:"current_encryption,omitempty"`
}

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

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

func (*ClusterEncryptionStatus) ProtoMessage() {}

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

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

func (x *ClusterEncryptionStatus) GetState() ClusterEncryptionStatus_State {
	if x != nil {
		return x.State
	}
	return ClusterEncryptionStatus_STATE_UNSPECIFIED
}

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

func (x *ClusterEncryptionStatus) GetCurrentEncryption() *Cluster_DualLayerDataEncryption {
	if x != nil {
		return x.CurrentEncryption
	}
	return nil
}

// ForceUpdateGatewayIdentityRequest is the request to force update gateway identity for a cluster.
type ForceUpdateGatewayIdentityRequest 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"`
	GatewayIdentity string `protobuf:"bytes,2,opt,name=gateway_identity,json=gatewayIdentity,proto3" json:"gateway_identity,omitempty"`
}

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

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

func (*ForceUpdateGatewayIdentityRequest) ProtoMessage() {}

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

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

func (x *ForceUpdateGatewayIdentityRequest) GetGatewayIdentity() string {
	if x != nil {
		return x.GatewayIdentity
	}
	return ""
}

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

	SourceClusterId              uint64                 `protobuf:"varint,1,opt,name=source_cluster_id,json=sourceClusterId,proto3" json:"source_cluster_id,omitempty"`
	RestoreMode                  RestoreMode            `protobuf:"varint,2,opt,name=restore_mode,json=restoreMode,proto3,enum=global.nextgen.v1.RestoreMode" json:"restore_mode,omitempty"`
	BackupId                     uint64                 `protobuf:"varint,3,opt,name=backup_id,json=backupId,proto3" json:"backup_id,omitempty"`
	PointInTime                  *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=point_in_time,json=pointInTime,proto3" json:"point_in_time,omitempty"`
	RestoreRequestedTime         *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=restore_requested_time,json=restoreRequestedTime,proto3" json:"restore_requested_time,omitempty"`
	RestoreUpdatedTime           *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=restore_updated_time,json=restoreUpdatedTime,proto3" json:"restore_updated_time,omitempty"`
	ExpectedRestoreDataSizeBytes uint64                 `protobuf:"varint,7,opt,name=expected_restore_data_size_bytes,json=expectedRestoreDataSizeBytes,proto3" json:"expected_restore_data_size_bytes,omitempty"`
	SourceRegionId               string                 `protobuf:"bytes,8,opt,name=source_region_id,json=sourceRegionId,proto3" json:"source_region_id,omitempty"`
	SourceCloudProvider          v1.CloudProvider_Name  `protobuf:"varint,9,opt,name=source_cloud_provider,json=sourceCloudProvider,proto3,enum=global.common.v1.CloudProvider_Name" json:"source_cloud_provider,omitempty"`
	SourceServicePlan            v1.ServicePlan         `protobuf:"varint,10,opt,name=source_service_plan,json=sourceServicePlan,proto3,enum=global.common.v1.ServicePlan" json:"source_service_plan,omitempty"`
}

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

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

func (*RestoreDetails) ProtoMessage() {}

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

func (x *RestoreDetails) GetSourceClusterId() uint64 {
	if x != nil {
		return x.SourceClusterId
	}
	return 0
}

func (x *RestoreDetails) GetRestoreMode() RestoreMode {
	if x != nil {
		return x.RestoreMode
	}
	return RestoreMode_RESTORE_MODE_UNSPECIFIED
}

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

func (x *RestoreDetails) GetPointInTime() *timestamppb.Timestamp {
	if x != nil {
		return x.PointInTime
	}
	return nil
}

func (x *RestoreDetails) GetRestoreRequestedTime() *timestamppb.Timestamp {
	if x != nil {
		return x.RestoreRequestedTime
	}
	return nil
}

func (x *RestoreDetails) GetRestoreUpdatedTime() *timestamppb.Timestamp {
	if x != nil {
		return x.RestoreUpdatedTime
	}
	return nil
}

func (x *RestoreDetails) GetExpectedRestoreDataSizeBytes() uint64 {
	if x != nil {
		return x.ExpectedRestoreDataSizeBytes
	}
	return 0
}

func (x *RestoreDetails) GetSourceRegionId() string {
	if x != nil {
		return x.SourceRegionId
	}
	return ""
}

func (x *RestoreDetails) GetSourceCloudProvider() v1.CloudProvider_Name {
	if x != nil {
		return x.SourceCloudProvider
	}
	return v1.CloudProvider_Name(0)
}

func (x *RestoreDetails) GetSourceServicePlan() v1.ServicePlan {
	if x != nil {
		return x.SourceServicePlan
	}
	return v1.ServicePlan(0)
}

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

	// Types that are assignable to Key:
	//
	//	*Cluster_DualLayerDataEncryption_NoEncryption
	//	*Cluster_DualLayerDataEncryption_DefaultKey
	//	*Cluster_DualLayerDataEncryption_Cmek
	Key isCluster_DualLayerDataEncryption_Key `protobuf_oneof:"key"`
}

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

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

func (*Cluster_DualLayerDataEncryption) ProtoMessage() {}

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

func (m *Cluster_DualLayerDataEncryption) GetKey() isCluster_DualLayerDataEncryption_Key {
	if m != nil {
		return m.Key
	}
	return nil
}

func (x *Cluster_DualLayerDataEncryption) GetNoEncryption() *emptypb.Empty {
	if x, ok := x.GetKey().(*Cluster_DualLayerDataEncryption_NoEncryption); ok {
		return x.NoEncryption
	}
	return nil
}

func (x *Cluster_DualLayerDataEncryption) GetDefaultKey() *emptypb.Empty {
	if x, ok := x.GetKey().(*Cluster_DualLayerDataEncryption_DefaultKey); ok {
		return x.DefaultKey
	}
	return nil
}

func (x *Cluster_DualLayerDataEncryption) GetCmek() *CustomerManagedEncryptionKey {
	if x, ok := x.GetKey().(*Cluster_DualLayerDataEncryption_Cmek); ok {
		return x.Cmek
	}
	return nil
}

type isCluster_DualLayerDataEncryption_Key interface {
	isCluster_DualLayerDataEncryption_Key()
}

type Cluster_DualLayerDataEncryption_NoEncryption struct {
	NoEncryption *emptypb.Empty `protobuf:"bytes,1,opt,name=no_encryption,json=noEncryption,proto3,oneof"`
}

type Cluster_DualLayerDataEncryption_DefaultKey struct {
	DefaultKey *emptypb.Empty `protobuf:"bytes,2,opt,name=default_key,json=defaultKey,proto3,oneof"`
}

type Cluster_DualLayerDataEncryption_Cmek struct {
	Cmek *CustomerManagedEncryptionKey `protobuf:"bytes,3,opt,name=cmek,proto3,oneof"`
}

func (*Cluster_DualLayerDataEncryption_NoEncryption) isCluster_DualLayerDataEncryption_Key() {}

func (*Cluster_DualLayerDataEncryption_DefaultKey) isCluster_DualLayerDataEncryption_Key() {}

func (*Cluster_DualLayerDataEncryption_Cmek) isCluster_DualLayerDataEncryption_Key() {}

var File_global_nextgen_v1_cluster_proto protoreflect.FileDescriptor

var file_global_nextgen_v1_cluster_proto_rawDesc = []byte{
	0x0a, 0x1f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2f, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e,
	0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x12, 0x11, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x2e, 0x76, 0x31, 0x1a, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2f, 0x63, 0x6f, 0x6d,
	0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73,
	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2f, 0x63,
	0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x25, 0x67, 0x6c, 0x6f,
	0x62, 0x61, 0x6c, 0x2f, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62,
	0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2f, 0x6e, 0x65, 0x78, 0x74, 0x67,
	0x65, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6d, 0x65, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x1a, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2f, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e,
	0x2f, 0x76, 0x31, 0x2f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x1a, 0x25, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2f, 0x6e, 0x65, 0x78, 0x74, 0x67,
	0x65, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x6c, 0x61, 0x6e, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61,
	0x79, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x32, 0x67, 0x6c, 0x6f, 0x62, 0x61,
	0x6c, 0x2f, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x73,
	0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x5f, 0x74,
	0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67,
	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f,
	0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b,
	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
	0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f,
	0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d,
	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x90, 0x16, 0x0a,
	0x07, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41,
	0x02, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x0f,
	0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x6f, 0x72, 0x67, 0x61,
	0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03,
	0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x51, 0x0a, 0x14,
	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f,
	0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12,
	0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d,
	0x65, 0x12, 0x40, 0x0a, 0x0b, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65,
	0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
	0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54,
	0x69, 0x6d, 0x65, 0x12, 0x55, 0x0a, 0x11, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f,
	0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24,
	0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76,
	0x31, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e,
	0x4e, 0x61, 0x6d, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
	0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x09, 0x72, 0x65,
	0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e,
	0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
	0x2e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x42, 0x03, 0xe0, 0x41,
	0x02, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x0d, 0x72,
	0x6f, 0x6f, 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x09, 0x20, 0x01,
	0x28, 0x09, 0x42, 0x06, 0xe0, 0x41, 0x01, 0xe0, 0x41, 0x04, 0x52, 0x0c, 0x72, 0x6f, 0x6f, 0x74,
	0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73,
	0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x07,
	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x11, 0x68, 0x61, 0x73, 0x5f, 0x72,
	0x6f, 0x6f, 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x0d, 0x20, 0x01,
	0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x68, 0x61, 0x73, 0x52, 0x6f, 0x6f, 0x74,
	0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x3b, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74,
	0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c,
	0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05,
	0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x4e, 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f,
	0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x67, 0x6c,
	0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e,
	0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x53, 0x74,
	0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68,
	0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x3c, 0x0a, 0x18, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x62,
	0x61, 0x73, 0x65, 0x64, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
	0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x15, 0x74, 0x6f,
	0x6b, 0x65, 0x6e, 0x42, 0x61, 0x73, 0x65, 0x64, 0x41, 0x75, 0x74, 0x68, 0x45, 0x6e, 0x61, 0x62,
	0x6c, 0x65, 0x64, 0x12, 0x33, 0x0a, 0x13, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x69,
	0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09,
	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x44, 0x69, 0x73,
	0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x5f,
	0x72, 0x63, 0x75, 0x18, 0x12, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06,
	0x6d, 0x69, 0x6e, 0x52, 0x63, 0x75, 0x12, 0x1c, 0x0a, 0x07, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x63,
	0x75, 0x18, 0x13, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x6d, 0x61,
	0x78, 0x52, 0x63, 0x75, 0x12, 0x45, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f,
	0x70, 0x6c, 0x61, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x67, 0x6c, 0x6f,
	0x62, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x6e, 0x12, 0x6a, 0x0a, 0x16, 0x68,
	0x69, 0x67, 0x68, 0x5f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79,
	0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x67, 0x6c,
	0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e,
	0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x48, 0x69, 0x67, 0x68, 0x41, 0x76, 0x61, 0x69,
	0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41,
	0x05, 0x52, 0x14, 0x68, 0x69, 0x67, 0x68, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c,
	0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x33, 0x0a, 0x13, 0x72, 0x65, 0x67, 0x69, 0x6f,
	0x6e, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x16,
	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x72, 0x65, 0x67, 0x69, 0x6f,
	0x6e, 0x4c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x09,
	0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x17, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x1b, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e,
	0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41,
	0x03, 0x52, 0x09, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x0e,
	0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x18,
	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65,
	0x64, 0x50, 0x6f, 0x6f, 0x6c, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x70,
	0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
	0x41, 0x03, 0x52, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x49, 0x64, 0x12,
	0x2f, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x5f, 0x69, 0x64, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
	0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64,
	0x12, 0x51, 0x0a, 0x21, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x73,
	0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xe0, 0x41, 0x01,
	0xe0, 0x41, 0x04, 0x52, 0x1e, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x50, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77,
	0x6f, 0x72, 0x64, 0x12, 0x57, 0x0a, 0x24, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64,
	0x5f, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x6d,
	0x69, 0x6e, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28,
	0x09, 0x42, 0x06, 0xe0, 0x41, 0x01, 0xe0, 0x41, 0x04, 0x52, 0x21, 0x65, 0x6e, 0x63, 0x72, 0x79,
	0x70, 0x74, 0x65, 0x64, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x41,
	0x64, 0x6d, 0x69, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x74, 0x0a, 0x1a,
	0x64, 0x75, 0x61, 0x6c, 0x5f, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f,
	0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x32, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x44, 0x75, 0x61,
	0x6c, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x17, 0x64, 0x75, 0x61, 0x6c, 0x4c,
	0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x64,
	0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x72,
	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03,
	0xe0, 0x41, 0x02, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1d,
	0x0a, 0x0a, 0x72, 0x75, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x20, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x09, 0x72, 0x75, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x4f, 0x0a,
	0x13, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x64, 0x5f, 0x61, 0x74, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x63, 0x61, 0x70,
	0x61, 0x63, 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x46,
	0x0a, 0x1d, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63,
	0x69, 0x74, 0x79, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18,
	0x23, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x1a, 0x72, 0x65, 0x73, 0x65,
	0x72, 0x76, 0x65, 0x64, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x54, 0x65, 0x6d, 0x70,
	0x6c, 0x61, 0x74, 0x65, 0x49, 0x64, 0x12, 0x6e, 0x0a, 0x1a, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x65, 0x64, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x65, 0x6d, 0x70,
	0x6c, 0x61, 0x74, 0x65, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6c, 0x6f,
	0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x52,
	0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x54,
	0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x18, 0x72, 0x65,
	0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x54, 0x65,
	0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x40, 0x0a, 0x1a, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x25, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
	0x17, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x44, 0x69, 0x73,
	0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x5c, 0x0a, 0x14, 0x70, 0x6c, 0x61, 0x6e,
	0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x18, 0x26, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e,
	0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6c, 0x61, 0x6e, 0x52,
	0x65, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x03, 0xe0,
	0x41, 0x03, 0x52, 0x12, 0x70, 0x6c, 0x61, 0x6e, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72,
	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x4f, 0x0a, 0x13, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61,
	0x74, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x5f, 0x61, 0x74, 0x18, 0x27, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42,
	0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x52,
	0x65, 0x73, 0x75, 0x6d, 0x65, 0x41, 0x74, 0x1a, 0xe1, 0x01, 0x0a, 0x17, 0x44, 0x75, 0x61, 0x6c,
	0x4c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x3d, 0x0a, 0x0d, 0x6e, 0x6f, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
	0x74, 0x79, 0x48, 0x00, 0x52, 0x0c, 0x6e, 0x6f, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x0b, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x6b, 0x65,
	0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x48,
	0x00, 0x52, 0x0a, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x45, 0x0a,
	0x04, 0x63, 0x6d, 0x65, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6c,
	0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e,
	0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x64, 0x45,
	0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x48, 0x00, 0x52, 0x04,
	0x63, 0x6d, 0x65, 0x6b, 0x42, 0x05, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x22, 0x57, 0x0a, 0x14, 0x48,
	0x69, 0x67, 0x68, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54,
	0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x22, 0x48, 0x49, 0x47, 0x48, 0x5f, 0x41, 0x56, 0x41, 0x49,
	0x4c, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e,
	0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x52,
	0x45, 0x47, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x5a, 0x4f, 0x4e,
	0x41, 0x4c, 0x10, 0x02, 0x22, 0x47, 0x0a, 0x0b, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x53, 0x74,
	0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x48, 0x45, 0x41, 0x4c, 0x54, 0x48, 0x5f, 0x53, 0x54,
	0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
	0x00, 0x12, 0x0b, 0x0a, 0x07, 0x48, 0x45, 0x41, 0x4c, 0x54, 0x48, 0x59, 0x10, 0x01, 0x12, 0x0d,
	0x0a, 0x09, 0x55, 0x4e, 0x48, 0x45, 0x41, 0x4c, 0x54, 0x48, 0x59, 0x10, 0x02, 0x22, 0x8f, 0x01,
	0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45,
	0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c,
	0x0a, 0x08, 0x43, 0x52, 0x45, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09,
	0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x4d,
	0x4f, 0x44, 0x49, 0x46, 0x59, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e,
	0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x44,
	0x45, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x05, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x41, 0x55, 0x53,
	0x49, 0x4e, 0x47, 0x10, 0x06, 0x12, 0x0a, 0x0a, 0x06, 0x50, 0x41, 0x55, 0x53, 0x45, 0x44, 0x10,
	0x07, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x45, 0x53, 0x55, 0x4d, 0x49, 0x4e, 0x47, 0x10, 0x08, 0x22,
	0x89, 0x01, 0x0a, 0x0c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65,
	0x12, 0x31, 0x0a, 0x12, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x69, 0x61, 0x6d, 0x5f, 0x69, 0x64,
	0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
	0x03, 0x52, 0x10, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x49, 0x61, 0x6d, 0x49, 0x64, 0x65, 0x6e, 0x74,
	0x69, 0x74, 0x79, 0x12, 0x20, 0x0a, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x08, 0x6e, 0x6f, 0x64,
	0x65, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x24, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
	0x0a, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x64, 0x22, 0xc4, 0x01, 0x0a, 0x14,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x39, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e,
	0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12,
	0x28, 0x0a, 0x0d, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x76, 0x61, 0x6c,
	0x69, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x32, 0x0a, 0x10, 0x72, 0x65, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x00, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x13, 0x0a,
	0x11, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f,
	0x69, 0x64, 0x22, 0x99, 0x05, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0b, 0x63, 0x6c,
	0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x42,
	0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73,
	0x12, 0x2e, 0x0a, 0x10, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
	0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73,
	0x12, 0x57, 0x0a, 0x12, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64,
	0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x67,
	0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e,
	0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4e, 0x61,
	0x6d, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x10, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72,
	0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x41, 0x0a, 0x0a, 0x72, 0x65, 0x67,
	0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x1d, 0x2e,
	0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
	0x2e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x42, 0x03, 0xe0, 0x41,
	0x01, 0x52, 0x09, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x12, 0x3d, 0x0a, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x67,
	0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31,
	0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03,
	0xe0, 0x41, 0x01, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x12, 0x4c, 0x0a, 0x0e, 0x65,
	0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x18, 0x06, 0x20,
	0x03, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78,
	0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e,
	0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0d, 0x65, 0x78, 0x63, 0x6c,
	0x75, 0x64, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0c, 0x73, 0x68, 0x6f,
	0x77, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x42,
	0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x73, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x64, 0x12, 0x26, 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x73, 0x68,
	0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x47, 0x0a, 0x0d, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0e,
	0x32, 0x1d, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
	0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x6e, 0x42,
	0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61,
	0x6e, 0x73, 0x12, 0x2f, 0x0a, 0x11, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70,
	0x6f, 0x6f, 0x6c, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x04, 0x42, 0x03, 0xe0,
	0x41, 0x01, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c,
	0x49, 0x64, 0x73, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65,
	0x18, 0x64, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67,
	0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x65, 0x20,
	0x01, 0x28, 0x0d, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x22, 0x64,
	0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x08, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61,
	0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x52, 0x08, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x12, 0x14,
	0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74,
	0x6f, 0x74, 0x61, 0x6c, 0x22, 0x5f, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0,
	0x41, 0x02, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x26, 0x0a,
	0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x73, 0x68, 0x6f, 0x77, 0x44, 0x65,
	0x6c, 0x65, 0x74, 0x65, 0x64, 0x22, 0x64, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a,
	0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x04, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49,
	0x64, 0x12, 0x28, 0x0a, 0x0d, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x6e,
	0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x76,
	0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0x7b, 0x0a, 0x14, 0x55,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x39, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65,
	0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x28,
	0x0a, 0x0d, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x76, 0x61, 0x6c, 0x69,
	0x64, 0x61, 0x74, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0x53, 0x0a, 0x1a, 0x43, 0x68, 0x61, 0x6e,
	0x67, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x50, 0x61, 0x73, 0x73, 0x77, 0x64, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x73, 0x73, 0x77, 0x64, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x73, 0x73, 0x77, 0x64, 0x22, 0x35, 0x0a,
	0x1b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x50, 0x61,
	0x73, 0x73, 0x77, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06,
	0x73, 0x79, 0x6e, 0x63, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x79,
	0x6e, 0x63, 0x65, 0x64, 0x22, 0xf1, 0x03, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x63, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73,
	0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e,
	0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75,
	0x70, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x73, 0x74,
	0x61, 0x74, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
	0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x72,
	0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x12, 0x4f, 0x0a, 0x0d, 0x74, 0x72, 0x69, 0x67,
	0x67, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0e, 0x32,
	0x25, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e,
	0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x54, 0x72, 0x69, 0x67, 0x67,
	0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x74, 0x72, 0x69,
	0x67, 0x67, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x3e, 0x0a, 0x0a, 0x73, 0x74, 0x61,
	0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
	0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09,
	0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x08, 0x65, 0x6e, 0x64,
	0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
	0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x07, 0x65, 0x6e,
	0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f,
	0x69, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09,
	0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x64, 0x73, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67,
	0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x64, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41,
	0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70,
	0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x65, 0x20, 0x01, 0x28, 0x09, 0x42,
	0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12,
	0x17, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x66, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0,
	0x41, 0x01, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x22, 0x98, 0x01, 0x0a, 0x1a, 0x4c, 0x69, 0x73,
	0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x07, 0x62, 0x61, 0x63, 0x6b, 0x75,
	0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61,
	0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x63,
	0x6b, 0x75, 0x70, 0x52, 0x07, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a,
	0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x6e,
	0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f,
	0x6b, 0x65, 0x6e, 0x22, 0x62, 0x0a, 0x1a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x09, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f,
	0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x62,
	0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x64, 0x22, 0x8c, 0x03, 0x0a, 0x15, 0x52, 0x65, 0x73, 0x74,
	0x6f, 0x72, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x2f, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
	0x02, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x49, 0x64, 0x12, 0x2f, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
	0x41, 0x01, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x6d,
	0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x67, 0x6c, 0x6f, 0x62,
	0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65,
	0x73, 0x74, 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b,
	0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x09, 0x62,
	0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
	0xe0, 0x41, 0x01, 0x52, 0x08, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x64, 0x12, 0x43, 0x0a,
	0x0d, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
	0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x6e, 0x54, 0x69,
	0x6d, 0x65, 0x12, 0x62, 0x0a, 0x16, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x63, 0x5f, 0x62, 0x61,
	0x63, 0x6b, 0x75, 0x70, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74,
	0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x63, 0x42, 0x61,
	0x63, 0x6b, 0x75, 0x70, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01,
	0x52, 0x14, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x63, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53,
	0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x22, 0xe8, 0x01, 0x0a, 0x14, 0x43, 0x6c, 0x61, 0x73, 0x73,
	0x69, 0x63, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12,
	0x50, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c,
	0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64,
	0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x42, 0x03, 0xe0,
	0x41, 0x02, 0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x12, 0x1b, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x22,
	0x0a, 0x0a, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x55,
	0x72, 0x69, 0x12, 0x3d, 0x0a, 0x04, 0x61, 0x75, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x24, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x74, 0x6f, 0x72, 0x61,
	0x67, 0x65, 0x41, 0x75, 0x74, 0x68, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x61, 0x75, 0x74,
	0x68, 0x22, 0x6d, 0x0a, 0x11, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x74, 0x6f, 0x72, 0x61,
	0x67, 0x65, 0x41, 0x75, 0x74, 0x68, 0x12, 0x27, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73,
	0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
	0x41, 0x02, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x12,
	0x2f, 0x0a, 0x11, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x65,
	0x63, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
	0x0f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74,
	0x22, 0xf9, 0x01, 0x0a, 0x1e, 0x54, 0x65, 0x73, 0x74, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x63,
	0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x62, 0x0a, 0x16, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x63, 0x5f, 0x62,
	0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78,
	0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x63, 0x42,
	0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x42, 0x03, 0xe0, 0x41,
	0x02, 0x52, 0x14, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x63, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70,
	0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x45, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e,
	0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
	0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x6e, 0x42, 0x03, 0xe0, 0x41,
	0x02, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x6e, 0x12, 0x2c,
	0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
	0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x6f, 0x72,
	0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x93, 0x04, 0x0a,
	0x1f, 0x54, 0x65, 0x73, 0x74, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x63, 0x42, 0x61, 0x63, 0x6b,
	0x75, 0x70, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x56, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
	0x32, 0x39, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x63,
	0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03,
	0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73,
	0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07,
	0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x50, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
	0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x24, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e,
	0x76, 0x31, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
	0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x75,
	0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x06, 0x72, 0x65, 0x67,
	0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x06,
	0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
	0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x76, 0x65,
	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x0b, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f,
	0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x62, 0x61, 0x63,
	0x6b, 0x75, 0x70, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x0f, 0x64, 0x61, 0x74, 0x61, 0x5f,
	0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04,
	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x64, 0x61, 0x74, 0x61, 0x53, 0x69, 0x7a, 0x65, 0x42,
	0x79, 0x74, 0x65, 0x73, 0x22, 0x7c, 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, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53,
	0x53, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x4e, 0x4f, 0x5f, 0x53, 0x55, 0x43, 0x48, 0x5f, 0x42,
	0x55, 0x43, 0x4b, 0x45, 0x54, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x49, 0x4c, 0x4c, 0x45, 0x47,
	0x41, 0x4c, 0x5f, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x41,
	0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x44, 0x45, 0x4e, 0x49, 0x45, 0x44, 0x10, 0x04, 0x12, 0x12,
	0x0a, 0x0e, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x53,
	0x10, 0x05, 0x22, 0x4c, 0x0a, 0x19, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72,
	0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x2f, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
	0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64,
	0x22, 0x3a, 0x0a, 0x14, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
	0x02, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x22, 0xd5, 0x01, 0x0a,
	0x15, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e,
	0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72,
	0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61,
	0x74, 0x65, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
	0x65, 0x12, 0x1f, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65,
	0x73, 0x73, 0x12, 0x40, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78,
	0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x44,
	0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x64, 0x65, 0x74,
	0x61, 0x69, 0x6c, 0x73, 0x22, 0x3d, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75,
	0x70, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x22, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x49, 0x64, 0x22, 0x94, 0x01, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61,
	0x63, 0x6b, 0x75, 0x70, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x4c, 0x0a, 0x0e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x73, 0x65, 0x74,
	0x74, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6c, 0x6f,
	0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x42,
	0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x42, 0x03, 0xe0, 0x41,
	0x02, 0x52, 0x0d, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67,
	0x12, 0x28, 0x0a, 0x0d, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x6c,
	0x79, 0x18, 0x64, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x76, 0x61,
	0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0x3c, 0x0a, 0x16, 0x47, 0x65,
	0x74, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x63,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x22, 0x48, 0x0a, 0x22, 0x47, 0x65, 0x74, 0x43,
	0x61, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x6f, 0x77, 0x6e,
	0x6c, 0x6f, 0x61, 0x64, 0x55, 0x72, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22,
	0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x49, 0x64, 0x22, 0x31, 0x0a, 0x18, 0x43, 0x61, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63,
	0x61, 0x74, 0x65, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x55, 0x72, 0x6c, 0x12, 0x15,
	0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03,
	0x52, 0x03, 0x75, 0x72, 0x69, 0x22, 0x5b, 0x0a, 0x1b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 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, 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, 0x22, 0x1e, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0xb2, 0x02, 0x0a, 0x14, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x50,
	0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x0f, 0x6f,
	0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x6f, 0x72, 0x67, 0x61, 0x6e,
	0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x09, 0x72, 0x65, 0x67,
	0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x67,
	0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e,
	0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02,
	0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x45, 0x0a, 0x0c, 0x73, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e,
	0x32, 0x1d, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
	0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x6e, 0x42,
	0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61,
	0x6e, 0x12, 0x1c, 0x0a, 0x07, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x63, 0x75, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x52, 0x63, 0x75, 0x12,
	0x46, 0x0a, 0x1d, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x70, 0x61,
	0x63, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x64,
	0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x1a, 0x72, 0x65, 0x73,
	0x65, 0x72, 0x76, 0x65, 0x64, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x54, 0x65, 0x6d,
	0x70, 0x6c, 0x61, 0x74, 0x65, 0x49, 0x64, 0x22, 0xba, 0x01, 0x0a, 0x15, 0x45, 0x73, 0x74, 0x69,
	0x6d, 0x61, 0x74, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	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, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69,
	0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e,
	0x12, 0x10, 0x0a, 0x03, 0x72, 0x63, 0x75, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x72,
	0x63, 0x75, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x63, 0x75, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x68,
	0x6f, 0x75, 0x72, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x63, 0x75,
	0x43, 0x6f, 0x73, 0x74, 0x48, 0x6f, 0x75, 0x72, 0x6c, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x63,
	0x75, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x63, 0x75, 0x43, 0x6f, 0x73, 0x74, 0x4d, 0x6f, 0x6e,
	0x74, 0x68, 0x6c, 0x79, 0x22, 0xcd, 0x02, 0x0a, 0x27, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x44, 0x75, 0x61, 0x6c, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x45,
	0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x49, 0x64, 0x12, 0x45, 0x0a, 0x04, 0x63, 0x6d, 0x65, 0x6b, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74,
	0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x4d,
	0x61, 0x6e, 0x61, 0x67, 0x65, 0x64, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x4b, 0x65, 0x79, 0x48, 0x00, 0x52, 0x04, 0x63, 0x6d, 0x65, 0x6b, 0x12, 0x39, 0x0a, 0x0b, 0x64,
	0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
	0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x48, 0x00, 0x52, 0x0a, 0x64, 0x65, 0x66, 0x61,
	0x75, 0x6c, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x3d, 0x0a, 0x0d, 0x6e, 0x6f, 0x5f, 0x65, 0x6e, 0x63,
	0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e,
	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
	0x45, 0x6d, 0x70, 0x74, 0x79, 0x48, 0x00, 0x52, 0x0c, 0x6e, 0x6f, 0x45, 0x6e, 0x63, 0x72, 0x79,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x0d, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74,
	0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41,
	0x01, 0x52, 0x0c, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x42,
	0x13, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x22, 0x49, 0x0a, 0x28, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6c,
	0x75, 0x73, 0x74, 0x65, 0x72, 0x44, 0x75, 0x61, 0x6c, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e,
	0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	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, 0x22,
	0x47, 0x0a, 0x21, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x63,
	0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x63,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x22, 0xb9, 0x02, 0x0a, 0x17, 0x43, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 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, 0x46, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x30, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74,
	0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x45, 0x6e,
	0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x53,
	0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d,
	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65,
	0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x61, 0x0a, 0x12, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74,
	0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67,
	0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x44, 0x75,
	0x61, 0x6c, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x63, 0x72, 0x79,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x6e,
	0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3a, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74,
	0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45,
	0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x4d, 0x4f, 0x44, 0x49,
	0x46, 0x59, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x4e, 0x41, 0x42, 0x4c,
	0x45, 0x44, 0x10, 0x02, 0x22, 0x77, 0x0a, 0x21, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69,
	0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0,
	0x41, 0x02, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2e, 0x0a,
	0x10, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74,
	0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0xc9, 0x05,
	0x0a, 0x0e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
	0x12, 0x2f, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03,
	0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49,
	0x64, 0x12, 0x46, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x6d, 0x6f, 0x64,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c,
	0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x74,
	0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x72, 0x65,
	0x73, 0x74, 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x09, 0x62, 0x61, 0x63,
	0x6b, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41,
	0x03, 0x52, 0x08, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x64, 0x12, 0x43, 0x0a, 0x0d, 0x70,
	0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03,
	0xe0, 0x41, 0x03, 0x52, 0x0b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x6e, 0x54, 0x69, 0x6d, 0x65,
	0x12, 0x55, 0x0a, 0x16, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
	0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41,
	0x03, 0x52, 0x14, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x51, 0x0a, 0x14, 0x72, 0x65, 0x73, 0x74, 0x6f,
	0x72, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
	0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x55,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x4b, 0x0a, 0x20, 0x65, 0x78,
	0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x64,
	0x61, 0x74, 0x61, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x1c, 0x65, 0x78, 0x70, 0x65, 0x63,
	0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x53, 0x69,
	0x7a, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28,
	0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65,
	0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x5d, 0x0a, 0x15, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18,
	0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x63,
	0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72,
	0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03,
	0x52, 0x13, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f,
	0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x52, 0x0a, 0x13, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x18, 0x0a, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
	0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61,
	0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x6e, 0x2a, 0xd0, 0x01, 0x0a, 0x0c, 0x52, 0x65,
	0x73, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x52, 0x45,
	0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50,
	0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x45, 0x53,
	0x54, 0x4f, 0x52, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f,
	0x57, 0x4e, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x45, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f,
	0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12,
	0x19, 0x0a, 0x15, 0x52, 0x45, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45,
	0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x45,
	0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x55, 0x43, 0x43,
	0x45, 0x53, 0x53, 0x10, 0x04, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x45, 0x53, 0x54, 0x4f, 0x52, 0x45,
	0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x05, 0x12,
	0x1b, 0x0a, 0x17, 0x52, 0x45, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45,
	0x5f, 0x43, 0x41, 0x4e, 0x43, 0x45, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0x06, 0x2a, 0xa5, 0x01, 0x0a,
	0x0b, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x18,
	0x52, 0x45, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53,
	0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x45,
	0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53,
	0x48, 0x4f, 0x54, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x52, 0x45, 0x53, 0x54, 0x4f, 0x52, 0x45,
	0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x49, 0x54, 0x52, 0x10, 0x02, 0x12, 0x23, 0x0a, 0x1f,
	0x52, 0x45, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x44, 0x45, 0x44,
	0x49, 0x43, 0x41, 0x54, 0x45, 0x44, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x10,
	0x03, 0x12, 0x21, 0x0a, 0x1d, 0x52, 0x45, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x4d, 0x4f, 0x44,
	0x45, 0x5f, 0x43, 0x4c, 0x41, 0x53, 0x53, 0x49, 0x43, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48,
	0x4f, 0x54, 0x10, 0x04, 0x32, 0xb7, 0x11, 0x0a, 0x0e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x54, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x27, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61,
	0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67,
	0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x5f, 0x0a,
	0x0c, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x12, 0x26, 0x2e,
	0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76,
	0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e,
	0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c,
	0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e,
	0x0a, 0x0a, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x24, 0x2e, 0x67,
	0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31,
	0x2e, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74,
	0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x54,
	0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12,
	0x27, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e,
	0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61,
	0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x12, 0x54, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6c,
	0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x27, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e,
	0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a,
	0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e,
	0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x76, 0x0a, 0x13, 0x43, 0x68,
	0x61, 0x6e, 0x67, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x50, 0x61, 0x73, 0x73, 0x77,
	0x64, 0x12, 0x2d, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67,
	0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x50, 0x61, 0x73, 0x73, 0x77, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x2e, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x50, 0x61, 0x73, 0x73, 0x77, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x00, 0x12, 0x71, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x12, 0x2c, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61,
	0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e,
	0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x2d, 0x2e, 0x67,
	0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31,
	0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x42, 0x61,
	0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f,
	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
	0x70, 0x74, 0x79, 0x12, 0x52, 0x0a, 0x0e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x6c,
	0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x28, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e,
	0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72,
	0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
	0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x80, 0x01, 0x0a, 0x17, 0x54, 0x65, 0x73, 0x74,
	0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x63, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x41, 0x63, 0x63,
	0x65, 0x73, 0x73, 0x12, 0x31, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78,
	0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x43, 0x6c, 0x61, 0x73,
	0x73, 0x69, 0x63, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e,
	0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x43,
	0x6c, 0x61, 0x73, 0x73, 0x69, 0x63, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x41, 0x63, 0x63, 0x65,
	0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x0d, 0x52, 0x65,
	0x73, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x27, 0x2e, 0x67, 0x6c,
	0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e,
	0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65,
	0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65,
	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5a,
	0x0a, 0x12, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x6c, 0x75,
	0x73, 0x74, 0x65, 0x72, 0x12, 0x2c, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65,
	0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x73,
	0x74, 0x6f, 0x72, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x60, 0x0a, 0x10, 0x47, 0x65,
	0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x2a,
	0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e,
	0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x65, 0x74, 0x74,
	0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x67, 0x6c, 0x6f,
	0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x42,
	0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x66, 0x0a, 0x13,
	0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x65, 0x74, 0x74,
	0x69, 0x6e, 0x67, 0x12, 0x2d, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78,
	0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61,
	0x63, 0x6b, 0x75, 0x70, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x20, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74,
	0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x65, 0x74,
	0x74, 0x69, 0x6e, 0x67, 0x12, 0x5d, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x76, 0x69,
	0x64, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x29, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c,
	0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50,
	0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74,
	0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52,
	0x6f, 0x6c, 0x65, 0x12, 0x81, 0x01, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x43, 0x61, 0x43, 0x65, 0x72,
	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64,
	0x55, 0x72, 0x6c, 0x12, 0x35, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78,
	0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x61, 0x43, 0x65, 0x72,
	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64,
	0x55, 0x72, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x67, 0x6c, 0x6f,
	0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43,
	0x61, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x6f, 0x77, 0x6e,
	0x6c, 0x6f, 0x61, 0x64, 0x55, 0x72, 0x6c, 0x12, 0x77, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12,
	0x2e, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e,
	0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x2f, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e,
	0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x9b, 0x01, 0x0a, 0x20, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x44, 0x75, 0x61, 0x6c, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x63, 0x72, 0x79,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e,
	0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x44, 0x75, 0x61, 0x6c, 0x4c, 0x61, 0x79, 0x65, 0x72,
	0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x3b, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67,
	0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x44, 0x75, 0x61, 0x6c, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x63, 0x72,
	0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7e,
	0x0a, 0x1a, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x63, 0x72,
	0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x34, 0x2e, 0x67,
	0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31,
	0x2e, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x63, 0x72, 0x79,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74,
	0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x45, 0x6e,
	0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x6a,
	0x0a, 0x1a, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x34, 0x2e, 0x67,
	0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31,
	0x2e, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x62, 0x0a, 0x0d, 0x45, 0x73,
	0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x27, 0x2e, 0x67, 0x6c,
	0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e,
	0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65,
	0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74,
	0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0xe0,
	0x01, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x6e, 0x65,
	0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x42, 0x0c, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x51, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
	0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x74, 0x69, 0x64, 0x62, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x74,
	0x69, 0x64, 0x62, 0x2d, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2d, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x2f,
	0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2f, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2f, 0x76,
	0x31, 0x3b, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x47, 0x4e,
	0x58, 0xaa, 0x02, 0x11, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x4e, 0x65, 0x78, 0x74, 0x67,
	0x65, 0x6e, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x12, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x5c,
	0x4e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1e, 0x47, 0x6c, 0x6f,
	0x62, 0x61, 0x6c, 0x5f, 0x5c, 0x4e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x5c, 0x56, 0x31, 0x5c,
	0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x13, 0x47, 0x6c,
	0x6f, 0x62, 0x61, 0x6c, 0x3a, 0x3a, 0x4e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x3a, 0x3a, 0x56,
	0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_global_nextgen_v1_cluster_proto_rawDescOnce sync.Once
	file_global_nextgen_v1_cluster_proto_rawDescData = file_global_nextgen_v1_cluster_proto_rawDesc
)

func file_global_nextgen_v1_cluster_proto_rawDescGZIP() []byte {
	file_global_nextgen_v1_cluster_proto_rawDescOnce.Do(func() {
		file_global_nextgen_v1_cluster_proto_rawDescData = protoimpl.X.CompressGZIP(file_global_nextgen_v1_cluster_proto_rawDescData)
	})
	return file_global_nextgen_v1_cluster_proto_rawDescData
}

var file_global_nextgen_v1_cluster_proto_enumTypes = make([]protoimpl.EnumInfo, 7)
var file_global_nextgen_v1_cluster_proto_msgTypes = make([]protoimpl.MessageInfo, 37)
var file_global_nextgen_v1_cluster_proto_goTypes = []any{
	(RestoreState)(0),                                // 0: global.nextgen.v1.RestoreState
	(RestoreMode)(0),                                 // 1: global.nextgen.v1.RestoreMode
	(Cluster_HighAvailabilityType)(0),                // 2: global.nextgen.v1.Cluster.HighAvailabilityType
	(Cluster_HealthState)(0),                         // 3: global.nextgen.v1.Cluster.HealthState
	(Cluster_State)(0),                               // 4: global.nextgen.v1.Cluster.State
	(TestClassicBackupAccessResponse_Status)(0),      // 5: global.nextgen.v1.TestClassicBackupAccessResponse.Status
	(ClusterEncryptionStatus_State)(0),               // 6: global.nextgen.v1.ClusterEncryptionStatus.State
	(*Cluster)(nil),                                  // 7: global.nextgen.v1.Cluster
	(*ProviderRole)(nil),                             // 8: global.nextgen.v1.ProviderRole
	(*CreateClusterRequest)(nil),                     // 9: global.nextgen.v1.CreateClusterRequest
	(*ListClustersRequest)(nil),                      // 10: global.nextgen.v1.ListClustersRequest
	(*ListClustersResponse)(nil),                     // 11: global.nextgen.v1.ListClustersResponse
	(*GetClusterRequest)(nil),                        // 12: global.nextgen.v1.GetClusterRequest
	(*DeleteClusterRequest)(nil),                     // 13: global.nextgen.v1.DeleteClusterRequest
	(*UpdateClusterRequest)(nil),                     // 14: global.nextgen.v1.UpdateClusterRequest
	(*ChangeClusterPasswdRequest)(nil),               // 15: global.nextgen.v1.ChangeClusterPasswdRequest
	(*ChangeClusterPasswdResponse)(nil),              // 16: global.nextgen.v1.ChangeClusterPasswdResponse
	(*ListClusterBackupsRequest)(nil),                // 17: global.nextgen.v1.ListClusterBackupsRequest
	(*ListClusterBackupsResponse)(nil),               // 18: global.nextgen.v1.ListClusterBackupsResponse
	(*DeleteClusterBackupRequest)(nil),               // 19: global.nextgen.v1.DeleteClusterBackupRequest
	(*RestoreClusterRequest)(nil),                    // 20: global.nextgen.v1.RestoreClusterRequest
	(*ClassicBackupStorage)(nil),                     // 21: global.nextgen.v1.ClassicBackupStorage
	(*BackupStorageAuth)(nil),                        // 22: global.nextgen.v1.BackupStorageAuth
	(*TestClassicBackupAccessRequest)(nil),           // 23: global.nextgen.v1.TestClassicBackupAccessRequest
	(*TestClassicBackupAccessResponse)(nil),          // 24: global.nextgen.v1.TestClassicBackupAccessResponse
	(*StopRestoreClusterRequest)(nil),                // 25: global.nextgen.v1.StopRestoreClusterRequest
	(*RestoreStatusRequest)(nil),                     // 26: global.nextgen.v1.RestoreStatusRequest
	(*RestoreStatusResponse)(nil),                    // 27: global.nextgen.v1.RestoreStatusResponse
	(*GetBackupSettingRequest)(nil),                  // 28: global.nextgen.v1.GetBackupSettingRequest
	(*UpdateBackupSettingRequest)(nil),               // 29: global.nextgen.v1.UpdateBackupSettingRequest
	(*GetProviderRoleRequest)(nil),                   // 30: global.nextgen.v1.GetProviderRoleRequest
	(*GetCaCertificateDownloadUrlRequest)(nil),       // 31: global.nextgen.v1.GetCaCertificateDownloadUrlRequest
	(*CaCertificateDownloadUrl)(nil),                 // 32: global.nextgen.v1.CaCertificateDownloadUrl
	(*UpdateClusterProjectRequest)(nil),              // 33: global.nextgen.v1.UpdateClusterProjectRequest
	(*UpdateClusterProjectResponse)(nil),             // 34: global.nextgen.v1.UpdateClusterProjectResponse
	(*EstimatePriceRequest)(nil),                     // 35: global.nextgen.v1.EstimatePriceRequest
	(*EstimatePriceResponse)(nil),                    // 36: global.nextgen.v1.EstimatePriceResponse
	(*UpdateClusterDualLayerEncryptionRequest)(nil),  // 37: global.nextgen.v1.UpdateClusterDualLayerEncryptionRequest
	(*UpdateClusterDualLayerEncryptionResponse)(nil), // 38: global.nextgen.v1.UpdateClusterDualLayerEncryptionResponse
	(*GetClusterEncryptionStatusRequest)(nil),        // 39: global.nextgen.v1.GetClusterEncryptionStatusRequest
	(*ClusterEncryptionStatus)(nil),                  // 40: global.nextgen.v1.ClusterEncryptionStatus
	(*ForceUpdateGatewayIdentityRequest)(nil),        // 41: global.nextgen.v1.ForceUpdateGatewayIdentityRequest
	(*RestoreDetails)(nil),                           // 42: global.nextgen.v1.RestoreDetails
	(*Cluster_DualLayerDataEncryption)(nil),          // 43: global.nextgen.v1.Cluster.DualLayerDataEncryption
	(*timestamppb.Timestamp)(nil),                    // 44: google.protobuf.Timestamp
	(v1.CloudProvider_Name)(0),                       // 45: global.common.v1.CloudProvider.Name
	(v1.Region_Name)(0),                              // 46: global.common.v1.Region.Name
	(v1.ServicePlan)(0),                              // 47: global.common.v1.ServicePlan
	(*Endpoint)(nil),                                 // 48: global.nextgen.v1.Endpoint
	(*ReservedCapacityTemplate)(nil),                 // 49: global.nextgen.v1.ReservedCapacityTemplate
	(*PlanReplayerStatus)(nil),                       // 50: global.nextgen.v1.PlanReplayerStatus
	(Backup_State)(0),                                // 51: global.nextgen.v1.Backup.State
	(Backup_TriggerType)(0),                          // 52: global.nextgen.v1.Backup.TriggerType
	(*Backup)(nil),                                   // 53: global.nextgen.v1.Backup
	(*BackupSetting)(nil),                            // 54: global.nextgen.v1.BackupSetting
	(*CustomerManagedEncryptionKey)(nil),             // 55: global.nextgen.v1.CustomerManagedEncryptionKey
	(*emptypb.Empty)(nil),                            // 56: google.protobuf.Empty
}
var file_global_nextgen_v1_cluster_proto_depIdxs = []int32{
	44, // 0: global.nextgen.v1.Cluster.create_time:type_name -> google.protobuf.Timestamp
	44, // 1: global.nextgen.v1.Cluster.create_finished_time:type_name -> google.protobuf.Timestamp
	44, // 2: global.nextgen.v1.Cluster.update_time:type_name -> google.protobuf.Timestamp
	44, // 3: global.nextgen.v1.Cluster.delete_time:type_name -> google.protobuf.Timestamp
	45, // 4: global.nextgen.v1.Cluster.cloud_provider_id:type_name -> global.common.v1.CloudProvider.Name
	46, // 5: global.nextgen.v1.Cluster.region_id:type_name -> global.common.v1.Region.Name
	4,  // 6: global.nextgen.v1.Cluster.state:type_name -> global.nextgen.v1.Cluster.State
	3,  // 7: global.nextgen.v1.Cluster.health_state:type_name -> global.nextgen.v1.Cluster.HealthState
	47, // 8: global.nextgen.v1.Cluster.service_plan:type_name -> global.common.v1.ServicePlan
	2,  // 9: global.nextgen.v1.Cluster.high_availability_type:type_name -> global.nextgen.v1.Cluster.HighAvailabilityType
	48, // 10: global.nextgen.v1.Cluster.endpoints:type_name -> global.nextgen.v1.Endpoint
	43, // 11: global.nextgen.v1.Cluster.dual_layer_data_encryption:type_name -> global.nextgen.v1.Cluster.DualLayerDataEncryption
	44, // 12: global.nextgen.v1.Cluster.capacity_updated_at:type_name -> google.protobuf.Timestamp
	49, // 13: global.nextgen.v1.Cluster.reserved_capacity_template:type_name -> global.nextgen.v1.ReservedCapacityTemplate
	50, // 14: global.nextgen.v1.Cluster.plan_replayer_status:type_name -> global.nextgen.v1.PlanReplayerStatus
	44, // 15: global.nextgen.v1.Cluster.automatic_resume_at:type_name -> google.protobuf.Timestamp
	7,  // 16: global.nextgen.v1.CreateClusterRequest.cluster:type_name -> global.nextgen.v1.Cluster
	45, // 17: global.nextgen.v1.ListClustersRequest.cloud_provider_ids:type_name -> global.common.v1.CloudProvider.Name
	46, // 18: global.nextgen.v1.ListClustersRequest.region_ids:type_name -> global.common.v1.Region.Name
	4,  // 19: global.nextgen.v1.ListClustersRequest.states:type_name -> global.nextgen.v1.Cluster.State
	4,  // 20: global.nextgen.v1.ListClustersRequest.exclude_states:type_name -> global.nextgen.v1.Cluster.State
	47, // 21: global.nextgen.v1.ListClustersRequest.service_plans:type_name -> global.common.v1.ServicePlan
	7,  // 22: global.nextgen.v1.ListClustersResponse.clusters:type_name -> global.nextgen.v1.Cluster
	7,  // 23: global.nextgen.v1.UpdateClusterRequest.cluster:type_name -> global.nextgen.v1.Cluster
	51, // 24: global.nextgen.v1.ListClusterBackupsRequest.states:type_name -> global.nextgen.v1.Backup.State
	52, // 25: global.nextgen.v1.ListClusterBackupsRequest.trigger_types:type_name -> global.nextgen.v1.Backup.TriggerType
	44, // 26: global.nextgen.v1.ListClusterBackupsRequest.start_time:type_name -> google.protobuf.Timestamp
	44, // 27: global.nextgen.v1.ListClusterBackupsRequest.end_time:type_name -> google.protobuf.Timestamp
	53, // 28: global.nextgen.v1.ListClusterBackupsResponse.backups:type_name -> global.nextgen.v1.Backup
	1,  // 29: global.nextgen.v1.RestoreClusterRequest.restore_mode:type_name -> global.nextgen.v1.RestoreMode
	44, // 30: global.nextgen.v1.RestoreClusterRequest.point_in_time:type_name -> google.protobuf.Timestamp
	21, // 31: global.nextgen.v1.RestoreClusterRequest.classic_backup_storage:type_name -> global.nextgen.v1.ClassicBackupStorage
	45, // 32: global.nextgen.v1.ClassicBackupStorage.cloud_provider:type_name -> global.common.v1.CloudProvider.Name
	22, // 33: global.nextgen.v1.ClassicBackupStorage.auth:type_name -> global.nextgen.v1.BackupStorageAuth
	21, // 34: global.nextgen.v1.TestClassicBackupAccessRequest.classic_backup_storage:type_name -> global.nextgen.v1.ClassicBackupStorage
	47, // 35: global.nextgen.v1.TestClassicBackupAccessRequest.service_plan:type_name -> global.common.v1.ServicePlan
	5,  // 36: global.nextgen.v1.TestClassicBackupAccessResponse.status:type_name -> global.nextgen.v1.TestClassicBackupAccessResponse.Status
	45, // 37: global.nextgen.v1.TestClassicBackupAccessResponse.cloud_provider:type_name -> global.common.v1.CloudProvider.Name
	44, // 38: global.nextgen.v1.TestClassicBackupAccessResponse.backup_time:type_name -> google.protobuf.Timestamp
	0,  // 39: global.nextgen.v1.RestoreStatusResponse.state:type_name -> global.nextgen.v1.RestoreState
	42, // 40: global.nextgen.v1.RestoreStatusResponse.details:type_name -> global.nextgen.v1.RestoreDetails
	54, // 41: global.nextgen.v1.UpdateBackupSettingRequest.backup_setting:type_name -> global.nextgen.v1.BackupSetting
	46, // 42: global.nextgen.v1.EstimatePriceRequest.region_id:type_name -> global.common.v1.Region.Name
	47, // 43: global.nextgen.v1.EstimatePriceRequest.service_plan:type_name -> global.common.v1.ServicePlan
	55, // 44: global.nextgen.v1.UpdateClusterDualLayerEncryptionRequest.cmek:type_name -> global.nextgen.v1.CustomerManagedEncryptionKey
	56, // 45: global.nextgen.v1.UpdateClusterDualLayerEncryptionRequest.default_key:type_name -> google.protobuf.Empty
	56, // 46: global.nextgen.v1.UpdateClusterDualLayerEncryptionRequest.no_encryption:type_name -> google.protobuf.Empty
	6,  // 47: global.nextgen.v1.ClusterEncryptionStatus.state:type_name -> global.nextgen.v1.ClusterEncryptionStatus.State
	43, // 48: global.nextgen.v1.ClusterEncryptionStatus.current_encryption:type_name -> global.nextgen.v1.Cluster.DualLayerDataEncryption
	1,  // 49: global.nextgen.v1.RestoreDetails.restore_mode:type_name -> global.nextgen.v1.RestoreMode
	44, // 50: global.nextgen.v1.RestoreDetails.point_in_time:type_name -> google.protobuf.Timestamp
	44, // 51: global.nextgen.v1.RestoreDetails.restore_requested_time:type_name -> google.protobuf.Timestamp
	44, // 52: global.nextgen.v1.RestoreDetails.restore_updated_time:type_name -> google.protobuf.Timestamp
	45, // 53: global.nextgen.v1.RestoreDetails.source_cloud_provider:type_name -> global.common.v1.CloudProvider.Name
	47, // 54: global.nextgen.v1.RestoreDetails.source_service_plan:type_name -> global.common.v1.ServicePlan
	56, // 55: global.nextgen.v1.Cluster.DualLayerDataEncryption.no_encryption:type_name -> google.protobuf.Empty
	56, // 56: global.nextgen.v1.Cluster.DualLayerDataEncryption.default_key:type_name -> google.protobuf.Empty
	55, // 57: global.nextgen.v1.Cluster.DualLayerDataEncryption.cmek:type_name -> global.nextgen.v1.CustomerManagedEncryptionKey
	9,  // 58: global.nextgen.v1.ClusterService.CreateCluster:input_type -> global.nextgen.v1.CreateClusterRequest
	10, // 59: global.nextgen.v1.ClusterService.ListClusters:input_type -> global.nextgen.v1.ListClustersRequest
	12, // 60: global.nextgen.v1.ClusterService.GetCluster:input_type -> global.nextgen.v1.GetClusterRequest
	14, // 61: global.nextgen.v1.ClusterService.UpdateCluster:input_type -> global.nextgen.v1.UpdateClusterRequest
	13, // 62: global.nextgen.v1.ClusterService.DeleteCluster:input_type -> global.nextgen.v1.DeleteClusterRequest
	15, // 63: global.nextgen.v1.ClusterService.ChangeClusterPasswd:input_type -> global.nextgen.v1.ChangeClusterPasswdRequest
	17, // 64: global.nextgen.v1.ClusterService.ListClusterBackups:input_type -> global.nextgen.v1.ListClusterBackupsRequest
	19, // 65: global.nextgen.v1.ClusterService.DeleteClusterBackup:input_type -> global.nextgen.v1.DeleteClusterBackupRequest
	20, // 66: global.nextgen.v1.ClusterService.RestoreCluster:input_type -> global.nextgen.v1.RestoreClusterRequest
	23, // 67: global.nextgen.v1.ClusterService.TestClassicBackupAccess:input_type -> global.nextgen.v1.TestClassicBackupAccessRequest
	26, // 68: global.nextgen.v1.ClusterService.RestoreStatus:input_type -> global.nextgen.v1.RestoreStatusRequest
	25, // 69: global.nextgen.v1.ClusterService.StopRestoreCluster:input_type -> global.nextgen.v1.StopRestoreClusterRequest
	28, // 70: global.nextgen.v1.ClusterService.GetBackupSetting:input_type -> global.nextgen.v1.GetBackupSettingRequest
	29, // 71: global.nextgen.v1.ClusterService.UpdateBackupSetting:input_type -> global.nextgen.v1.UpdateBackupSettingRequest
	30, // 72: global.nextgen.v1.ClusterService.GetProviderRole:input_type -> global.nextgen.v1.GetProviderRoleRequest
	31, // 73: global.nextgen.v1.ClusterService.GetCaCertificateDownloadUrl:input_type -> global.nextgen.v1.GetCaCertificateDownloadUrlRequest
	33, // 74: global.nextgen.v1.ClusterService.UpdateClusterProject:input_type -> global.nextgen.v1.UpdateClusterProjectRequest
	37, // 75: global.nextgen.v1.ClusterService.UpdateClusterDualLayerEncryption:input_type -> global.nextgen.v1.UpdateClusterDualLayerEncryptionRequest
	39, // 76: global.nextgen.v1.ClusterService.GetClusterEncryptionStatus:input_type -> global.nextgen.v1.GetClusterEncryptionStatusRequest
	41, // 77: global.nextgen.v1.ClusterService.ForceUpdateGatewayIdentity:input_type -> global.nextgen.v1.ForceUpdateGatewayIdentityRequest
	35, // 78: global.nextgen.v1.ClusterService.EstimatePrice:input_type -> global.nextgen.v1.EstimatePriceRequest
	7,  // 79: global.nextgen.v1.ClusterService.CreateCluster:output_type -> global.nextgen.v1.Cluster
	11, // 80: global.nextgen.v1.ClusterService.ListClusters:output_type -> global.nextgen.v1.ListClustersResponse
	7,  // 81: global.nextgen.v1.ClusterService.GetCluster:output_type -> global.nextgen.v1.Cluster
	7,  // 82: global.nextgen.v1.ClusterService.UpdateCluster:output_type -> global.nextgen.v1.Cluster
	7,  // 83: global.nextgen.v1.ClusterService.DeleteCluster:output_type -> global.nextgen.v1.Cluster
	16, // 84: global.nextgen.v1.ClusterService.ChangeClusterPasswd:output_type -> global.nextgen.v1.ChangeClusterPasswdResponse
	18, // 85: global.nextgen.v1.ClusterService.ListClusterBackups:output_type -> global.nextgen.v1.ListClusterBackupsResponse
	56, // 86: global.nextgen.v1.ClusterService.DeleteClusterBackup:output_type -> google.protobuf.Empty
	56, // 87: global.nextgen.v1.ClusterService.RestoreCluster:output_type -> google.protobuf.Empty
	24, // 88: global.nextgen.v1.ClusterService.TestClassicBackupAccess:output_type -> global.nextgen.v1.TestClassicBackupAccessResponse
	27, // 89: global.nextgen.v1.ClusterService.RestoreStatus:output_type -> global.nextgen.v1.RestoreStatusResponse
	56, // 90: global.nextgen.v1.ClusterService.StopRestoreCluster:output_type -> google.protobuf.Empty
	54, // 91: global.nextgen.v1.ClusterService.GetBackupSetting:output_type -> global.nextgen.v1.BackupSetting
	54, // 92: global.nextgen.v1.ClusterService.UpdateBackupSetting:output_type -> global.nextgen.v1.BackupSetting
	8,  // 93: global.nextgen.v1.ClusterService.GetProviderRole:output_type -> global.nextgen.v1.ProviderRole
	32, // 94: global.nextgen.v1.ClusterService.GetCaCertificateDownloadUrl:output_type -> global.nextgen.v1.CaCertificateDownloadUrl
	34, // 95: global.nextgen.v1.ClusterService.UpdateClusterProject:output_type -> global.nextgen.v1.UpdateClusterProjectResponse
	38, // 96: global.nextgen.v1.ClusterService.UpdateClusterDualLayerEncryption:output_type -> global.nextgen.v1.UpdateClusterDualLayerEncryptionResponse
	40, // 97: global.nextgen.v1.ClusterService.GetClusterEncryptionStatus:output_type -> global.nextgen.v1.ClusterEncryptionStatus
	56, // 98: global.nextgen.v1.ClusterService.ForceUpdateGatewayIdentity:output_type -> google.protobuf.Empty
	36, // 99: global.nextgen.v1.ClusterService.EstimatePrice:output_type -> global.nextgen.v1.EstimatePriceResponse
	79, // [79:100] is the sub-list for method output_type
	58, // [58:79] is the sub-list for method input_type
	58, // [58:58] is the sub-list for extension type_name
	58, // [58:58] is the sub-list for extension extendee
	0,  // [0:58] is the sub-list for field type_name
}

func init() { file_global_nextgen_v1_cluster_proto_init() }
func file_global_nextgen_v1_cluster_proto_init() {
	if File_global_nextgen_v1_cluster_proto != nil {
		return
	}
	file_global_nextgen_v1_backup_common_proto_init()
	file_global_nextgen_v1_cmek_proto_init()
	file_global_nextgen_v1_endpoint_proto_init()
	file_global_nextgen_v1_plan_replayer_proto_init()
	file_global_nextgen_v1_reserved_capacity_template_proto_init()
	if !protoimpl.UnsafeEnabled {
		file_global_nextgen_v1_cluster_proto_msgTypes[0].Exporter = func(v any, i int) any {
			switch v := v.(*Cluster); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[1].Exporter = func(v any, i int) any {
			switch v := v.(*ProviderRole); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[2].Exporter = func(v any, i int) any {
			switch v := v.(*CreateClusterRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[3].Exporter = func(v any, i int) any {
			switch v := v.(*ListClustersRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[4].Exporter = func(v any, i int) any {
			switch v := v.(*ListClustersResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[5].Exporter = func(v any, i int) any {
			switch v := v.(*GetClusterRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[6].Exporter = func(v any, i int) any {
			switch v := v.(*DeleteClusterRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[7].Exporter = func(v any, i int) any {
			switch v := v.(*UpdateClusterRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[8].Exporter = func(v any, i int) any {
			switch v := v.(*ChangeClusterPasswdRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[9].Exporter = func(v any, i int) any {
			switch v := v.(*ChangeClusterPasswdResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[10].Exporter = func(v any, i int) any {
			switch v := v.(*ListClusterBackupsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[11].Exporter = func(v any, i int) any {
			switch v := v.(*ListClusterBackupsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[12].Exporter = func(v any, i int) any {
			switch v := v.(*DeleteClusterBackupRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[13].Exporter = func(v any, i int) any {
			switch v := v.(*RestoreClusterRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[14].Exporter = func(v any, i int) any {
			switch v := v.(*ClassicBackupStorage); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[15].Exporter = func(v any, i int) any {
			switch v := v.(*BackupStorageAuth); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[16].Exporter = func(v any, i int) any {
			switch v := v.(*TestClassicBackupAccessRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[17].Exporter = func(v any, i int) any {
			switch v := v.(*TestClassicBackupAccessResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[18].Exporter = func(v any, i int) any {
			switch v := v.(*StopRestoreClusterRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[19].Exporter = func(v any, i int) any {
			switch v := v.(*RestoreStatusRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[20].Exporter = func(v any, i int) any {
			switch v := v.(*RestoreStatusResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[21].Exporter = func(v any, i int) any {
			switch v := v.(*GetBackupSettingRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[22].Exporter = func(v any, i int) any {
			switch v := v.(*UpdateBackupSettingRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[23].Exporter = func(v any, i int) any {
			switch v := v.(*GetProviderRoleRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[24].Exporter = func(v any, i int) any {
			switch v := v.(*GetCaCertificateDownloadUrlRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[25].Exporter = func(v any, i int) any {
			switch v := v.(*CaCertificateDownloadUrl); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[26].Exporter = func(v any, i int) any {
			switch v := v.(*UpdateClusterProjectRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[27].Exporter = func(v any, i int) any {
			switch v := v.(*UpdateClusterProjectResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[28].Exporter = func(v any, i int) any {
			switch v := v.(*EstimatePriceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[29].Exporter = func(v any, i int) any {
			switch v := v.(*EstimatePriceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[30].Exporter = func(v any, i int) any {
			switch v := v.(*UpdateClusterDualLayerEncryptionRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[31].Exporter = func(v any, i int) any {
			switch v := v.(*UpdateClusterDualLayerEncryptionResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[32].Exporter = func(v any, i int) any {
			switch v := v.(*GetClusterEncryptionStatusRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[33].Exporter = func(v any, i int) any {
			switch v := v.(*ClusterEncryptionStatus); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[34].Exporter = func(v any, i int) any {
			switch v := v.(*ForceUpdateGatewayIdentityRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[35].Exporter = func(v any, i int) any {
			switch v := v.(*RestoreDetails); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_nextgen_v1_cluster_proto_msgTypes[36].Exporter = func(v any, i int) any {
			switch v := v.(*Cluster_DualLayerDataEncryption); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	file_global_nextgen_v1_cluster_proto_msgTypes[2].OneofWrappers = []any{}
	file_global_nextgen_v1_cluster_proto_msgTypes[30].OneofWrappers = []any{
		(*UpdateClusterDualLayerEncryptionRequest_Cmek)(nil),
		(*UpdateClusterDualLayerEncryptionRequest_DefaultKey)(nil),
		(*UpdateClusterDualLayerEncryptionRequest_NoEncryption)(nil),
	}
	file_global_nextgen_v1_cluster_proto_msgTypes[36].OneofWrappers = []any{
		(*Cluster_DualLayerDataEncryption_NoEncryption)(nil),
		(*Cluster_DualLayerDataEncryption_DefaultKey)(nil),
		(*Cluster_DualLayerDataEncryption_Cmek)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_global_nextgen_v1_cluster_proto_rawDesc,
			NumEnums:      7,
			NumMessages:   37,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_global_nextgen_v1_cluster_proto_goTypes,
		DependencyIndexes: file_global_nextgen_v1_cluster_proto_depIdxs,
		EnumInfos:         file_global_nextgen_v1_cluster_proto_enumTypes,
		MessageInfos:      file_global_nextgen_v1_cluster_proto_msgTypes,
	}.Build()
	File_global_nextgen_v1_cluster_proto = out.File
	file_global_nextgen_v1_cluster_proto_rawDesc = nil
	file_global_nextgen_v1_cluster_proto_goTypes = nil
	file_global_nextgen_v1_cluster_proto_depIdxs = nil
}
