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

package nextgenv1beta2

import (
	_ "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options"
	v1beta1 "github.com/tidbcloud/tidb-management-service/api/spec/tidb_cloud_open_api/common/v1beta1"
	_ "google.golang.org/genproto/googleapis/api/annotations"
	_ "google.golang.org/genproto/googleapis/rpc/status"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	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)
)

type NodeSpecComponentType int32

const (
	NodeSpecComponentType_NODE_SPEC_COMPONENT_TYPE_UNSPECIFIED NodeSpecComponentType = 0
	NodeSpecComponentType_NODE_SPEC_COMPONENT_TYPE_TIKV        NodeSpecComponentType = 1
	NodeSpecComponentType_NODE_SPEC_COMPONENT_TYPE_TIFLASH     NodeSpecComponentType = 2
)

// Enum value maps for NodeSpecComponentType.
var (
	NodeSpecComponentType_name = map[int32]string{
		0: "NODE_SPEC_COMPONENT_TYPE_UNSPECIFIED",
		1: "NODE_SPEC_COMPONENT_TYPE_TIKV",
		2: "NODE_SPEC_COMPONENT_TYPE_TIFLASH",
	}
	NodeSpecComponentType_value = map[string]int32{
		"NODE_SPEC_COMPONENT_TYPE_UNSPECIFIED": 0,
		"NODE_SPEC_COMPONENT_TYPE_TIKV":        1,
		"NODE_SPEC_COMPONENT_TYPE_TIFLASH":     2,
	}
)

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

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

func (NodeSpecComponentType) Descriptor() protoreflect.EnumDescriptor {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[0].Descriptor()
}

func (NodeSpecComponentType) Type() protoreflect.EnumType {
	return &file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[0]
}

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

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

type NodeCountRuleType int32

const (
	NodeCountRuleType_NODE_COUNT_RULE_TYPE_UNSPECIFIED NodeCountRuleType = 0
	NodeCountRuleType_NODE_COUNT_RULE_TYPE_NONE        NodeCountRuleType = 1
	NodeCountRuleType_NODE_COUNT_RULE_TYPE_MULTIPLE_OF NodeCountRuleType = 2
	NodeCountRuleType_NODE_COUNT_RULE_TYPE_FIXED       NodeCountRuleType = 3
)

// Enum value maps for NodeCountRuleType.
var (
	NodeCountRuleType_name = map[int32]string{
		0: "NODE_COUNT_RULE_TYPE_UNSPECIFIED",
		1: "NODE_COUNT_RULE_TYPE_NONE",
		2: "NODE_COUNT_RULE_TYPE_MULTIPLE_OF",
		3: "NODE_COUNT_RULE_TYPE_FIXED",
	}
	NodeCountRuleType_value = map[string]int32{
		"NODE_COUNT_RULE_TYPE_UNSPECIFIED": 0,
		"NODE_COUNT_RULE_TYPE_NONE":        1,
		"NODE_COUNT_RULE_TYPE_MULTIPLE_OF": 2,
		"NODE_COUNT_RULE_TYPE_FIXED":       3,
	}
)

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

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

func (NodeCountRuleType) Descriptor() protoreflect.EnumDescriptor {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[1].Descriptor()
}

func (NodeCountRuleType) Type() protoreflect.EnumType {
	return &file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[1]
}

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

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

type ByocSharedComponentType int32

const (
	ByocSharedComponentType_BYOC_SHARED_COMPONENT_TYPE_UNSPECIFIED     ByocSharedComponentType = 0
	ByocSharedComponentType_BYOC_SHARED_COMPONENT_TYPE_TIKV            ByocSharedComponentType = 1
	ByocSharedComponentType_BYOC_SHARED_COMPONENT_TYPE_TIFLASH_WRITE   ByocSharedComponentType = 2
	ByocSharedComponentType_BYOC_SHARED_COMPONENT_TYPE_TIFLASH_COMPUTE ByocSharedComponentType = 3
)

// Enum value maps for ByocSharedComponentType.
var (
	ByocSharedComponentType_name = map[int32]string{
		0: "BYOC_SHARED_COMPONENT_TYPE_UNSPECIFIED",
		1: "BYOC_SHARED_COMPONENT_TYPE_TIKV",
		2: "BYOC_SHARED_COMPONENT_TYPE_TIFLASH_WRITE",
		3: "BYOC_SHARED_COMPONENT_TYPE_TIFLASH_COMPUTE",
	}
	ByocSharedComponentType_value = map[string]int32{
		"BYOC_SHARED_COMPONENT_TYPE_UNSPECIFIED":     0,
		"BYOC_SHARED_COMPONENT_TYPE_TIKV":            1,
		"BYOC_SHARED_COMPONENT_TYPE_TIFLASH_WRITE":   2,
		"BYOC_SHARED_COMPONENT_TYPE_TIFLASH_COMPUTE": 3,
	}
)

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

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

func (ByocSharedComponentType) Descriptor() protoreflect.EnumDescriptor {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[2].Descriptor()
}

func (ByocSharedComponentType) Type() protoreflect.EnumType {
	return &file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[2]
}

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

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

type ByocVcpuPool_State int32

const (
	ByocVcpuPool_STATE_UNSPECIFIED ByocVcpuPool_State = 0
	ByocVcpuPool_AVAILABLE         ByocVcpuPool_State = 1
	ByocVcpuPool_MODIFYING         ByocVcpuPool_State = 2
)

// Enum value maps for ByocVcpuPool_State.
var (
	ByocVcpuPool_State_name = map[int32]string{
		0: "STATE_UNSPECIFIED",
		1: "AVAILABLE",
		2: "MODIFYING",
	}
	ByocVcpuPool_State_value = map[string]int32{
		"STATE_UNSPECIFIED": 0,
		"AVAILABLE":         1,
		"MODIFYING":         2,
	}
)

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

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

func (ByocVcpuPool_State) Descriptor() protoreflect.EnumDescriptor {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[3].Descriptor()
}

func (ByocVcpuPool_State) Type() protoreflect.EnumType {
	return &file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[3]
}

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

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

type ByocVcpuPool_HighAvailabilityType int32

const (
	ByocVcpuPool_HIGH_AVAILABILITY_TYPE_UNSPECIFIED ByocVcpuPool_HighAvailabilityType = 0
	ByocVcpuPool_REGIONAL                           ByocVcpuPool_HighAvailabilityType = 1
	ByocVcpuPool_ZONAL                              ByocVcpuPool_HighAvailabilityType = 2
)

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

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

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

func (ByocVcpuPool_HighAvailabilityType) Descriptor() protoreflect.EnumDescriptor {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[4].Descriptor()
}

func (ByocVcpuPool_HighAvailabilityType) Type() protoreflect.EnumType {
	return &file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[4]
}

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

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

// (-- api-linter: core::0216::synonyms=disabled
//
//	aip.dev/not-precedent: This describes the outcome of a recommendation search, not resource lifecycle state. --)
type PlanResourcePoolCidrResponse_RecommendationStatus int32

const (
	PlanResourcePoolCidrResponse_RECOMMENDATION_STATUS_UNSPECIFIED PlanResourcePoolCidrResponse_RecommendationStatus = 0
	PlanResourcePoolCidrResponse_AVAILABLE                         PlanResourcePoolCidrResponse_RecommendationStatus = 1
	PlanResourcePoolCidrResponse_EXHAUSTED                         PlanResourcePoolCidrResponse_RecommendationStatus = 2
)

// Enum value maps for PlanResourcePoolCidrResponse_RecommendationStatus.
var (
	PlanResourcePoolCidrResponse_RecommendationStatus_name = map[int32]string{
		0: "RECOMMENDATION_STATUS_UNSPECIFIED",
		1: "AVAILABLE",
		2: "EXHAUSTED",
	}
	PlanResourcePoolCidrResponse_RecommendationStatus_value = map[string]int32{
		"RECOMMENDATION_STATUS_UNSPECIFIED": 0,
		"AVAILABLE":                         1,
		"EXHAUSTED":                         2,
	}
)

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

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

func (PlanResourcePoolCidrResponse_RecommendationStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[5].Descriptor()
}

func (PlanResourcePoolCidrResponse_RecommendationStatus) Type() protoreflect.EnumType {
	return &file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[5]
}

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

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

type ResourcePoolCidrExclusion_Type int32

const (
	ResourcePoolCidrExclusion_TYPE_UNSPECIFIED    ResourcePoolCidrExclusion_Type = 0
	ResourcePoolCidrExclusion_RESOURCE_POOL       ResourcePoolCidrExclusion_Type = 1
	ResourcePoolCidrExclusion_O11Y_CLUSTER        ResourcePoolCidrExclusion_Type = 2
	ResourcePoolCidrExclusion_TIDB_CLOUD_RESERVED ResourcePoolCidrExclusion_Type = 3
)

// Enum value maps for ResourcePoolCidrExclusion_Type.
var (
	ResourcePoolCidrExclusion_Type_name = map[int32]string{
		0: "TYPE_UNSPECIFIED",
		1: "RESOURCE_POOL",
		2: "O11Y_CLUSTER",
		3: "TIDB_CLOUD_RESERVED",
	}
	ResourcePoolCidrExclusion_Type_value = map[string]int32{
		"TYPE_UNSPECIFIED":    0,
		"RESOURCE_POOL":       1,
		"O11Y_CLUSTER":        2,
		"TIDB_CLOUD_RESERVED": 3,
	}
)

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

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

func (ResourcePoolCidrExclusion_Type) Descriptor() protoreflect.EnumDescriptor {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[6].Descriptor()
}

func (ResourcePoolCidrExclusion_Type) Type() protoreflect.EnumType {
	return &file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[6]
}

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

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

type ResourcePoolCidrValidationFinding_Code int32

const (
	ResourcePoolCidrValidationFinding_CODE_UNSPECIFIED               ResourcePoolCidrValidationFinding_Code = 0
	ResourcePoolCidrValidationFinding_INVALID_CIDR                   ResourcePoolCidrValidationFinding_Code = 1
	ResourcePoolCidrValidationFinding_CIDR_NOT_PRIVATE               ResourcePoolCidrValidationFinding_Code = 2
	ResourcePoolCidrValidationFinding_CIDR_PREFIX_UNSUPPORTED        ResourcePoolCidrValidationFinding_Code = 3
	ResourcePoolCidrValidationFinding_CIDR_OVERLAPS_RESOURCE_POOL    ResourcePoolCidrValidationFinding_Code = 4
	ResourcePoolCidrValidationFinding_CIDR_OVERLAPS_O11Y             ResourcePoolCidrValidationFinding_Code = 5
	ResourcePoolCidrValidationFinding_CIDR_OVERLAPS_RESERVED_NETWORK ResourcePoolCidrValidationFinding_Code = 6
)

// Enum value maps for ResourcePoolCidrValidationFinding_Code.
var (
	ResourcePoolCidrValidationFinding_Code_name = map[int32]string{
		0: "CODE_UNSPECIFIED",
		1: "INVALID_CIDR",
		2: "CIDR_NOT_PRIVATE",
		3: "CIDR_PREFIX_UNSUPPORTED",
		4: "CIDR_OVERLAPS_RESOURCE_POOL",
		5: "CIDR_OVERLAPS_O11Y",
		6: "CIDR_OVERLAPS_RESERVED_NETWORK",
	}
	ResourcePoolCidrValidationFinding_Code_value = map[string]int32{
		"CODE_UNSPECIFIED":               0,
		"INVALID_CIDR":                   1,
		"CIDR_NOT_PRIVATE":               2,
		"CIDR_PREFIX_UNSUPPORTED":        3,
		"CIDR_OVERLAPS_RESOURCE_POOL":    4,
		"CIDR_OVERLAPS_O11Y":             5,
		"CIDR_OVERLAPS_RESERVED_NETWORK": 6,
	}
)

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

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

func (ResourcePoolCidrValidationFinding_Code) Descriptor() protoreflect.EnumDescriptor {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[7].Descriptor()
}

func (ResourcePoolCidrValidationFinding_Code) Type() protoreflect.EnumType {
	return &file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes[7]
}

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

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

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

	// The cloud provider. If specified, only regions belonging to the specified cloud provider are returned.
	CloudProvider string `protobuf:"bytes,1,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"`
	// The plan of the service. If specified, only regions that support the specified service plan are returned.
	ServicePlan v1beta1.ServicePlan `protobuf:"varint,2,opt,name=service_plan,json=servicePlan,proto3,enum=tidb_cloud_open_api.common.v1beta1.ServicePlan" json:"service_plan,omitempty"`
	// The maximum number of regions to return. If not specified, at most 10 regions will be returned. The maximum value is `100`. Values greater than `100` are set to `100`.
	PageSize int32 `protobuf:"varint,100,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// The pagination token received from a previous [List regions](#tag/Region/operation/RegionService_ListRegions) request. Use this token to retrieve the next page of results.
	//
	// **Note**: When paginating, all other parameters must match the original request.
	PageToken string `protobuf:"bytes,101,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	// The number of regions to skip before returning results. If the value exceeds the total number of regions, the response is `200` with an empty list and no `nextPageToken`.
	Skip int32 `protobuf:"varint,102,opt,name=skip,proto3" json:"skip,omitempty"`
}

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

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

func (*ListRegionsRequest) ProtoMessage() {}

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

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

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

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

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

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

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

	// A list of regions that match the query.
	Regions []*v1beta1.Region `protobuf:"bytes,1,rep,name=regions,proto3" json:"regions,omitempty"`
	// The total number of regions that match the query.
	TotalSize int32 `protobuf:"varint,100,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
	// The token to retrieve the next page of results. Use this value as the `pageToken` parameter in the next request. This field is empty when there are no more pages.
	NextPageToken string `protobuf:"bytes,101,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
}

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

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

func (*ListRegionsResponse) ProtoMessage() {}

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

func (x *ListRegionsResponse) GetRegions() []*v1beta1.Region {
	if x != nil {
		return x.Regions
	}
	return nil
}

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

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

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

	// If specified, only cloud providers of the specified region will be returned.
	ServicePlan v1beta1.ServicePlan `protobuf:"varint,1,opt,name=service_plan,json=servicePlan,proto3,enum=tidb_cloud_open_api.common.v1beta1.ServicePlan" json:"service_plan,omitempty"`
	// The maximum number of cloud providers to return. The service may return fewer than this value.
	// If unspecified, at most X cloud providers will be returned.
	// The maximum value is X; values above X will be coerced to X.
	PageSize int32 `protobuf:"varint,100,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// A page token, received from a previous `ListCloudProviders` call.
	// Provide this to retrieve the subsequent page.
	//
	// When paginating, all other parameters provided to `ListCloudProviders` must match
	// the call that provided the page token.
	PageToken string `protobuf:"bytes,101,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
}

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

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

func (*ListCloudProvidersRequest) ProtoMessage() {}

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

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

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

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

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

	// The list of cloud providers.
	CloudProviders []v1beta1.Region_CloudProvider `protobuf:"varint,1,rep,packed,name=cloud_providers,json=cloudProviders,proto3,enum=tidb_cloud_open_api.common.v1beta1.Region_CloudProvider" json:"cloud_providers,omitempty"`
	// The list of cloud providers with supported service plans and display names.
	CloudProviderPlans []*ListCloudProvidersResponse_CloudProviderPlan `protobuf:"bytes,2,rep,name=cloud_provider_plans,json=cloudProviderPlans,proto3" json:"cloud_provider_plans,omitempty"`
	// The total number of cloud providers that match the query.
	TotalSize int32 `protobuf:"varint,100,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
	// A token, which can be sent as `page_token` to retrieve the next page.
	// If this field is omitted, there are no subsequent pages.
	NextPageToken string `protobuf:"bytes,101,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
}

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

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

func (*ListCloudProvidersResponse) ProtoMessage() {}

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

func (x *ListCloudProvidersResponse) GetCloudProviders() []v1beta1.Region_CloudProvider {
	if x != nil {
		return x.CloudProviders
	}
	return nil
}

func (x *ListCloudProvidersResponse) GetCloudProviderPlans() []*ListCloudProvidersResponse_CloudProviderPlan {
	if x != nil {
		return x.CloudProviderPlans
	}
	return nil
}

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

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

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

	// If specified, only regions of the specified cloud provider will be returned.
	CloudProvider string `protobuf:"bytes,1,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"`
	// If specified, only regions that support the specified service plan will be returned.
	ServicePlan v1beta1.ServicePlan `protobuf:"varint,2,opt,name=service_plan,json=servicePlan,proto3,enum=tidb_cloud_open_api.common.v1beta1.ServicePlan" json:"service_plan,omitempty"`
	// If specified, only the region with the specified region ID will be returned.
	RegionId string `protobuf:"bytes,3,opt,name=region_id,json=regionId,proto3" json:"region_id,omitempty"`
	// If specified, only regions with ops audit log enabled or disabled will be returned.
	Status []bool `protobuf:"varint,4,rep,packed,name=status,proto3" json:"status,omitempty"`
	// The maximum number of regions to return. The service may return fewer than this value.
	// If unspecified, at most X regions will be returned.
	// The maximum value is X; values above X will be coerced to X.
	PageSize int32 `protobuf:"varint,100,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// A page token, received from a previous `ListRegions` call.
	// Provide this to retrieve the subsequent page.
	//
	// When paginating, all other parameters provided to `ListRegions` must match
	// the call that provided the page token.
	PageToken string `protobuf:"bytes,101,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	// The number of individual resources to skip before starting to return results.
	// If the skip value causes the cursor to move past the end of the collection,
	// the response will be 200 OK with an empty result set and no next_page_token.
	Skip int32 `protobuf:"varint,102,opt,name=skip,proto3" json:"skip,omitempty"`
}

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

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

func (*ListOpsAuditLogSettingsRequest) ProtoMessage() {}

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

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

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

func (x *ListOpsAuditLogSettingsRequest) GetRegionId() string {
	if x != nil {
		return x.RegionId
	}
	return ""
}

func (x *ListOpsAuditLogSettingsRequest) GetStatus() []bool {
	if x != nil {
		return x.Status
	}
	return nil
}

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

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

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

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

	// The list of ops audit log settings.
	OpsAuditLogSettings []*OpsAuditLogSetting `protobuf:"bytes,1,rep,name=ops_audit_log_settings,json=opsAuditLogSettings,proto3" json:"ops_audit_log_settings,omitempty"`
	// The total number of regions that match the query.
	TotalSize int32 `protobuf:"varint,100,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
	// A token, which can be sent as `page_token` to retrieve the next page.
	// If this field is omitted, there are no subsequent pages.
	NextPageToken string `protobuf:"bytes,101,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
}

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

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

func (*ListOpsAuditLogSettingsResponse) ProtoMessage() {}

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

func (x *ListOpsAuditLogSettingsResponse) GetOpsAuditLogSettings() []*OpsAuditLogSetting {
	if x != nil {
		return x.OpsAuditLogSettings
	}
	return nil
}

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

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

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

	Region      *v1beta1.Region                 `protobuf:"bytes,1,opt,name=region,proto3" json:"region,omitempty"`
	Enabled     bool                            `protobuf:"varint,2,opt,name=enabled,proto3" json:"enabled,omitempty"`
	LogLocation *OpsAuditLogSetting_LogLocation `protobuf:"bytes,3,opt,name=log_location,json=logLocation,proto3" json:"log_location,omitempty"`
	LogRotation *OpsAuditLogSetting_LogRotation `protobuf:"bytes,4,opt,name=log_rotation,json=logRotation,proto3" json:"log_rotation,omitempty"`
}

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

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

func (*OpsAuditLogSetting) ProtoMessage() {}

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

func (x *OpsAuditLogSetting) GetRegion() *v1beta1.Region {
	if x != nil {
		return x.Region
	}
	return nil
}

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

func (x *OpsAuditLogSetting) GetLogLocation() *OpsAuditLogSetting_LogLocation {
	if x != nil {
		return x.LogLocation
	}
	return nil
}

func (x *OpsAuditLogSetting) GetLogRotation() *OpsAuditLogSetting_LogRotation {
	if x != nil {
		return x.LogRotation
	}
	return nil
}

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

	// If specified, only regions of the specified cloud provider will be returned.
	CloudProvider string `protobuf:"bytes,1,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"`
	// Only BYOC is supported for now.
	ServicePlan v1beta1.ServicePlan `protobuf:"varint,2,opt,name=service_plan,json=servicePlan,proto3,enum=tidb_cloud_open_api.common.v1beta1.ServicePlan" json:"service_plan,omitempty"`
	// If specified, will return the usage between the time range.
	Usage *ListRegionCapacitiesRequest_UsageRequest `protobuf:"bytes,3,opt,name=usage,proto3" json:"usage,omitempty"`
	// The maximum number of regions to return. The service may return fewer than this value.
	// If unspecified, at most X regions will be returned.
	// The maximum value is X; values above X will be coerced to X.
	PageSize int32 `protobuf:"varint,100,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// A page token, received from a previous `ListRegions` call.
	// Provide this to retrieve the subsequent page.
	//
	// When paginating, all other parameters provided to `ListRegions` must match
	// the call that provided the page token.
	PageToken string `protobuf:"bytes,101,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	// The number of individual resources to skip before starting to return results.
	// If the skip value causes the cursor to move past the end of the collection,
	// the response will be 200 OK with an empty result set and no next_page_token.
	Skip int32 `protobuf:"varint,102,opt,name=skip,proto3" json:"skip,omitempty"`
}

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

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

func (*ListRegionCapacitiesRequest) ProtoMessage() {}

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

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

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

func (x *ListRegionCapacitiesRequest) GetUsage() *ListRegionCapacitiesRequest_UsageRequest {
	if x != nil {
		return x.Usage
	}
	return nil
}

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

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

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

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

	// The list of ops audit log settings.
	Capacities []*ListRegionCapacitiesResponse_RegionCapacity `protobuf:"bytes,1,rep,name=capacities,proto3" json:"capacities,omitempty"`
	// The total number of regions that match the query.
	TotalSize int32 `protobuf:"varint,100,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
	// A token, which can be sent as `page_token` to retrieve the next page.
	// If this field is omitted, there are no subsequent pages.
	NextPageToken string `protobuf:"bytes,101,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
}

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

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

func (*ListRegionCapacitiesResponse) ProtoMessage() {}

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

func (x *ListRegionCapacitiesResponse) GetCapacities() []*ListRegionCapacitiesResponse_RegionCapacity {
	if x != nil {
		return x.Capacities
	}
	return nil
}

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

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

// (-- api-linter: core::0158::request-page-size-field=disabled
//
//	aip.dev/not-precedent: this is a page-style read model that always returns the full grouped inventory. --)
//
// (-- api-linter: core::0158::request-page-token-field=disabled
//
//	aip.dev/not-precedent: this is a page-style read model that always returns the full grouped inventory. --)
type ListByocVcpuPoolsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// If specified, only pools of the specified cloud provider will be returned.
	CloudProvider string `protobuf:"bytes,1,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"`
	// If specified, only pools of the specified region will be returned.
	// Format: {cloud_provider}-{region_code}. For example, aws-us-west-2.
	RegionId string `protobuf:"bytes,2,opt,name=region_id,json=regionId,proto3" json:"region_id,omitempty"`
}

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

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

func (*ListByocVcpuPoolsRequest) ProtoMessage() {}

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

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

func (x *ListByocVcpuPoolsRequest) GetRegionId() string {
	if x != nil {
		return x.RegionId
	}
	return ""
}

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

	ResourcePoolId string        `protobuf:"bytes,1,opt,name=resource_pool_id,json=resourcePoolId,proto3" json:"resource_pool_id,omitempty"`
	ByocVcpuPool   *ByocVcpuPool `protobuf:"bytes,2,opt,name=byoc_vcpu_pool,json=byocVcpuPool,proto3" json:"byoc_vcpu_pool,omitempty"`
}

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

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

func (*UpdateByocVcpuPoolRequest) ProtoMessage() {}

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

func (x *UpdateByocVcpuPoolRequest) GetResourcePoolId() string {
	if x != nil {
		return x.ResourcePoolId
	}
	return ""
}

func (x *UpdateByocVcpuPoolRequest) GetByocVcpuPool() *ByocVcpuPool {
	if x != nil {
		return x.ByocVcpuPool
	}
	return nil
}

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

	ResourcePoolId string `protobuf:"bytes,1,opt,name=resource_pool_id,json=resourcePoolId,proto3" json:"resource_pool_id,omitempty"`
}

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

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

func (*GetByocSharedComponentScaleConstraintsRequest) ProtoMessage() {}

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

func (x *GetByocSharedComponentScaleConstraintsRequest) GetResourcePoolId() string {
	if x != nil {
		return x.ResourcePoolId
	}
	return ""
}

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

	// Scales existing shared components under the selected BYOC resource pool.
	// This API does not create a brand-new shared component when the shared pool
	// does not already contain the corresponding component.
	ResourcePoolId string                          `protobuf:"bytes,1,opt,name=resource_pool_id,json=resourcePoolId,proto3" json:"resource_pool_id,omitempty"`
	Tikv           *ByocSharedComponentScaleTarget `protobuf:"bytes,2,opt,name=tikv,proto3,oneof" json:"tikv,omitempty"`
	// Requests may also update the component spec or storage while node_count
	// remains 0, as long as the shared pool already contains a TiFlash Write
	// component whose current node_count is 0.
	TiflashWrite *ByocSharedComponentScaleTarget `protobuf:"bytes,3,opt,name=tiflash_write,json=tiflashWrite,proto3,oneof" json:"tiflash_write,omitempty"`
	// Requests may also update the component spec or storage while node_count
	// remains 0, as long as the shared pool already contains a TiFlash Compute
	// component whose current node_count is 0.
	TiflashCompute *ByocSharedComponentScaleTarget `protobuf:"bytes,4,opt,name=tiflash_compute,json=tiflashCompute,proto3,oneof" json:"tiflash_compute,omitempty"`
	ValidateOnly   bool                            `protobuf:"varint,100,opt,name=validate_only,json=validateOnly,proto3" json:"validate_only,omitempty"`
}

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

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

func (*ScaleByocSharedComponentsRequest) ProtoMessage() {}

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

func (x *ScaleByocSharedComponentsRequest) GetResourcePoolId() string {
	if x != nil {
		return x.ResourcePoolId
	}
	return ""
}

func (x *ScaleByocSharedComponentsRequest) GetTikv() *ByocSharedComponentScaleTarget {
	if x != nil {
		return x.Tikv
	}
	return nil
}

func (x *ScaleByocSharedComponentsRequest) GetTiflashWrite() *ByocSharedComponentScaleTarget {
	if x != nil {
		return x.TiflashWrite
	}
	return nil
}

func (x *ScaleByocSharedComponentsRequest) GetTiflashCompute() *ByocSharedComponentScaleTarget {
	if x != nil {
		return x.TiflashCompute
	}
	return nil
}

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

// (-- api-linter: core::0123::resource-annotation=disabled
//
//	aip.dev/not-precedent: This is a page-specific read/write model rather than a standalone resource. --)
type ByocVcpuPool struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// The BYOC resource pool ID as a plain string id.
	ResourcePoolId string `protobuf:"bytes,1,opt,name=resource_pool_id,json=resourcePoolId,proto3" json:"resource_pool_id,omitempty"`
	Name           string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// The control-plane recorded dataplane locator used by clients for O11Y discovery.
	// Its presence does not guarantee runtime discovery or metrics query success.
	DataplaneId string `protobuf:"bytes,3,opt,name=dataplane_id,json=dataplaneId,proto3" json:"dataplane_id,omitempty"`
	VcpusLimit  *int64 `protobuf:"varint,4,opt,name=vcpus_limit,json=vcpusLimit,proto3,oneof" json:"vcpus_limit,omitempty"`
	VcpusUsed   int64  `protobuf:"varint,5,opt,name=vcpus_used,json=vcpusUsed,proto3" json:"vcpus_used,omitempty"`
	// Whether this pool is the default BYOC pool for the current organization
	// under the same cloud provider and region.
	IsDefault bool `protobuf:"varint,6,opt,name=is_default,json=isDefault,proto3" json:"is_default,omitempty"`
	// Availability scope of the underlying resource pool.
	HighAvailabilityType ByocVcpuPool_HighAvailabilityType `protobuf:"varint,7,opt,name=high_availability_type,json=highAvailabilityType,proto3,enum=tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool_HighAvailabilityType" json:"high_availability_type,omitempty"`
	// Runtime placement zones reported by dataplane-manager for the resource pool.
	ZoneConfig         *ByocVcpuPool_ZoneConfig         `protobuf:"bytes,8,opt,name=zone_config,json=zoneConfig,proto3" json:"zone_config,omitempty"`
	State              ByocVcpuPool_State               `protobuf:"varint,9,opt,name=state,proto3,enum=tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool_State" json:"state,omitempty"`
	TidbInstancesState *ByocVcpuPool_TidbInstancesState `protobuf:"bytes,10,opt,name=tidb_instances_state,json=tidbInstancesState,proto3" json:"tidb_instances_state,omitempty"`
}

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

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

func (*ByocVcpuPool) ProtoMessage() {}

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

func (x *ByocVcpuPool) GetResourcePoolId() string {
	if x != nil {
		return x.ResourcePoolId
	}
	return ""
}

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

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

func (x *ByocVcpuPool) GetVcpusLimit() int64 {
	if x != nil && x.VcpusLimit != nil {
		return *x.VcpusLimit
	}
	return 0
}

func (x *ByocVcpuPool) GetVcpusUsed() int64 {
	if x != nil {
		return x.VcpusUsed
	}
	return 0
}

func (x *ByocVcpuPool) GetIsDefault() bool {
	if x != nil {
		return x.IsDefault
	}
	return false
}

func (x *ByocVcpuPool) GetHighAvailabilityType() ByocVcpuPool_HighAvailabilityType {
	if x != nil {
		return x.HighAvailabilityType
	}
	return ByocVcpuPool_HIGH_AVAILABILITY_TYPE_UNSPECIFIED
}

func (x *ByocVcpuPool) GetZoneConfig() *ByocVcpuPool_ZoneConfig {
	if x != nil {
		return x.ZoneConfig
	}
	return nil
}

func (x *ByocVcpuPool) GetState() ByocVcpuPool_State {
	if x != nil {
		return x.State
	}
	return ByocVcpuPool_STATE_UNSPECIFIED
}

func (x *ByocVcpuPool) GetTidbInstancesState() *ByocVcpuPool_TidbInstancesState {
	if x != nil {
		return x.TidbInstancesState
	}
	return nil
}

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

	ResourcePoolId string                                  `protobuf:"bytes,1,opt,name=resource_pool_id,json=resourcePoolId,proto3" json:"resource_pool_id,omitempty"`
	VcpusLimit     int64                                   `protobuf:"varint,2,opt,name=vcpus_limit,json=vcpusLimit,proto3" json:"vcpus_limit,omitempty"`
	Preview        *ByocSharedComponentScalePreviewSummary `protobuf:"bytes,3,opt,name=preview,proto3" json:"preview,omitempty"`
	Components     []*ByocSharedComponentScaleConstraint   `protobuf:"bytes,4,rep,name=components,proto3" json:"components,omitempty"`
}

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

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

func (*ByocSharedComponentScaleConstraints) ProtoMessage() {}

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

func (x *ByocSharedComponentScaleConstraints) GetResourcePoolId() string {
	if x != nil {
		return x.ResourcePoolId
	}
	return ""
}

func (x *ByocSharedComponentScaleConstraints) GetVcpusLimit() int64 {
	if x != nil {
		return x.VcpusLimit
	}
	return 0
}

func (x *ByocSharedComponentScaleConstraints) GetPreview() *ByocSharedComponentScalePreviewSummary {
	if x != nil {
		return x.Preview
	}
	return nil
}

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

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

	Preview     *ByocSharedComponentScalePreviewSummary  `protobuf:"bytes,1,opt,name=preview,proto3" json:"preview,omitempty"`
	Components  []*ByocSharedComponentScalePlanComponent `protobuf:"bytes,2,rep,name=components,proto3" json:"components,omitempty"`
	OperationId string                                   `protobuf:"bytes,3,opt,name=operation_id,json=operationId,proto3" json:"operation_id,omitempty"`
}

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

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

func (*ScaleByocSharedComponentsResponse) ProtoMessage() {}

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

func (x *ScaleByocSharedComponentsResponse) GetPreview() *ByocSharedComponentScalePreviewSummary {
	if x != nil {
		return x.Preview
	}
	return nil
}

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

func (x *ScaleByocSharedComponentsResponse) GetOperationId() string {
	if x != nil {
		return x.OperationId
	}
	return ""
}

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

	RegionId       string                `protobuf:"bytes,1,opt,name=region_id,json=regionId,proto3" json:"region_id,omitempty"`
	OrganizationId string                `protobuf:"bytes,2,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
	ComponentType  NodeSpecComponentType `protobuf:"varint,3,opt,name=component_type,json=componentType,proto3,enum=tidb_cloud_open_api.nextgen.v1beta2.NodeSpecComponentType" json:"component_type,omitempty"`
	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"`
}

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

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

func (*ListNodeSpecsRequest) ProtoMessage() {}

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

func (x *ListNodeSpecsRequest) GetRegionId() string {
	if x != nil {
		return x.RegionId
	}
	return ""
}

func (x *ListNodeSpecsRequest) GetOrganizationId() string {
	if x != nil {
		return x.OrganizationId
	}
	return ""
}

func (x *ListNodeSpecsRequest) GetComponentType() NodeSpecComponentType {
	if x != nil {
		return x.ComponentType
	}
	return NodeSpecComponentType_NODE_SPEC_COMPONENT_TYPE_UNSPECIFIED
}

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

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

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

	NodeSpecs        []*NodeSpec       `protobuf:"bytes,1,rep,name=node_specs,json=nodeSpecs,proto3" json:"node_specs,omitempty"`
	NodeCountOptions *NodeCountOptions `protobuf:"bytes,2,opt,name=node_count_options,json=nodeCountOptions,proto3" json:"node_count_options,omitempty"`
	TotalSize        int32             `protobuf:"varint,100,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
	NextPageToken    string            `protobuf:"bytes,101,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
}

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

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

func (*ListNodeSpecsResponse) ProtoMessage() {}

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

func (x *ListNodeSpecsResponse) GetNodeSpecs() []*NodeSpec {
	if x != nil {
		return x.NodeSpecs
	}
	return nil
}

func (x *ListNodeSpecsResponse) GetNodeCountOptions() *NodeCountOptions {
	if x != nil {
		return x.NodeCountOptions
	}
	return nil
}

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

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

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

	// The logical region in which the resource pool will be created.
	RegionId string `protobuf:"bytes,1,opt,name=region_id,json=regionId,proto3" json:"region_id,omitempty"`
	// The intended availability scope. If unspecified, the default is REGIONAL.
	HighAvailabilityType ByocVcpuPool_HighAvailabilityType `protobuf:"varint,2,opt,name=high_availability_type,json=highAvailabilityType,proto3,enum=tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool_HighAvailabilityType" json:"high_availability_type,omitempty"`
}

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

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

func (*PlanResourcePoolCidrRequest) ProtoMessage() {}

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

func (x *PlanResourcePoolCidrRequest) GetRegionId() string {
	if x != nil {
		return x.RegionId
	}
	return ""
}

func (x *PlanResourcePoolCidrRequest) GetHighAvailabilityType() ByocVcpuPool_HighAvailabilityType {
	if x != nil {
		return x.HighAvailabilityType
	}
	return ByocVcpuPool_HIGH_AVAILABILITY_TYPE_UNSPECIFIED
}

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

	// The selected logical region.
	RegionId string `protobuf:"bytes,1,opt,name=region_id,json=regionId,proto3" json:"region_id,omitempty"`
	// The cloud provider of the selected region.
	CloudProvider v1beta1.Region_CloudProvider `protobuf:"varint,2,opt,name=cloud_provider,json=cloudProvider,proto3,enum=tidb_cloud_open_api.common.v1beta1.Region_CloudProvider" json:"cloud_provider,omitempty"`
	// The effective CIDR policy for the selected provider and region.
	Policy *ResourcePoolCidrPolicy `protobuf:"bytes,3,opt,name=policy,proto3" json:"policy,omitempty"`
	// CIDRs excluded from recommendation and create.
	Exclusions []*ResourcePoolCidrExclusion `protobuf:"bytes,4,rep,name=exclusions,proto3" json:"exclusions,omitempty"`
	// The result of the recommendation search.
	RecommendationStatus PlanResourcePoolCidrResponse_RecommendationStatus `protobuf:"varint,5,opt,name=recommendation_status,json=recommendationStatus,proto3,enum=tidb_cloud_open_api.nextgen.v1beta2.PlanResourcePoolCidrResponse_RecommendationStatus" json:"recommendation_status,omitempty"`
	// The recommended CIDR and its derived node capacity. Present only when recommendation_status is AVAILABLE.
	Recommendation *ResourcePoolCidrRecommendation `protobuf:"bytes,6,opt,name=recommendation,proto3,oneof" json:"recommendation,omitempty"`
}

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

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

func (*PlanResourcePoolCidrResponse) ProtoMessage() {}

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

func (x *PlanResourcePoolCidrResponse) GetRegionId() string {
	if x != nil {
		return x.RegionId
	}
	return ""
}

func (x *PlanResourcePoolCidrResponse) GetCloudProvider() v1beta1.Region_CloudProvider {
	if x != nil {
		return x.CloudProvider
	}
	return v1beta1.Region_CloudProvider(0)
}

func (x *PlanResourcePoolCidrResponse) GetPolicy() *ResourcePoolCidrPolicy {
	if x != nil {
		return x.Policy
	}
	return nil
}

func (x *PlanResourcePoolCidrResponse) GetExclusions() []*ResourcePoolCidrExclusion {
	if x != nil {
		return x.Exclusions
	}
	return nil
}

func (x *PlanResourcePoolCidrResponse) GetRecommendationStatus() PlanResourcePoolCidrResponse_RecommendationStatus {
	if x != nil {
		return x.RecommendationStatus
	}
	return PlanResourcePoolCidrResponse_RECOMMENDATION_STATUS_UNSPECIFIED
}

func (x *PlanResourcePoolCidrResponse) GetRecommendation() *ResourcePoolCidrRecommendation {
	if x != nil {
		return x.Recommendation
	}
	return nil
}

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

	// The logical region in which the resource pool will be created.
	RegionId string `protobuf:"bytes,1,opt,name=region_id,json=regionId,proto3" json:"region_id,omitempty"`
	// The CIDR to validate.
	Cidr string `protobuf:"bytes,2,opt,name=cidr,proto3" json:"cidr,omitempty"`
	// The intended availability scope. If unspecified, the default is REGIONAL.
	HighAvailabilityType ByocVcpuPool_HighAvailabilityType `protobuf:"varint,3,opt,name=high_availability_type,json=highAvailabilityType,proto3,enum=tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool_HighAvailabilityType" json:"high_availability_type,omitempty"`
}

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

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

func (*ValidateResourcePoolCidrRequest) ProtoMessage() {}

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

func (x *ValidateResourcePoolCidrRequest) GetRegionId() string {
	if x != nil {
		return x.RegionId
	}
	return ""
}

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

func (x *ValidateResourcePoolCidrRequest) GetHighAvailabilityType() ByocVcpuPool_HighAvailabilityType {
	if x != nil {
		return x.HighAvailabilityType
	}
	return ByocVcpuPool_HIGH_AVAILABILITY_TYPE_UNSPECIFIED
}

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

	// The selected logical region.
	RegionId string `protobuf:"bytes,1,opt,name=region_id,json=regionId,proto3" json:"region_id,omitempty"`
	// The cloud provider of the selected region.
	CloudProvider v1beta1.Region_CloudProvider `protobuf:"varint,2,opt,name=cloud_provider,json=cloudProvider,proto3,enum=tidb_cloud_open_api.common.v1beta1.Region_CloudProvider" json:"cloud_provider,omitempty"`
	// The trimmed submitted value. A valid value is canonical.
	Cidr string `protobuf:"bytes,3,opt,name=cidr,proto3" json:"cidr,omitempty"`
	// The maximum aggregate steady-state dataplane node count supported across the resource pool and its TiDB instances.
	// Present only when CSNG reports supported=true; independent overlap findings may still be present.
	SupportedNodeCount *int64 `protobuf:"varint,4,opt,name=supported_node_count,json=supportedNodeCount,proto3,oneof" json:"supported_node_count,omitempty"`
	// All known findings that block resource-pool creation.
	BlockingFindings []*ResourcePoolCidrValidationFinding `protobuf:"bytes,5,rep,name=blocking_findings,json=blockingFindings,proto3" json:"blocking_findings,omitempty"`
}

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

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

func (*ValidateResourcePoolCidrResponse) ProtoMessage() {}

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

func (x *ValidateResourcePoolCidrResponse) GetRegionId() string {
	if x != nil {
		return x.RegionId
	}
	return ""
}

func (x *ValidateResourcePoolCidrResponse) GetCloudProvider() v1beta1.Region_CloudProvider {
	if x != nil {
		return x.CloudProvider
	}
	return v1beta1.Region_CloudProvider(0)
}

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

func (x *ValidateResourcePoolCidrResponse) GetSupportedNodeCount() int64 {
	if x != nil && x.SupportedNodeCount != nil {
		return *x.SupportedNodeCount
	}
	return 0
}

func (x *ValidateResourcePoolCidrResponse) GetBlockingFindings() []*ResourcePoolCidrValidationFinding {
	if x != nil {
		return x.BlockingFindings
	}
	return nil
}

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

	// Private IPv4 ranges accepted by common validation.
	SupportedPrivateCidrs []string `protobuf:"bytes,1,rep,name=supported_private_cidrs,json=supportedPrivateCidrs,proto3" json:"supported_private_cidrs,omitempty"`
	// Inclusive provider-specific prefix guidance. An empty list advertises no additional client-side restriction.
	AllowedPrefixRanges []*ResourcePoolCidrPrefixRange `protobuf:"bytes,2,rep,name=allowed_prefix_ranges,json=allowedPrefixRanges,proto3" json:"allowed_prefix_ranges,omitempty"`
}

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

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

func (*ResourcePoolCidrPolicy) ProtoMessage() {}

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

func (x *ResourcePoolCidrPolicy) GetSupportedPrivateCidrs() []string {
	if x != nil {
		return x.SupportedPrivateCidrs
	}
	return nil
}

func (x *ResourcePoolCidrPolicy) GetAllowedPrefixRanges() []*ResourcePoolCidrPrefixRange {
	if x != nil {
		return x.AllowedPrefixRanges
	}
	return nil
}

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

	MinPrefixLength int32 `protobuf:"varint,1,opt,name=min_prefix_length,json=minPrefixLength,proto3" json:"min_prefix_length,omitempty"`
	MaxPrefixLength int32 `protobuf:"varint,2,opt,name=max_prefix_length,json=maxPrefixLength,proto3" json:"max_prefix_length,omitempty"`
}

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

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

func (*ResourcePoolCidrPrefixRange) ProtoMessage() {}

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

func (x *ResourcePoolCidrPrefixRange) GetMinPrefixLength() int32 {
	if x != nil {
		return x.MinPrefixLength
	}
	return 0
}

func (x *ResourcePoolCidrPrefixRange) GetMaxPrefixLength() int32 {
	if x != nil {
		return x.MaxPrefixLength
	}
	return 0
}

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

	// The recommended canonical CIDR.
	Cidr string `protobuf:"bytes,1,opt,name=cidr,proto3" json:"cidr,omitempty"`
	// The maximum aggregate steady-state dataplane node count supported across the resource pool and its TiDB instances.
	SupportedNodeCount int64 `protobuf:"varint,2,opt,name=supported_node_count,json=supportedNodeCount,proto3" json:"supported_node_count,omitempty"`
}

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

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

func (*ResourcePoolCidrRecommendation) ProtoMessage() {}

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

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

func (x *ResourcePoolCidrRecommendation) GetSupportedNodeCount() int64 {
	if x != nil {
		return x.SupportedNodeCount
	}
	return 0
}

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

	Type ResourcePoolCidrExclusion_Type `protobuf:"varint,1,opt,name=type,proto3,enum=tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrExclusion_Type" json:"type,omitempty"`
	Cidr string                         `protobuf:"bytes,2,opt,name=cidr,proto3" json:"cidr,omitempty"`
	// Present only for RESOURCE_POOL.
	ResourcePoolId *string `protobuf:"bytes,3,opt,name=resource_pool_id,json=resourcePoolId,proto3,oneof" json:"resource_pool_id,omitempty"`
	// Present only for RESOURCE_POOL.
	ResourcePoolDisplayName *string `protobuf:"bytes,4,opt,name=resource_pool_display_name,json=resourcePoolDisplayName,proto3,oneof" json:"resource_pool_display_name,omitempty"`
	// Present only for RESOURCE_POOL.
	RegionId *string `protobuf:"bytes,5,opt,name=region_id,json=regionId,proto3,oneof" json:"region_id,omitempty"`
	// Present only for RESOURCE_POOL.
	CloudProvider *v1beta1.Region_CloudProvider `protobuf:"varint,6,opt,name=cloud_provider,json=cloudProvider,proto3,enum=tidb_cloud_open_api.common.v1beta1.Region_CloudProvider,oneof" json:"cloud_provider,omitempty"`
}

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

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

func (*ResourcePoolCidrExclusion) ProtoMessage() {}

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

func (x *ResourcePoolCidrExclusion) GetType() ResourcePoolCidrExclusion_Type {
	if x != nil {
		return x.Type
	}
	return ResourcePoolCidrExclusion_TYPE_UNSPECIFIED
}

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

func (x *ResourcePoolCidrExclusion) GetResourcePoolId() string {
	if x != nil && x.ResourcePoolId != nil {
		return *x.ResourcePoolId
	}
	return ""
}

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

func (x *ResourcePoolCidrExclusion) GetRegionId() string {
	if x != nil && x.RegionId != nil {
		return *x.RegionId
	}
	return ""
}

func (x *ResourcePoolCidrExclusion) GetCloudProvider() v1beta1.Region_CloudProvider {
	if x != nil && x.CloudProvider != nil {
		return *x.CloudProvider
	}
	return v1beta1.Region_CloudProvider(0)
}

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

	Code ResourcePoolCidrValidationFinding_Code `protobuf:"varint,1,opt,name=code,proto3,enum=tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrValidationFinding_Code" json:"code,omitempty"`
	// Human-readable fallback text. Clients use code for behavior and localization.
	Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	// Present only for an overlap finding.
	ConflictingExclusion *ResourcePoolCidrExclusion `protobuf:"bytes,3,opt,name=conflicting_exclusion,json=conflictingExclusion,proto3,oneof" json:"conflicting_exclusion,omitempty"`
}

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

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

func (*ResourcePoolCidrValidationFinding) ProtoMessage() {}

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

func (x *ResourcePoolCidrValidationFinding) GetCode() ResourcePoolCidrValidationFinding_Code {
	if x != nil {
		return x.Code
	}
	return ResourcePoolCidrValidationFinding_CODE_UNSPECIFIED
}

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

func (x *ResourcePoolCidrValidationFinding) GetConflictingExclusion() *ResourcePoolCidrExclusion {
	if x != nil {
		return x.ConflictingExclusion
	}
	return nil
}

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

	BlockingFindings []*ResourcePoolCidrValidationFinding `protobuf:"bytes,1,rep,name=blocking_findings,json=blockingFindings,proto3" json:"blocking_findings,omitempty"`
}

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

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

func (*ResourcePoolCidrValidationError) ProtoMessage() {}

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

func (x *ResourcePoolCidrValidationError) GetBlockingFindings() []*ResourcePoolCidrValidationFinding {
	if x != nil {
		return x.BlockingFindings
	}
	return nil
}

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

	NodeSpecKey   string                `protobuf:"bytes,1,opt,name=node_spec_key,json=nodeSpecKey,proto3" json:"node_spec_key,omitempty"`
	DisplayName   string                `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	ComponentType NodeSpecComponentType `protobuf:"varint,3,opt,name=component_type,json=componentType,proto3,enum=tidb_cloud_open_api.nextgen.v1beta2.NodeSpecComponentType" json:"component_type,omitempty"`
	Cpu           int64                 `protobuf:"varint,4,opt,name=cpu,proto3" json:"cpu,omitempty"`
	MemoryGi      int64                 `protobuf:"varint,5,opt,name=memory_gi,json=memoryGi,proto3" json:"memory_gi,omitempty"`
	IsDefault     bool                  `protobuf:"varint,6,opt,name=is_default,json=isDefault,proto3" json:"is_default,omitempty"`
	// Customer-configurable data storage. Service-managed storage is not returned.
	Storages []*NodeSpecStorage `protobuf:"bytes,7,rep,name=storages,proto3" json:"storages,omitempty"`
}

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

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

func (*NodeSpec) ProtoMessage() {}

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

func (x *NodeSpec) GetNodeSpecKey() string {
	if x != nil {
		return x.NodeSpecKey
	}
	return ""
}

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

func (x *NodeSpec) GetComponentType() NodeSpecComponentType {
	if x != nil {
		return x.ComponentType
	}
	return NodeSpecComponentType_NODE_SPEC_COMPONENT_TYPE_UNSPECIFIED
}

func (x *NodeSpec) GetCpu() int64 {
	if x != nil {
		return x.Cpu
	}
	return 0
}

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

func (x *NodeSpec) GetIsDefault() bool {
	if x != nil {
		return x.IsDefault
	}
	return false
}

func (x *NodeSpec) GetStorages() []*NodeSpecStorage {
	if x != nil {
		return x.Storages
	}
	return nil
}

// (-- api-linter: core::0123::resource-annotation=disabled
//
//	aip.dev/not-precedent: `name` identifies embedded storage, not a standalone resource. --)
type NodeSpecStorage struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// The storage name. Only `data` is returned.
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	DefaultSizeGi int64  `protobuf:"varint,2,opt,name=default_size_gi,json=defaultSizeGi,proto3" json:"default_size_gi,omitempty"`
	MinSizeGi     int64  `protobuf:"varint,3,opt,name=min_size_gi,json=minSizeGi,proto3" json:"min_size_gi,omitempty"`
	MaxSizeGi     int64  `protobuf:"varint,4,opt,name=max_size_gi,json=maxSizeGi,proto3" json:"max_size_gi,omitempty"`
	Resizable     *bool  `protobuf:"varint,5,opt,name=resizable,proto3,oneof" json:"resizable,omitempty"`
	CurrentSizeGi *int64 `protobuf:"varint,6,opt,name=current_size_gi,json=currentSizeGi,proto3,oneof" json:"current_size_gi,omitempty"`
}

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

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

func (*NodeSpecStorage) ProtoMessage() {}

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

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

func (x *NodeSpecStorage) GetDefaultSizeGi() int64 {
	if x != nil {
		return x.DefaultSizeGi
	}
	return 0
}

func (x *NodeSpecStorage) GetMinSizeGi() int64 {
	if x != nil {
		return x.MinSizeGi
	}
	return 0
}

func (x *NodeSpecStorage) GetMaxSizeGi() int64 {
	if x != nil {
		return x.MaxSizeGi
	}
	return 0
}

func (x *NodeSpecStorage) GetResizable() bool {
	if x != nil && x.Resizable != nil {
		return *x.Resizable
	}
	return false
}

func (x *NodeSpecStorage) GetCurrentSizeGi() int64 {
	if x != nil && x.CurrentSizeGi != nil {
		return *x.CurrentSizeGi
	}
	return 0
}

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

	DefaultNodeCount int64          `protobuf:"varint,1,opt,name=default_node_count,json=defaultNodeCount,proto3" json:"default_node_count,omitempty"`
	MinNodeCount     int64          `protobuf:"varint,2,opt,name=min_node_count,json=minNodeCount,proto3" json:"min_node_count,omitempty"`
	MaxNodeCount     int64          `protobuf:"varint,3,opt,name=max_node_count,json=maxNodeCount,proto3" json:"max_node_count,omitempty"`
	Rule             *NodeCountRule `protobuf:"bytes,4,opt,name=rule,proto3" json:"rule,omitempty"`
}

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

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

func (*NodeCountOptions) ProtoMessage() {}

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

func (x *NodeCountOptions) GetDefaultNodeCount() int64 {
	if x != nil {
		return x.DefaultNodeCount
	}
	return 0
}

func (x *NodeCountOptions) GetMinNodeCount() int64 {
	if x != nil {
		return x.MinNodeCount
	}
	return 0
}

func (x *NodeCountOptions) GetMaxNodeCount() int64 {
	if x != nil {
		return x.MaxNodeCount
	}
	return 0
}

func (x *NodeCountOptions) GetRule() *NodeCountRule {
	if x != nil {
		return x.Rule
	}
	return nil
}

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

	Type  NodeCountRuleType `protobuf:"varint,1,opt,name=type,proto3,enum=tidb_cloud_open_api.nextgen.v1beta2.NodeCountRuleType" json:"type,omitempty"`
	Value int64             `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"`
}

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

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

func (*NodeCountRule) ProtoMessage() {}

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

func (x *NodeCountRule) GetType() NodeCountRuleType {
	if x != nil {
		return x.Type
	}
	return NodeCountRuleType_NODE_COUNT_RULE_TYPE_UNSPECIFIED
}

func (x *NodeCountRule) GetValue() int64 {
	if x != nil {
		return x.Value
	}
	return 0
}

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

	CurrentVcpusUsed int64    `protobuf:"varint,1,opt,name=current_vcpus_used,json=currentVcpusUsed,proto3" json:"current_vcpus_used,omitempty"`
	ScalingVcpusUsed int64    `protobuf:"varint,2,opt,name=scaling_vcpus_used,json=scalingVcpusUsed,proto3" json:"scaling_vcpus_used,omitempty"`
	MaxVcpusLimit    int64    `protobuf:"varint,3,opt,name=max_vcpus_limit,json=maxVcpusLimit,proto3" json:"max_vcpus_limit,omitempty"`
	Allowed          bool     `protobuf:"varint,4,opt,name=allowed,proto3" json:"allowed,omitempty"`
	BlockingReasons  []string `protobuf:"bytes,5,rep,name=blocking_reasons,json=blockingReasons,proto3" json:"blocking_reasons,omitempty"`
}

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

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

func (*ByocSharedComponentScalePreviewSummary) ProtoMessage() {}

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

func (x *ByocSharedComponentScalePreviewSummary) GetCurrentVcpusUsed() int64 {
	if x != nil {
		return x.CurrentVcpusUsed
	}
	return 0
}

func (x *ByocSharedComponentScalePreviewSummary) GetScalingVcpusUsed() int64 {
	if x != nil {
		return x.ScalingVcpusUsed
	}
	return 0
}

func (x *ByocSharedComponentScalePreviewSummary) GetMaxVcpusLimit() int64 {
	if x != nil {
		return x.MaxVcpusLimit
	}
	return 0
}

func (x *ByocSharedComponentScalePreviewSummary) GetAllowed() bool {
	if x != nil {
		return x.Allowed
	}
	return false
}

func (x *ByocSharedComponentScalePreviewSummary) GetBlockingReasons() []string {
	if x != nil {
		return x.BlockingReasons
	}
	return nil
}

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

	ComponentType        ByocSharedComponentType                       `protobuf:"varint,1,opt,name=component_type,json=componentType,proto3,enum=tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentType" json:"component_type,omitempty"`
	ComponentId          string                                        `protobuf:"bytes,2,opt,name=component_id,json=componentId,proto3" json:"component_id,omitempty"`
	Exists               bool                                          `protobuf:"varint,3,opt,name=exists,proto3" json:"exists,omitempty"`
	Phase                string                                        `protobuf:"bytes,4,opt,name=phase,proto3" json:"phase,omitempty"`
	Current              *ByocSharedComponentScaleTarget               `protobuf:"bytes,5,opt,name=current,proto3" json:"current,omitempty"`
	BlockingReasons      []*ByocSharedComponentScaleConstraintReason   `protobuf:"bytes,6,rep,name=blocking_reasons,json=blockingReasons,proto3" json:"blocking_reasons,omitempty"`
	NodeCountConstraints *ByocSharedComponentScaleNodeCountConstraints `protobuf:"bytes,7,opt,name=node_count_constraints,json=nodeCountConstraints,proto3" json:"node_count_constraints,omitempty"`
	NodeSpecConstraints  *ByocSharedComponentScaleNodeSpecConstraints  `protobuf:"bytes,8,opt,name=node_spec_constraints,json=nodeSpecConstraints,proto3" json:"node_spec_constraints,omitempty"`
}

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

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

func (*ByocSharedComponentScaleConstraint) ProtoMessage() {}

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

func (x *ByocSharedComponentScaleConstraint) GetComponentType() ByocSharedComponentType {
	if x != nil {
		return x.ComponentType
	}
	return ByocSharedComponentType_BYOC_SHARED_COMPONENT_TYPE_UNSPECIFIED
}

func (x *ByocSharedComponentScaleConstraint) GetComponentId() string {
	if x != nil {
		return x.ComponentId
	}
	return ""
}

func (x *ByocSharedComponentScaleConstraint) GetExists() bool {
	if x != nil {
		return x.Exists
	}
	return false
}

func (x *ByocSharedComponentScaleConstraint) GetPhase() string {
	if x != nil {
		return x.Phase
	}
	return ""
}

func (x *ByocSharedComponentScaleConstraint) GetCurrent() *ByocSharedComponentScaleTarget {
	if x != nil {
		return x.Current
	}
	return nil
}

func (x *ByocSharedComponentScaleConstraint) GetBlockingReasons() []*ByocSharedComponentScaleConstraintReason {
	if x != nil {
		return x.BlockingReasons
	}
	return nil
}

func (x *ByocSharedComponentScaleConstraint) GetNodeCountConstraints() *ByocSharedComponentScaleNodeCountConstraints {
	if x != nil {
		return x.NodeCountConstraints
	}
	return nil
}

func (x *ByocSharedComponentScaleConstraint) GetNodeSpecConstraints() *ByocSharedComponentScaleNodeSpecConstraints {
	if x != nil {
		return x.NodeSpecConstraints
	}
	return nil
}

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

	ComponentType   ByocSharedComponentType         `protobuf:"varint,1,opt,name=component_type,json=componentType,proto3,enum=tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentType" json:"component_type,omitempty"`
	ComponentId     string                          `protobuf:"bytes,2,opt,name=component_id,json=componentId,proto3" json:"component_id,omitempty"`
	Current         *ByocSharedComponentScaleTarget `protobuf:"bytes,3,opt,name=current,proto3" json:"current,omitempty"`
	Target          *ByocSharedComponentScaleTarget `protobuf:"bytes,4,opt,name=target,proto3" json:"target,omitempty"`
	Allowed         bool                            `protobuf:"varint,5,opt,name=allowed,proto3" json:"allowed,omitempty"`
	BlockingReasons []string                        `protobuf:"bytes,6,rep,name=blocking_reasons,json=blockingReasons,proto3" json:"blocking_reasons,omitempty"`
}

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

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

func (*ByocSharedComponentScalePlanComponent) ProtoMessage() {}

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

func (x *ByocSharedComponentScalePlanComponent) GetComponentType() ByocSharedComponentType {
	if x != nil {
		return x.ComponentType
	}
	return ByocSharedComponentType_BYOC_SHARED_COMPONENT_TYPE_UNSPECIFIED
}

func (x *ByocSharedComponentScalePlanComponent) GetComponentId() string {
	if x != nil {
		return x.ComponentId
	}
	return ""
}

func (x *ByocSharedComponentScalePlanComponent) GetCurrent() *ByocSharedComponentScaleTarget {
	if x != nil {
		return x.Current
	}
	return nil
}

func (x *ByocSharedComponentScalePlanComponent) GetTarget() *ByocSharedComponentScaleTarget {
	if x != nil {
		return x.Target
	}
	return nil
}

func (x *ByocSharedComponentScalePlanComponent) GetAllowed() bool {
	if x != nil {
		return x.Allowed
	}
	return false
}

func (x *ByocSharedComponentScalePlanComponent) GetBlockingReasons() []string {
	if x != nil {
		return x.BlockingReasons
	}
	return nil
}

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

	NodeCount *int64                        `protobuf:"varint,1,opt,name=node_count,json=nodeCount,proto3,oneof" json:"node_count,omitempty"`
	Cpu       *int64                        `protobuf:"varint,2,opt,name=cpu,proto3,oneof" json:"cpu,omitempty"`
	MemoryGi  *int64                        `protobuf:"varint,3,opt,name=memory_gi,json=memoryGi,proto3,oneof" json:"memory_gi,omitempty"`
	Storages  []*ByocSharedComponentStorage `protobuf:"bytes,4,rep,name=storages,proto3" json:"storages,omitempty"`
}

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

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

func (*ByocSharedComponentScaleTarget) ProtoMessage() {}

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

func (x *ByocSharedComponentScaleTarget) GetNodeCount() int64 {
	if x != nil && x.NodeCount != nil {
		return *x.NodeCount
	}
	return 0
}

func (x *ByocSharedComponentScaleTarget) GetCpu() int64 {
	if x != nil && x.Cpu != nil {
		return *x.Cpu
	}
	return 0
}

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

func (x *ByocSharedComponentScaleTarget) GetStorages() []*ByocSharedComponentStorage {
	if x != nil {
		return x.Storages
	}
	return nil
}

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

	StorageName string `protobuf:"bytes,1,opt,name=storage_name,json=storageName,proto3" json:"storage_name,omitempty"`
	SizeGi      *int64 `protobuf:"varint,2,opt,name=size_gi,json=sizeGi,proto3,oneof" json:"size_gi,omitempty"`
}

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

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

func (*ByocSharedComponentStorage) ProtoMessage() {}

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

func (x *ByocSharedComponentStorage) GetStorageName() string {
	if x != nil {
		return x.StorageName
	}
	return ""
}

func (x *ByocSharedComponentStorage) GetSizeGi() int64 {
	if x != nil && x.SizeGi != nil {
		return *x.SizeGi
	}
	return 0
}

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

	Code    string `protobuf:"bytes,1,opt,name=code,proto3" json:"code,omitempty"`
	Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
}

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

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

func (*ByocSharedComponentScaleConstraintReason) ProtoMessage() {}

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

// Deprecated: Use ByocSharedComponentScaleConstraintReason.ProtoReflect.Descriptor instead.
func (*ByocSharedComponentScaleConstraintReason) Descriptor() ([]byte, []int) {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescGZIP(), []int{37}
}

func (x *ByocSharedComponentScaleConstraintReason) GetCode() string {
	if x != nil {
		return x.Code
	}
	return ""
}

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

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

	Current        int64                                  `protobuf:"varint,1,opt,name=current,proto3" json:"current,omitempty"`
	Min            int64                                  `protobuf:"varint,2,opt,name=min,proto3" json:"min,omitempty"`
	Max            int64                                  `protobuf:"varint,3,opt,name=max,proto3" json:"max,omitempty"`
	Rule           *ByocSharedComponentScaleNodeCountRule `protobuf:"bytes,4,opt,name=rule,proto3" json:"rule,omitempty"`
	AllowCrossZero bool                                   `protobuf:"varint,5,opt,name=allow_cross_zero,json=allowCrossZero,proto3" json:"allow_cross_zero,omitempty"`
}

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

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

func (*ByocSharedComponentScaleNodeCountConstraints) ProtoMessage() {}

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

// Deprecated: Use ByocSharedComponentScaleNodeCountConstraints.ProtoReflect.Descriptor instead.
func (*ByocSharedComponentScaleNodeCountConstraints) Descriptor() ([]byte, []int) {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescGZIP(), []int{38}
}

func (x *ByocSharedComponentScaleNodeCountConstraints) GetCurrent() int64 {
	if x != nil {
		return x.Current
	}
	return 0
}

func (x *ByocSharedComponentScaleNodeCountConstraints) GetMin() int64 {
	if x != nil {
		return x.Min
	}
	return 0
}

func (x *ByocSharedComponentScaleNodeCountConstraints) GetMax() int64 {
	if x != nil {
		return x.Max
	}
	return 0
}

func (x *ByocSharedComponentScaleNodeCountConstraints) GetRule() *ByocSharedComponentScaleNodeCountRule {
	if x != nil {
		return x.Rule
	}
	return nil
}

func (x *ByocSharedComponentScaleNodeCountConstraints) GetAllowCrossZero() bool {
	if x != nil {
		return x.AllowCrossZero
	}
	return false
}

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

	Type  string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	Value int64  `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"`
}

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

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

func (*ByocSharedComponentScaleNodeCountRule) ProtoMessage() {}

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

// Deprecated: Use ByocSharedComponentScaleNodeCountRule.ProtoReflect.Descriptor instead.
func (*ByocSharedComponentScaleNodeCountRule) Descriptor() ([]byte, []int) {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescGZIP(), []int{39}
}

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

func (x *ByocSharedComponentScaleNodeCountRule) GetValue() int64 {
	if x != nil {
		return x.Value
	}
	return 0
}

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

	Current    string                                       `protobuf:"bytes,1,opt,name=current,proto3" json:"current,omitempty"`
	Candidates []*ByocSharedComponentScaleNodeSpecCandidate `protobuf:"bytes,2,rep,name=candidates,proto3" json:"candidates,omitempty"`
}

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

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

func (*ByocSharedComponentScaleNodeSpecConstraints) ProtoMessage() {}

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

// Deprecated: Use ByocSharedComponentScaleNodeSpecConstraints.ProtoReflect.Descriptor instead.
func (*ByocSharedComponentScaleNodeSpecConstraints) Descriptor() ([]byte, []int) {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescGZIP(), []int{40}
}

func (x *ByocSharedComponentScaleNodeSpecConstraints) GetCurrent() string {
	if x != nil {
		return x.Current
	}
	return ""
}

func (x *ByocSharedComponentScaleNodeSpecConstraints) GetCandidates() []*ByocSharedComponentScaleNodeSpecCandidate {
	if x != nil {
		return x.Candidates
	}
	return nil
}

// (-- api-linter: core::0123::resource-annotation=disabled
//
//	aip.dev/not-precedent: `name` here is a display label for a node spec candidate, not a resource name. --)
type ByocSharedComponentScaleNodeSpecCandidate struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name               string                                       `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Cpu                int64                                        `protobuf:"varint,2,opt,name=cpu,proto3" json:"cpu,omitempty"`
	MemoryGi           int64                                        `protobuf:"varint,3,opt,name=memory_gi,json=memoryGi,proto3" json:"memory_gi,omitempty"`
	Available          bool                                         `protobuf:"varint,4,opt,name=available,proto3" json:"available,omitempty"`
	IsCurrent          bool                                         `protobuf:"varint,5,opt,name=is_current,json=isCurrent,proto3" json:"is_current,omitempty"`
	Reasons            []*ByocSharedComponentScaleConstraintReason  `protobuf:"bytes,6,rep,name=reasons,proto3" json:"reasons,omitempty"`
	RequiredMinSpec    *ByocSharedComponentScaleRequiredMinSpec     `protobuf:"bytes,7,opt,name=required_min_spec,json=requiredMinSpec,proto3" json:"required_min_spec,omitempty"`
	StorageConstraints []*ByocSharedComponentScaleStorageConstraint `protobuf:"bytes,8,rep,name=storage_constraints,json=storageConstraints,proto3" json:"storage_constraints,omitempty"`
}

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

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

func (*ByocSharedComponentScaleNodeSpecCandidate) ProtoMessage() {}

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

// Deprecated: Use ByocSharedComponentScaleNodeSpecCandidate.ProtoReflect.Descriptor instead.
func (*ByocSharedComponentScaleNodeSpecCandidate) Descriptor() ([]byte, []int) {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescGZIP(), []int{41}
}

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

func (x *ByocSharedComponentScaleNodeSpecCandidate) GetCpu() int64 {
	if x != nil {
		return x.Cpu
	}
	return 0
}

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

func (x *ByocSharedComponentScaleNodeSpecCandidate) GetAvailable() bool {
	if x != nil {
		return x.Available
	}
	return false
}

func (x *ByocSharedComponentScaleNodeSpecCandidate) GetIsCurrent() bool {
	if x != nil {
		return x.IsCurrent
	}
	return false
}

func (x *ByocSharedComponentScaleNodeSpecCandidate) GetReasons() []*ByocSharedComponentScaleConstraintReason {
	if x != nil {
		return x.Reasons
	}
	return nil
}

func (x *ByocSharedComponentScaleNodeSpecCandidate) GetRequiredMinSpec() *ByocSharedComponentScaleRequiredMinSpec {
	if x != nil {
		return x.RequiredMinSpec
	}
	return nil
}

func (x *ByocSharedComponentScaleNodeSpecCandidate) GetStorageConstraints() []*ByocSharedComponentScaleStorageConstraint {
	if x != nil {
		return x.StorageConstraints
	}
	return nil
}

// (-- api-linter: core::0123::resource-annotation=disabled
//
//	aip.dev/not-precedent: `name` here is a spec label embedded in a constraints payload, not a standalone resource. --)
type ByocSharedComponentScaleRequiredMinSpec struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name     string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Cpu      int64  `protobuf:"varint,2,opt,name=cpu,proto3" json:"cpu,omitempty"`
	MemoryGi int64  `protobuf:"varint,3,opt,name=memory_gi,json=memoryGi,proto3" json:"memory_gi,omitempty"`
}

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

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

func (*ByocSharedComponentScaleRequiredMinSpec) ProtoMessage() {}

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

// Deprecated: Use ByocSharedComponentScaleRequiredMinSpec.ProtoReflect.Descriptor instead.
func (*ByocSharedComponentScaleRequiredMinSpec) Descriptor() ([]byte, []int) {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescGZIP(), []int{42}
}

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

func (x *ByocSharedComponentScaleRequiredMinSpec) GetCpu() int64 {
	if x != nil {
		return x.Cpu
	}
	return 0
}

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

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

	StorageName   string `protobuf:"bytes,1,opt,name=storage_name,json=storageName,proto3" json:"storage_name,omitempty"`
	Resizable     bool   `protobuf:"varint,2,opt,name=resizable,proto3" json:"resizable,omitempty"`
	CurrentSizeGi int64  `protobuf:"varint,3,opt,name=current_size_gi,json=currentSizeGi,proto3" json:"current_size_gi,omitempty"`
	MaxSizeGi     *int64 `protobuf:"varint,4,opt,name=max_size_gi,json=maxSizeGi,proto3,oneof" json:"max_size_gi,omitempty"`
}

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

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

func (*ByocSharedComponentScaleStorageConstraint) ProtoMessage() {}

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

// Deprecated: Use ByocSharedComponentScaleStorageConstraint.ProtoReflect.Descriptor instead.
func (*ByocSharedComponentScaleStorageConstraint) Descriptor() ([]byte, []int) {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescGZIP(), []int{43}
}

func (x *ByocSharedComponentScaleStorageConstraint) GetStorageName() string {
	if x != nil {
		return x.StorageName
	}
	return ""
}

func (x *ByocSharedComponentScaleStorageConstraint) GetResizable() bool {
	if x != nil {
		return x.Resizable
	}
	return false
}

func (x *ByocSharedComponentScaleStorageConstraint) GetCurrentSizeGi() int64 {
	if x != nil {
		return x.CurrentSizeGi
	}
	return 0
}

func (x *ByocSharedComponentScaleStorageConstraint) GetMaxSizeGi() int64 {
	if x != nil && x.MaxSizeGi != nil {
		return *x.MaxSizeGi
	}
	return 0
}

// (-- api-linter: core::0158::response-next-page-token-field=disabled
//
//	aip.dev/not-precedent: this is a page-style read model that always returns the full grouped inventory. --)
type ListByocVcpuPoolsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Groups []*ListByocVcpuPoolsResponse_Group `protobuf:"bytes,1,rep,name=groups,proto3" json:"groups,omitempty"`
}

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

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

func (*ListByocVcpuPoolsResponse) ProtoMessage() {}

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

// Deprecated: Use ListByocVcpuPoolsResponse.ProtoReflect.Descriptor instead.
func (*ListByocVcpuPoolsResponse) Descriptor() ([]byte, []int) {
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescGZIP(), []int{44}
}

func (x *ListByocVcpuPoolsResponse) GetGroups() []*ListByocVcpuPoolsResponse_Group {
	if x != nil {
		return x.Groups
	}
	return nil
}

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

	CloudProvider         v1beta1.Region_CloudProvider `protobuf:"varint,1,opt,name=cloud_provider,json=cloudProvider,proto3,enum=tidb_cloud_open_api.common.v1beta1.Region_CloudProvider" json:"cloud_provider,omitempty"`
	ServicePlans          []v1beta1.ServicePlan        `protobuf:"varint,2,rep,packed,name=service_plans,json=servicePlans,proto3,enum=tidb_cloud_open_api.common.v1beta1.ServicePlan" json:"service_plans,omitempty"`
	SupportedServicePlans []*v1beta1.ServicePlanInfo   `protobuf:"bytes,3,rep,name=supported_service_plans,json=supportedServicePlans,proto3" json:"supported_service_plans,omitempty"`
}

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

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

func (*ListCloudProvidersResponse_CloudProviderPlan) ProtoMessage() {}

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

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

func (x *ListCloudProvidersResponse_CloudProviderPlan) GetCloudProvider() v1beta1.Region_CloudProvider {
	if x != nil {
		return x.CloudProvider
	}
	return v1beta1.Region_CloudProvider(0)
}

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

func (x *ListCloudProvidersResponse_CloudProviderPlan) GetSupportedServicePlans() []*v1beta1.ServicePlanInfo {
	if x != nil {
		return x.SupportedServicePlans
	}
	return nil
}

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

	BucketUri  string `protobuf:"bytes,1,opt,name=bucket_uri,json=bucketUri,proto3" json:"bucket_uri,omitempty"`
	RoleArn    string `protobuf:"bytes,2,opt,name=role_arn,json=roleArn,proto3" json:"role_arn,omitempty"`
	AccountId  string `protobuf:"bytes,3,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
	ExternalId string `protobuf:"bytes,4,opt,name=external_id,json=externalId,proto3" json:"external_id,omitempty"`
}

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

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

func (*OpsAuditLogSetting_LogLocation) ProtoMessage() {}

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

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

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

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

func (x *OpsAuditLogSetting_LogLocation) GetAccountId() string {
	if x != nil {
		return x.AccountId
	}
	return ""
}

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

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

	FileSizeLimitMb     int64 `protobuf:"varint,1,opt,name=file_size_limit_mb,json=fileSizeLimitMb,proto3" json:"file_size_limit_mb,omitempty"`
	RotationIntervalMin int64 `protobuf:"varint,2,opt,name=rotation_interval_min,json=rotationIntervalMin,proto3" json:"rotation_interval_min,omitempty"`
}

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

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

func (*OpsAuditLogSetting_LogRotation) ProtoMessage() {}

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

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

func (x *OpsAuditLogSetting_LogRotation) GetFileSizeLimitMb() int64 {
	if x != nil {
		return x.FileSizeLimitMb
	}
	return 0
}

func (x *OpsAuditLogSetting_LogRotation) GetRotationIntervalMin() int64 {
	if x != nil {
		return x.RotationIntervalMin
	}
	return 0
}

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

	StartTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
	EndTime   *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
}

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

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

func (*ListRegionCapacitiesRequest_UsageRequest) ProtoMessage() {}

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

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

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

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

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

	Region          *v1beta1.Region                              `protobuf:"bytes,1,opt,name=region,proto3" json:"region,omitempty"`
	TotalVcpusLimit int64                                        `protobuf:"varint,2,opt,name=total_vcpus_limit,json=totalVcpusLimit,proto3" json:"total_vcpus_limit,omitempty"`
	UsedVcpus       int64                                        `protobuf:"varint,3,opt,name=used_vcpus,json=usedVcpus,proto3" json:"used_vcpus,omitempty"`
	HistoryUsages   []*ListRegionCapacitiesResponse_UsageMetrics `protobuf:"bytes,4,rep,name=history_usages,json=historyUsages,proto3" json:"history_usages,omitempty"`
}

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

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

func (*ListRegionCapacitiesResponse_RegionCapacity) ProtoMessage() {}

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

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

func (x *ListRegionCapacitiesResponse_RegionCapacity) GetRegion() *v1beta1.Region {
	if x != nil {
		return x.Region
	}
	return nil
}

func (x *ListRegionCapacitiesResponse_RegionCapacity) GetTotalVcpusLimit() int64 {
	if x != nil {
		return x.TotalVcpusLimit
	}
	return 0
}

func (x *ListRegionCapacitiesResponse_RegionCapacity) GetUsedVcpus() int64 {
	if x != nil {
		return x.UsedVcpus
	}
	return 0
}

func (x *ListRegionCapacitiesResponse_RegionCapacity) GetHistoryUsages() []*ListRegionCapacitiesResponse_UsageMetrics {
	if x != nil {
		return x.HistoryUsages
	}
	return nil
}

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

	MetricsTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=metrics_time,json=metricsTime,proto3" json:"metrics_time,omitempty"`
	UsedVcpus   int64                  `protobuf:"varint,2,opt,name=used_vcpus,json=usedVcpus,proto3" json:"used_vcpus,omitempty"`
}

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

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

func (*ListRegionCapacitiesResponse_UsageMetrics) ProtoMessage() {}

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

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

func (x *ListRegionCapacitiesResponse_UsageMetrics) GetMetricsTime() *timestamppb.Timestamp {
	if x != nil {
		return x.MetricsTime
	}
	return nil
}

func (x *ListRegionCapacitiesResponse_UsageMetrics) GetUsedVcpus() int64 {
	if x != nil {
		return x.UsedVcpus
	}
	return 0
}

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

	// Explicit node zones used by the dataplane nodes.
	NodeZones []string `protobuf:"bytes,1,rep,name=node_zones,json=nodeZones,proto3" json:"node_zones,omitempty"`
}

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

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

func (*ByocVcpuPool_ZoneConfig) ProtoMessage() {}

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

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

func (x *ByocVcpuPool_ZoneConfig) GetNodeZones() []string {
	if x != nil {
		return x.NodeZones
	}
	return nil
}

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

	Active    int32 `protobuf:"varint,1,opt,name=active,proto3" json:"active,omitempty"`
	Modifying int32 `protobuf:"varint,2,opt,name=modifying,proto3" json:"modifying,omitempty"`
	Creating  int32 `protobuf:"varint,3,opt,name=creating,proto3" json:"creating,omitempty"`
	Deleting  int32 `protobuf:"varint,4,opt,name=deleting,proto3" json:"deleting,omitempty"`
}

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

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

func (*ByocVcpuPool_TidbInstancesState) ProtoMessage() {}

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

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

func (x *ByocVcpuPool_TidbInstancesState) GetActive() int32 {
	if x != nil {
		return x.Active
	}
	return 0
}

func (x *ByocVcpuPool_TidbInstancesState) GetModifying() int32 {
	if x != nil {
		return x.Modifying
	}
	return 0
}

func (x *ByocVcpuPool_TidbInstancesState) GetCreating() int32 {
	if x != nil {
		return x.Creating
	}
	return 0
}

func (x *ByocVcpuPool_TidbInstancesState) GetDeleting() int32 {
	if x != nil {
		return x.Deleting
	}
	return 0
}

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

	Region *v1beta1.Region `protobuf:"bytes,1,opt,name=region,proto3" json:"region,omitempty"`
	// The sum of vcpus_limit across all active organization-owned BYOC pools
	// in the group, regardless of whether dataplane_id is empty.
	TotalVcpusLimit int64           `protobuf:"varint,2,opt,name=total_vcpus_limit,json=totalVcpusLimit,proto3" json:"total_vcpus_limit,omitempty"`
	Pools           []*ByocVcpuPool `protobuf:"bytes,3,rep,name=pools,proto3" json:"pools,omitempty"`
}

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

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

func (*ListByocVcpuPoolsResponse_Group) ProtoMessage() {}

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

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

func (x *ListByocVcpuPoolsResponse_Group) GetRegion() *v1beta1.Region {
	if x != nil {
		return x.Region
	}
	return nil
}

func (x *ListByocVcpuPoolsResponse_Group) GetTotalVcpusLimit() int64 {
	if x != nil {
		return x.TotalVcpusLimit
	}
	return 0
}

func (x *ListByocVcpuPoolsResponse_Group) GetPools() []*ByocVcpuPool {
	if x != nil {
		return x.Pools
	}
	return nil
}

var File_tidb_cloud_open_api_nextgen_v1beta2_region_proto protoreflect.FileDescriptor

var file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDesc = []byte{
	0x0a, 0x30, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65,
	0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2f, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2f, 0x76, 0x31,
	0x62, 0x65, 0x74, 0x61, 0x32, 0x2f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x12, 0x23, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f,
	0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e,
	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
	0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 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, 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, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
	0x72, 0x70, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x2d, 0x67, 0x65, 0x6e, 0x2d, 0x6f, 0x70, 0x65,
	0x6e, 0x61, 0x70, 0x69, 0x76, 0x32, 0x2f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x61,
	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x1a, 0x2f, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65,
	0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x62,
	0x65, 0x74, 0x61, 0x31, 0x2f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x1a, 0x35, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70,
	0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31,
	0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x6c,
	0x61, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x95, 0x02, 0x0a, 0x12, 0x4c, 0x69, 0x73,
	0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x2a, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0d, 0x63, 0x6c,
	0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x57, 0x0a, 0x0c, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x2f, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f,
	0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76,
	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c,
	0x61, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x50, 0x6c, 0x61, 0x6e, 0x12, 0x3d, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a,
	0x65, 0x18, 0x64, 0x20, 0x01, 0x28, 0x05, 0x42, 0x20, 0x92, 0x41, 0x1a, 0x3a, 0x02, 0x31, 0x30,
	0x4a, 0x02, 0x31, 0x30, 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59, 0x40, 0x69, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f, 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, 0xa2, 0x01, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x07, 0x72, 0x65, 0x67, 0x69,
	0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x74, 0x69, 0x64, 0x62,
	0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e,
	0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52,
	0x65, 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1d,
	0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x64, 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, 0x65, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65,
	0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xba, 0x01, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c,
	0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x57, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70,
	0x6c, 0x61, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x74, 0x69, 0x64, 0x62,
	0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e,
	0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
	0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x6e, 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, 0x22, 0x95, 0x05, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x6f, 0x75, 0x64,
	0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x61, 0x0a, 0x0f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69,
	0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x74, 0x69, 0x64,
	0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69,
	0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
	0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76,
	0x69, 0x64, 0x65, 0x72, 0x52, 0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69,
	0x64, 0x65, 0x72, 0x73, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70,
	0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x18, 0x02, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x51, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
	0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c,
	0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64,
	0x65, 0x72, 0x50, 0x6c, 0x61, 0x6e, 0x52, 0x12, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f,
	0x76, 0x69, 0x64, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x6e, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f,
	0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x64, 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, 0x65, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65,
	0x6e, 0x1a, 0xc6, 0x02, 0x0a, 0x11, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69,
	0x64, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x6e, 0x12, 0x64, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
	0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x38, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65,
	0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x62,
	0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6c, 0x6f, 0x75,
	0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d,
	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x59, 0x0a,
	0x0d, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x18, 0x02,
	0x20, 0x03, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75,
	0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f,
	0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x50, 0x6c, 0x61, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x6e, 0x73, 0x12, 0x70, 0x0a, 0x17, 0x73, 0x75, 0x70, 0x70,
	0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x6c,
	0x61, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x74, 0x69, 0x64, 0x62,
	0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e,
	0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x03,
	0xe0, 0x41, 0x03, 0x52, 0x15, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x6e, 0x73, 0x22, 0xc3, 0x02, 0x0a, 0x1e, 0x4c,
	0x69, 0x73, 0x74, 0x4f, 0x70, 0x73, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x53, 0x65,
	0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a,
	0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x75,
	0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x57, 0x0a, 0x0c, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x2f, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65,
	0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x62,
	0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x6e,
	0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6c,
	0x61, 0x6e, 0x12, 0x20, 0x0a, 0x09, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69,
	0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04,
	0x20, 0x03, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
	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, 0xd6, 0x01, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x73, 0x41, 0x75, 0x64, 0x69,
	0x74, 0x4c, 0x6f, 0x67, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x16, 0x6f, 0x70, 0x73, 0x5f, 0x61, 0x75, 0x64, 0x69,
	0x74, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x01,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75,
	0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67,
	0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4f, 0x70, 0x73, 0x41, 0x75,
	0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x13, 0x6f,
	0x70, 0x73, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e,
	0x67, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65,
	0x18, 0x64, 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, 0x65, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74,
	0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xee, 0x04, 0x0a, 0x12, 0x4f, 0x70,
	0x73, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67,
	0x12, 0x47, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x2a, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70,
	0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41,
	0x03, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x07, 0x65, 0x6e, 0x61,
	0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
	0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x6b, 0x0a, 0x0c, 0x6c, 0x6f, 0x67, 0x5f,
	0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43,
	0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e,
	0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62,
	0x65, 0x74, 0x61, 0x32, 0x2e, 0x4f, 0x70, 0x73, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67,
	0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x6f, 0x63, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x6c, 0x6f, 0x67, 0x4c, 0x6f, 0x63,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x6b, 0x0a, 0x0c, 0x6c, 0x6f, 0x67, 0x5f, 0x72, 0x6f, 0x74,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x74, 0x69,
	0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70,
	0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
	0x32, 0x2e, 0x4f, 0x70, 0x73, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x53, 0x65, 0x74,
	0x74, 0x69, 0x6e, 0x67, 0x2e, 0x4c, 0x6f, 0x67, 0x52, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x6c, 0x6f, 0x67, 0x52, 0x6f, 0x74, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x1a, 0x9b, 0x01, 0x0a, 0x0b, 0x4c, 0x6f, 0x67, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0a, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x75, 0x72, 0x69,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x55, 0x72, 0x69, 0x12, 0x1e, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x61,
	0x72, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x72,
	0x6f, 0x6c, 0x65, 0x41, 0x72, 0x6e, 0x12, 0x22, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
	0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0b, 0x65, 0x78,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42,
	0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x64,
	0x1a, 0x78, 0x0a, 0x0b, 0x4c, 0x6f, 0x67, 0x52, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x30, 0x0a, 0x12, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x6d,
	0x69, 0x74, 0x5f, 0x6d, 0x62, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03,
	0x52, 0x0f, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4d,
	0x62, 0x12, 0x37, 0x0a, 0x15, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03,
	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x13, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49,
	0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x4d, 0x69, 0x6e, 0x22, 0xf8, 0x03, 0x0a, 0x1b, 0x4c,
	0x69, 0x73, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74,
	0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x0e, 0x63, 0x6c,
	0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72,
	0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x57, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x74,
	0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61,
	0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
	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,
	0x68, 0x0a, 0x05, 0x75, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4d,
	0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e,
	0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62,
	0x65, 0x74, 0x61, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43,
	0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x2e, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x03, 0xe0,
	0x41, 0x01, 0x52, 0x05, 0x75, 0x73, 0x61, 0x67, 0x65, 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, 0x1a, 0x8a, 0x01, 0x0a, 0x0c, 0x55, 0x73, 0x61,
	0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3e, 0x0a, 0x0a, 0x73, 0x74, 0x61,
	0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 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, 0x02, 0x52, 0x09,
	0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x08, 0x65, 0x6e, 0x64,
	0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 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, 0x02, 0x52, 0x07, 0x65, 0x6e,
	0x64, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xfc, 0x04, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65,
	0x67, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x70, 0x0a, 0x0a, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69,
	0x74, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x74, 0x69, 0x64,
	0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69,
	0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x70, 0x61, 0x63,
	0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65,
	0x67, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x63, 0x61,
	0x70, 0x61, 0x63, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61,
	0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x64, 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, 0x65, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x1a,
	0xaa, 0x02, 0x0a, 0x0e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69,
	0x74, 0x79, 0x12, 0x47, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f,
	0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e,
	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x42, 0x03,
	0xe0, 0x41, 0x03, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x11, 0x74,
	0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x76, 0x63, 0x70, 0x75, 0x73, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x74, 0x6f, 0x74,
	0x61, 0x6c, 0x56, 0x63, 0x70, 0x75, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x22, 0x0a, 0x0a,
	0x75, 0x73, 0x65, 0x64, 0x5f, 0x76, 0x63, 0x70, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03,
	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x75, 0x73, 0x65, 0x64, 0x56, 0x63, 0x70, 0x75, 0x73,
	0x12, 0x7a, 0x0a, 0x0e, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x75, 0x73, 0x61, 0x67,
	0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4e, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f,
	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e,
	0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74,
	0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x55, 0x73, 0x61, 0x67,
	0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x68,
	0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x73, 0x1a, 0x76, 0x0a, 0x0c,
	0x55, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x42, 0x0a, 0x0c,
	0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 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, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x54, 0x69, 0x6d, 0x65,
	0x12, 0x22, 0x0a, 0x0a, 0x75, 0x73, 0x65, 0x64, 0x5f, 0x76, 0x63, 0x70, 0x75, 0x73, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x75, 0x73, 0x65, 0x64, 0x56,
	0x63, 0x70, 0x75, 0x73, 0x22, 0x68, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x79, 0x6f, 0x63,
	0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x2a, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64,
	0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0d, 0x63,
	0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x09,
	0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42,
	0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xa8,
	0x01, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63, 0x70,
	0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2d, 0x0a, 0x10,
	0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x72, 0x65, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x49, 0x64, 0x12, 0x5c, 0x0a, 0x0e, 0x62,
	0x79, 0x6f, 0x63, 0x5f, 0x76, 0x63, 0x70, 0x75, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
	0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63,
	0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x62, 0x79, 0x6f,
	0x63, 0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x22, 0x5e, 0x0a, 0x2d, 0x47, 0x65, 0x74,
	0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e,
	0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69,
	0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2d, 0x0a, 0x10, 0x72, 0x65,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x49, 0x64, 0x22, 0xf9, 0x03, 0x0a, 0x20, 0x53, 0x63,
	0x61, 0x6c, 0x65, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d,
	0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2d,
	0x0a, 0x10, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x72,
	0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x49, 0x64, 0x12, 0x61, 0x0a,
	0x04, 0x74, 0x69, 0x6b, 0x76, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x74, 0x69,
	0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70,
	0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
	0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70,
	0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74,
	0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x00, 0x52, 0x04, 0x74, 0x69, 0x6b, 0x76, 0x88, 0x01, 0x01,
	0x12, 0x72, 0x0a, 0x0d, 0x74, 0x69, 0x66, 0x6c, 0x61, 0x73, 0x68, 0x5f, 0x77, 0x72, 0x69, 0x74,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63,
	0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65,
	0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79,
	0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e,
	0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x42, 0x03, 0xe0, 0x41,
	0x01, 0x48, 0x01, 0x52, 0x0c, 0x74, 0x69, 0x66, 0x6c, 0x61, 0x73, 0x68, 0x57, 0x72, 0x69, 0x74,
	0x65, 0x88, 0x01, 0x01, 0x12, 0x76, 0x0a, 0x0f, 0x74, 0x69, 0x66, 0x6c, 0x61, 0x73, 0x68, 0x5f,
	0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e,
	0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f,
	0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65,
	0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f,
	0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x54, 0x61, 0x72, 0x67,
	0x65, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x02, 0x52, 0x0e, 0x74, 0x69, 0x66, 0x6c, 0x61,
	0x73, 0x68, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x88, 0x01, 0x01, 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, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x69, 0x6b, 0x76, 0x42,
	0x10, 0x0a, 0x0e, 0x5f, 0x74, 0x69, 0x66, 0x6c, 0x61, 0x73, 0x68, 0x5f, 0x77, 0x72, 0x69, 0x74,
	0x65, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x74, 0x69, 0x66, 0x6c, 0x61, 0x73, 0x68, 0x5f, 0x63, 0x6f,
	0x6d, 0x70, 0x75, 0x74, 0x65, 0x22, 0x9c, 0x08, 0x0a, 0x0c, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63,
	0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x12, 0x2d, 0x0a, 0x10, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50,
	0x6f, 0x6f, 0x6c, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26,
	0x0a, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x70,
	0x6c, 0x61, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x0b, 0x76, 0x63, 0x70, 0x75, 0x73, 0x5f,
	0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01,
	0x48, 0x00, 0x52, 0x0a, 0x76, 0x63, 0x70, 0x75, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01,
	0x01, 0x12, 0x22, 0x0a, 0x0a, 0x76, 0x63, 0x70, 0x75, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x76, 0x63, 0x70, 0x75,
	0x73, 0x55, 0x73, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x66, 0x61,
	0x75, 0x6c, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09,
	0x69, 0x73, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x81, 0x01, 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, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x46, 0x2e, 0x74, 0x69, 0x64,
	0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69,
	0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32,
	0x2e, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 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, 0x03, 0x52, 0x14, 0x68, 0x69, 0x67, 0x68, 0x41, 0x76, 0x61,
	0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x62, 0x0a,
	0x0b, 0x7a, 0x6f, 0x6e, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x08, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f,
	0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e,
	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63, 0x70,
	0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x2e, 0x5a, 0x6f, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x7a, 0x6f, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x12, 0x52, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e,
	0x32, 0x37, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70,
	0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76,
	0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63, 0x70, 0x75, 0x50,
	0x6f, 0x6f, 0x6c, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05,
	0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x7b, 0x0a, 0x14, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
	0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63,
	0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x2e, 0x54, 0x69, 0x64, 0x62, 0x49, 0x6e, 0x73, 0x74, 0x61,
	0x6e, 0x63, 0x65, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12,
	0x74, 0x69, 0x64, 0x62, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x53, 0x74, 0x61,
	0x74, 0x65, 0x1a, 0x30, 0x0a, 0x0a, 0x5a, 0x6f, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x12, 0x22, 0x0a, 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x73, 0x18, 0x01,
	0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x5a,
	0x6f, 0x6e, 0x65, 0x73, 0x1a, 0x96, 0x01, 0x0a, 0x12, 0x54, 0x69, 0x64, 0x62, 0x49, 0x6e, 0x73,
	0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x06, 0x61,
	0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03,
	0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x21, 0x0a, 0x09, 0x6d, 0x6f, 0x64, 0x69,
	0x66, 0x79, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03,
	0x52, 0x09, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x0a, 0x08, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0,
	0x41, 0x03, 0x52, 0x08, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x0a, 0x08,
	0x64, 0x65, 0x6c, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03,
	0xe0, 0x41, 0x03, 0x52, 0x08, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x22, 0x3c, 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, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09,
	0x4d, 0x4f, 0x44, 0x49, 0x46, 0x59, 0x49, 0x4e, 0x47, 0x10, 0x02, 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, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x76, 0x63, 0x70, 0x75, 0x73, 0x5f, 0x6c,
	0x69, 0x6d, 0x69, 0x74, 0x22, 0xd4, 0x02, 0x0a, 0x23, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61,
	0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c,
	0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x10,
	0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e, 0x72, 0x65, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0b, 0x76,
	0x63, 0x70, 0x75, 0x73, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03,
	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x76, 0x63, 0x70, 0x75, 0x73, 0x4c, 0x69, 0x6d, 0x69,
	0x74, 0x12, 0x6a, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x4b, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f,
	0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e,
	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61,
	0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c,
	0x65, 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x42,
	0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x70, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x12, 0x6c, 0x0a,
	0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x47, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f,
	0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e,
	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72,
	0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65,
	0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
	0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x22, 0xa8, 0x02, 0x0a, 0x21,
	0x53, 0x63, 0x61, 0x6c, 0x65, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43,
	0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x6a, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x4b, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f,
	0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e,
	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61,
	0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c,
	0x65, 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x42,
	0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x70, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x12, 0x6f, 0x0a,
	0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x4a, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f,
	0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e,
	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72,
	0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65,
	0x50, 0x6c, 0x61, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0,
	0x41, 0x03, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x26,
	0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x94, 0x02, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x4e,
	0x6f, 0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x20, 0x0a, 0x09, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 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, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
	0x0e, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12,
	0x66, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63,
	0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65,
	0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4e, 0x6f,
	0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54,
	0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e,
	0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 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, 0x22, 0x96, 0x02,
	0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x5f,
	0x73, 0x70, 0x65, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x74, 0x69,
	0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70,
	0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
	0x32, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x09, 0x6e, 0x6f, 0x64, 0x65,
	0x53, 0x70, 0x65, 0x63, 0x73, 0x12, 0x68, 0x0a, 0x12, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x35, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f,
	0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e,
	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x75, 0x6e,
	0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x10, 0x6e,
	0x6f, 0x64, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
	0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x64, 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, 0x65, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67,
	0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xc3, 0x01, 0x0a, 0x1b, 0x50, 0x6c, 0x61, 0x6e, 0x52,
	0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e,
	0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08,
	0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x81, 0x01, 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, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x46, 0x2e, 0x74, 0x69, 0x64, 0x62,
	0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e,
	0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e,
	0x42, 0x79, 0x6f, 0x63, 0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 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, 0x01, 0x52, 0x14, 0x68, 0x69, 0x67, 0x68, 0x41, 0x76, 0x61, 0x69,
	0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x22, 0xdf, 0x05, 0x0a,
	0x1c, 0x50, 0x6c, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f,
	0x6c, 0x43, 0x69, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a,
	0x09, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12,
	0x64, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63,
	0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f,
	0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67,
	0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f,
	0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x58, 0x0a, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f,
	0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74,
	0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x52, 0x65, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x50, 0x6f, 0x6c, 0x69,
	0x63, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12,
	0x63, 0x0a, 0x0a, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
	0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x45, 0x78, 0x63, 0x6c, 0x75, 0x73,
	0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73,
	0x69, 0x6f, 0x6e, 0x73, 0x12, 0x90, 0x01, 0x0a, 0x15, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65,
	0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x56, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75,
	0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67,
	0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x50, 0x6c, 0x61, 0x6e, 0x52,
	0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e,
	0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x03, 0xe0, 0x41,
	0x03, 0x52, 0x14, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x75, 0x0a, 0x0e, 0x72, 0x65, 0x63, 0x6f, 0x6d,
	0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x43, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65,
	0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31,
	0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f,
	0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x00, 0x52, 0x0e, 0x72, 0x65, 0x63,
	0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x22, 0x5b,
	0x0a, 0x14, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x25, 0x0a, 0x21, 0x52, 0x45, 0x43, 0x4f, 0x4d, 0x4d,
	0x45, 0x4e, 0x44, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f,
	0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a,
	0x09, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09,
	0x45, 0x58, 0x48, 0x41, 0x55, 0x53, 0x54, 0x45, 0x44, 0x10, 0x02, 0x42, 0x11, 0x0a, 0x0f, 0x5f,
	0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xe0,
	0x01, 0x0a, 0x1f, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69,
	0x6f, 0x6e, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x04, 0x63, 0x69, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x63, 0x69, 0x64, 0x72, 0x12, 0x81, 0x01,
	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, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x46,
	0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e,
	0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62,
	0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f,
	0x6c, 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, 0x01, 0x52, 0x14, 0x68, 0x69, 0x67,
	0x68, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
	0x65, 0x22, 0x92, 0x03, 0x0a, 0x20, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x09, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e,
	0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x08,
	0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x64, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75,
	0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e,
	0x32, 0x38, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70,
	0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6c, 0x6f,
	0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
	0x0d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x17,
	0x0a, 0x04, 0x63, 0x69, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
	0x03, 0x52, 0x04, 0x63, 0x69, 0x64, 0x72, 0x12, 0x3a, 0x0a, 0x14, 0x73, 0x75, 0x70, 0x70, 0x6f,
	0x72, 0x74, 0x65, 0x64, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x00, 0x52, 0x12, 0x73, 0x75,
	0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x88, 0x01, 0x01, 0x12, 0x78, 0x0a, 0x11, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f,
	0x66, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x46,
	0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e,
	0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62,
	0x65, 0x74, 0x61, 0x32, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f,
	0x6c, 0x43, 0x69, 0x64, 0x72, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46,
	0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x10, 0x62, 0x6c, 0x6f,
	0x63, 0x6b, 0x69, 0x6e, 0x67, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x42, 0x17, 0x0a,
	0x15, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x6e, 0x6f, 0x64, 0x65,
	0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xd0, 0x01, 0x0a, 0x16, 0x52, 0x65, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x50, 0x6f, 0x6c, 0x69, 0x63,
	0x79, 0x12, 0x3b, 0x0a, 0x17, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x70,
	0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x69, 0x64, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03,
	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x15, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74,
	0x65, 0x64, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x69, 0x64, 0x72, 0x73, 0x12, 0x79,
	0x0a, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78,
	0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e,
	0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f,
	0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65,
	0x74, 0x61, 0x32, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c,
	0x43, 0x69, 0x64, 0x72, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x42,
	0x03, 0xe0, 0x41, 0x03, 0x52, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x50, 0x72, 0x65,
	0x66, 0x69, 0x78, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x22, 0x7f, 0x0a, 0x1b, 0x52, 0x65, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x50, 0x72, 0x65,
	0x66, 0x69, 0x78, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x2f, 0x0a, 0x11, 0x6d, 0x69, 0x6e, 0x5f,
	0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x6d, 0x69, 0x6e, 0x50, 0x72, 0x65,
	0x66, 0x69, 0x78, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x2f, 0x0a, 0x11, 0x6d, 0x61, 0x78,
	0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x50, 0x72,
	0x65, 0x66, 0x69, 0x78, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x70, 0x0a, 0x1e, 0x52, 0x65,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x52, 0x65,
	0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x04,
	0x63, 0x69, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
	0x04, 0x63, 0x69, 0x64, 0x72, 0x12, 0x35, 0x0a, 0x14, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74,
	0x65, 0x64, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72,
	0x74, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xd0, 0x04, 0x0a,
	0x19, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64,
	0x72, 0x45, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x5c, 0x0a, 0x04, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x43, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f,
	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e,
	0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x52,
	0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x45,
	0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0,
	0x41, 0x03, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x63, 0x69, 0x64, 0x72,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x63, 0x69, 0x64,
	0x72, 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, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03,
	0x48, 0x00, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c,
	0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x45, 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, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x01,
	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, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x09,
	0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42,
	0x03, 0xe0, 0x41, 0x03, 0x48, 0x02, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64,
	0x88, 0x01, 0x01, 0x12, 0x69, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f,
	0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x74, 0x69,
	0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70,
	0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
	0x2e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f,
	0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x03, 0x52, 0x0d, 0x63, 0x6c,
	0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x88, 0x01, 0x01, 0x22, 0x5a,
	0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55,
	0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d,
	0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x10, 0x01, 0x12,
	0x10, 0x0a, 0x0c, 0x4f, 0x31, 0x31, 0x59, 0x5f, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x10,
	0x02, 0x12, 0x17, 0x0a, 0x13, 0x54, 0x49, 0x44, 0x42, 0x5f, 0x43, 0x4c, 0x4f, 0x55, 0x44, 0x5f,
	0x52, 0x45, 0x53, 0x45, 0x52, 0x56, 0x45, 0x44, 0x10, 0x03, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x72,
	0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x69, 0x64, 0x42,
	0x1d, 0x0a, 0x1b, 0x5f, 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, 0x42, 0x0c,
	0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x42, 0x11, 0x0a, 0x0f,
	0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x22,
	0x82, 0x04, 0x0a, 0x21, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c,
	0x43, 0x69, 0x64, 0x72, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69,
	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x64, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0e, 0x32, 0x4b, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
	0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x2e, 0x43, 0x6f, 0x64, 0x65,
	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x63, 0x6f, 0x64, 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, 0x7d, 0x0a, 0x15, 0x63, 0x6f,
	0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73,
	0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x74, 0x69, 0x64, 0x62,
	0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e,
	0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e,
	0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72,
	0x45, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x00,
	0x52, 0x14, 0x63, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x63,
	0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x22, 0xbe, 0x01, 0x0a, 0x04, 0x43, 0x6f,
	0x64, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45,
	0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x49, 0x4e, 0x56, 0x41,
	0x4c, 0x49, 0x44, 0x5f, 0x43, 0x49, 0x44, 0x52, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x49,
	0x44, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x10, 0x02,
	0x12, 0x1b, 0x0a, 0x17, 0x43, 0x49, 0x44, 0x52, 0x5f, 0x50, 0x52, 0x45, 0x46, 0x49, 0x58, 0x5f,
	0x55, 0x4e, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x10, 0x03, 0x12, 0x1f, 0x0a,
	0x1b, 0x43, 0x49, 0x44, 0x52, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x4c, 0x41, 0x50, 0x53, 0x5f, 0x52,
	0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x10, 0x04, 0x12, 0x16,
	0x0a, 0x12, 0x43, 0x49, 0x44, 0x52, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x4c, 0x41, 0x50, 0x53, 0x5f,
	0x4f, 0x31, 0x31, 0x59, 0x10, 0x05, 0x12, 0x22, 0x0a, 0x1e, 0x43, 0x49, 0x44, 0x52, 0x5f, 0x4f,
	0x56, 0x45, 0x52, 0x4c, 0x41, 0x50, 0x53, 0x5f, 0x52, 0x45, 0x53, 0x45, 0x52, 0x56, 0x45, 0x44,
	0x5f, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x10, 0x06, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x63,
	0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x65, 0x78, 0x63, 0x6c, 0x75,
	0x73, 0x69, 0x6f, 0x6e, 0x22, 0x9b, 0x01, 0x0a, 0x1f, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x78, 0x0a, 0x11, 0x62, 0x6c, 0x6f, 0x63,
	0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
	0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x03,
	0x52, 0x10, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e,
	0x67, 0x73, 0x22, 0xf7, 0x02, 0x0a, 0x08, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12,
	0x27, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x5f, 0x6b, 0x65, 0x79,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x6e, 0x6f, 0x64,
	0x65, 0x53, 0x70, 0x65, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70,
	0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
	0xe0, 0x41, 0x03, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65,
	0x12, 0x66, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f,
	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e,
	0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4e,
	0x6f, 0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74,
	0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6f,
	0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x63, 0x70, 0x75, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x63, 0x70, 0x75, 0x12,
	0x20, 0x0a, 0x09, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x67, 0x69, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x08, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x47,
	0x69, 0x12, 0x22, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x69, 0x73, 0x44, 0x65,
	0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x55, 0x0a, 0x08, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
	0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63,
	0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65,
	0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4e, 0x6f,
	0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x42, 0x03, 0xe0,
	0x41, 0x03, 0x52, 0x08, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x73, 0x22, 0x9d, 0x02, 0x0a,
	0x0f, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
	0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
	0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x0f, 0x64, 0x65, 0x66,
	0x61, 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x69, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74,
	0x53, 0x69, 0x7a, 0x65, 0x47, 0x69, 0x12, 0x23, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x69,
	0x7a, 0x65, 0x5f, 0x67, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03,
	0x52, 0x09, 0x6d, 0x69, 0x6e, 0x53, 0x69, 0x7a, 0x65, 0x47, 0x69, 0x12, 0x23, 0x0a, 0x0b, 0x6d,
	0x61, 0x78, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x69, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03,
	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x6d, 0x61, 0x78, 0x53, 0x69, 0x7a, 0x65, 0x47, 0x69,
	0x12, 0x26, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x69, 0x7a, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x00, 0x52, 0x09, 0x72, 0x65, 0x73, 0x69,
	0x7a, 0x61, 0x62, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x30, 0x0a, 0x0f, 0x63, 0x75, 0x72, 0x72,
	0x65, 0x6e, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x69, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x01, 0x52, 0x0d, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
	0x74, 0x53, 0x69, 0x7a, 0x65, 0x47, 0x69, 0x88, 0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72,
	0x65, 0x73, 0x69, 0x7a, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x63, 0x75, 0x72,
	0x72, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x69, 0x22, 0xe8, 0x01, 0x0a,
	0x10, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x73, 0x12, 0x31, 0x0a, 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x6e, 0x6f, 0x64,
	0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0,
	0x41, 0x03, 0x52, 0x10, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x43,
	0x6f, 0x75, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x5f, 0x6e, 0x6f, 0x64, 0x65,
	0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41,
	0x03, 0x52, 0x0c, 0x6d, 0x69, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12,
	0x29, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x6d, 0x61,
	0x78, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x4b, 0x0a, 0x04, 0x72, 0x75,
	0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f,
	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e,
	0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4e,
	0x6f, 0x64, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41,
	0x03, 0x52, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x22, 0x7b, 0x0a, 0x0d, 0x4e, 0x6f, 0x64, 0x65, 0x43,
	0x6f, 0x75, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x4f, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c,
	0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78,
	0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4e, 0x6f, 0x64,
	0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03,
	0xe0, 0x41, 0x03, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x05, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x22, 0x8a, 0x02, 0x0a, 0x26, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61,
	0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c,
	0x65, 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12,
	0x31, 0x0a, 0x12, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x63, 0x70, 0x75, 0x73,
	0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03,
	0x52, 0x10, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x56, 0x63, 0x70, 0x75, 0x73, 0x55, 0x73,
	0x65, 0x64, 0x12, 0x31, 0x0a, 0x12, 0x73, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x63,
	0x70, 0x75, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03,
	0xe0, 0x41, 0x03, 0x52, 0x10, 0x73, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x56, 0x63, 0x70, 0x75,
	0x73, 0x55, 0x73, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x5f, 0x76, 0x63, 0x70,
	0x75, 0x73, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03,
	0xe0, 0x41, 0x03, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x56, 0x63, 0x70, 0x75, 0x73, 0x4c, 0x69, 0x6d,
	0x69, 0x74, 0x12, 0x1d, 0x0a, 0x07, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65,
	0x64, 0x12, 0x2e, 0x0a, 0x10, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65,
	0x61, 0x73, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03,
	0x52, 0x0f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e,
	0x73, 0x22, 0xec, 0x05, 0x0a, 0x22, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64,
	0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x43, 0x6f,
	0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x12, 0x68, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x70,
	0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
	0x32, 0x3c, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70,
	0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76,
	0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65,
	0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03,
	0xe0, 0x41, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79,
	0x70, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x63,
	0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x78,
	0x69, 0x73, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
	0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x19, 0x0a, 0x05, 0x70, 0x68, 0x61, 0x73, 0x65,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x70, 0x68, 0x61,
	0x73, 0x65, 0x12, 0x62, 0x0a, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
	0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68,
	0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61,
	0x6c, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x63,
	0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x7d, 0x0a, 0x10, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x69,
	0x6e, 0x67, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x4d, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70,
	0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76,
	0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65,
	0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x43,
	0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x42,
	0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x65,
	0x61, 0x73, 0x6f, 0x6e, 0x73, 0x12, 0x8c, 0x01, 0x0a, 0x16, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73,
	0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x51, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c,
	0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78,
	0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f,
	0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74,
	0x53, 0x63, 0x61, 0x6c, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f,
	0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x14,
	0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61,
	0x69, 0x6e, 0x74, 0x73, 0x12, 0x89, 0x01, 0x0a, 0x15, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x73, 0x70,
	0x65, 0x63, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x08,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75,
	0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67,
	0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53,
	0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63,
	0x61, 0x6c, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x43, 0x6f, 0x6e, 0x73, 0x74,
	0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x13, 0x6e, 0x6f, 0x64,
	0x65, 0x53, 0x70, 0x65, 0x63, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73,
	0x22, 0xce, 0x03, 0x0a, 0x25, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43,
	0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x50, 0x6c, 0x61,
	0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x68, 0x0a, 0x0e, 0x63, 0x6f,
	0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f,
	0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e,
	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61,
	0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65,
	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74,
	0x54, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
	0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x62, 0x0a, 0x07,
	0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e,
	0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f,
	0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65,
	0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f,
	0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x54, 0x61, 0x72, 0x67,
	0x65, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74,
	0x12, 0x60, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x43, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70,
	0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76,
	0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65,
	0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x54,
	0x61, 0x72, 0x67, 0x65, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67,
	0x65, 0x74, 0x12, 0x1d, 0x0a, 0x07, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65,
	0x64, 0x12, 0x2e, 0x0a, 0x10, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65,
	0x61, 0x73, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03,
	0x52, 0x0f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e,
	0x73, 0x22, 0x93, 0x02, 0x0a, 0x1e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64,
	0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x54, 0x61,
	0x72, 0x67, 0x65, 0x74, 0x12, 0x27, 0x0a, 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x63, 0x6f, 0x75,
	0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x00, 0x52,
	0x09, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a,
	0x03, 0x63, 0x70, 0x75, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48,
	0x01, 0x52, 0x03, 0x63, 0x70, 0x75, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x09, 0x6d, 0x65, 0x6d,
	0x6f, 0x72, 0x79, 0x5f, 0x67, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41,
	0x01, 0x48, 0x02, 0x52, 0x08, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x47, 0x69, 0x88, 0x01, 0x01,
	0x12, 0x60, 0x0a, 0x08, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f,
	0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e,
	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61,
	0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6f, 0x72,
	0x61, 0x67, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67,
	0x65, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x63, 0x70, 0x75, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x6d, 0x65,
	0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x67, 0x69, 0x22, 0x73, 0x0a, 0x1a, 0x42, 0x79, 0x6f, 0x63, 0x53,
	0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x74,
	0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
	0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02,
	0x52, 0x0b, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a,
	0x07, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03,
	0xe0, 0x41, 0x01, 0x48, 0x00, 0x52, 0x06, 0x73, 0x69, 0x7a, 0x65, 0x47, 0x69, 0x88, 0x01, 0x01,
	0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x69, 0x22, 0x62, 0x0a, 0x28,
	0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e,
	0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69,
	0x6e, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x63, 0x6f, 0x64,
	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,
	0x22, 0x8f, 0x02, 0x0a, 0x2c, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43,
	0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x4e, 0x6f, 0x64,
	0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74,
	0x73, 0x12, 0x1d, 0x0a, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74,
	0x12, 0x15, 0x0a, 0x03, 0x6d, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0,
	0x41, 0x03, 0x52, 0x03, 0x6d, 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x6d, 0x61, 0x78, 0x12, 0x63,
	0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x74,
	0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61,
	0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
	0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d,
	0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x43,
	0x6f, 0x75, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x72,
	0x75, 0x6c, 0x65, 0x12, 0x2d, 0x0a, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x72, 0x6f,
	0x73, 0x73, 0x5f, 0x7a, 0x65, 0x72, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0,
	0x41, 0x03, 0x52, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x5a, 0x65,
	0x72, 0x6f, 0x22, 0x5b, 0x0a, 0x25, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64,
	0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x4e, 0x6f,
	0x64, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x74,
	0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04,
	0x74, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22,
	0xc1, 0x01, 0x0a, 0x2b, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f,
	0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x4e, 0x6f, 0x64, 0x65,
	0x53, 0x70, 0x65, 0x63, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12,
	0x1d, 0x0a, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x73,
	0x0a, 0x0a, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x4e, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f,
	0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e,
	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61,
	0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c,
	0x65, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x43, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61,
	0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61,
	0x74, 0x65, 0x73, 0x22, 0xb8, 0x04, 0x0a, 0x29, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72,
	0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65,
	0x4e, 0x6f, 0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x43, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74,
	0x65, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
	0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x63, 0x70,
	0x75, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x63, 0x70,
	0x75, 0x12, 0x20, 0x0a, 0x09, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x67, 0x69, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x08, 0x6d, 0x65, 0x6d, 0x6f, 0x72,
	0x79, 0x47, 0x69, 0x12, 0x21, 0x0a, 0x09, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x61, 0x76, 0x61,
	0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x63, 0x75, 0x72,
	0x72, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
	0x09, 0x69, 0x73, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x6c, 0x0a, 0x07, 0x72, 0x65,
	0x61, 0x73, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4d, 0x2e, 0x74, 0x69,
	0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70,
	0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
	0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70,
	0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72,
	0x61, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
	0x07, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x73, 0x12, 0x7d, 0x0a, 0x11, 0x72, 0x65, 0x71, 0x75,
	0x69, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x4c, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
	0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68,
	0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61,
	0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x4d, 0x69, 0x6e, 0x53, 0x70, 0x65,
	0x63, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64,
	0x4d, 0x69, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x84, 0x01, 0x0a, 0x13, 0x73, 0x74, 0x6f, 0x72,
	0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x18,
	0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4e, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f,
	0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74,
	0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63,
	0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53,
	0x63, 0x61, 0x6c, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74,
	0x72, 0x61, 0x69, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x73, 0x74, 0x6f, 0x72,
	0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x22, 0x7b,
	0x0a, 0x27, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70,
	0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72,
	0x65, 0x64, 0x4d, 0x69, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x63, 0x70, 0x75, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42,
	0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x63, 0x70, 0x75, 0x12, 0x20, 0x0a, 0x09, 0x6d, 0x65, 0x6d,
	0x6f, 0x72, 0x79, 0x5f, 0x67, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41,
	0x03, 0x52, 0x08, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x47, 0x69, 0x22, 0xdd, 0x01, 0x0a, 0x29,
	0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e,
	0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43,
	0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0c, 0x73, 0x74, 0x6f,
	0x72, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
	0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d,
	0x65, 0x12, 0x21, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x69, 0x7a, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x72, 0x65, 0x73, 0x69, 0x7a,
	0x61, 0x62, 0x6c, 0x65, 0x12, 0x2b, 0x0a, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f,
	0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0,
	0x41, 0x03, 0x52, 0x0d, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x47,
	0x69, 0x12, 0x28, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x69,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x00, 0x52, 0x09, 0x6d,
	0x61, 0x78, 0x53, 0x69, 0x7a, 0x65, 0x47, 0x69, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f,
	0x6d, 0x61, 0x78, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x69, 0x22, 0xcb, 0x02, 0x0a, 0x19,
	0x4c, 0x69, 0x73, 0x74, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x06, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x74, 0x69, 0x64, 0x62,
	0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e,
	0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52,
	0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x1a, 0xcf, 0x01, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x12, 0x47, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x2a, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f,
	0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76,
	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0,
	0x41, 0x03, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x11, 0x74, 0x6f,
	0x74, 0x61, 0x6c, 0x5f, 0x76, 0x63, 0x70, 0x75, 0x73, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x74, 0x6f, 0x74, 0x61,
	0x6c, 0x56, 0x63, 0x70, 0x75, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x4c, 0x0a, 0x05, 0x70,
	0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x74, 0x69, 0x64,
	0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69,
	0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32,
	0x2e, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x42, 0x03, 0xe0,
	0x41, 0x03, 0x52, 0x05, 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x2a, 0x8a, 0x01, 0x0a, 0x15, 0x4e, 0x6f,
	0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54,
	0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, 0x24, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x50, 0x45, 0x43,
	0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f,
	0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x21, 0x0a,
	0x1d, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4f,
	0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x49, 0x4b, 0x56, 0x10, 0x01,
	0x12, 0x24, 0x0a, 0x20, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x5f, 0x43, 0x4f,
	0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x49, 0x46,
	0x4c, 0x41, 0x53, 0x48, 0x10, 0x02, 0x2a, 0x9e, 0x01, 0x0a, 0x11, 0x4e, 0x6f, 0x64, 0x65, 0x43,
	0x6f, 0x75, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x20,
	0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x52, 0x55, 0x4c, 0x45, 0x5f,
	0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
	0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54,
	0x5f, 0x52, 0x55, 0x4c, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10,
	0x01, 0x12, 0x24, 0x0a, 0x20, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f,
	0x52, 0x55, 0x4c, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x50,
	0x4c, 0x45, 0x5f, 0x4f, 0x46, 0x10, 0x02, 0x12, 0x1e, 0x0a, 0x1a, 0x4e, 0x4f, 0x44, 0x45, 0x5f,
	0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x52, 0x55, 0x4c, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f,
	0x46, 0x49, 0x58, 0x45, 0x44, 0x10, 0x03, 0x2a, 0xc8, 0x01, 0x0a, 0x17, 0x42, 0x79, 0x6f, 0x63,
	0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54,
	0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x26, 0x42, 0x59, 0x4f, 0x43, 0x5f, 0x53, 0x48, 0x41, 0x52,
	0x45, 0x44, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50,
	0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12,
	0x23, 0x0a, 0x1f, 0x42, 0x59, 0x4f, 0x43, 0x5f, 0x53, 0x48, 0x41, 0x52, 0x45, 0x44, 0x5f, 0x43,
	0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x49,
	0x4b, 0x56, 0x10, 0x01, 0x12, 0x2c, 0x0a, 0x28, 0x42, 0x59, 0x4f, 0x43, 0x5f, 0x53, 0x48, 0x41,
	0x52, 0x45, 0x44, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59,
	0x50, 0x45, 0x5f, 0x54, 0x49, 0x46, 0x4c, 0x41, 0x53, 0x48, 0x5f, 0x57, 0x52, 0x49, 0x54, 0x45,
	0x10, 0x02, 0x12, 0x2e, 0x0a, 0x2a, 0x42, 0x59, 0x4f, 0x43, 0x5f, 0x53, 0x48, 0x41, 0x52, 0x45,
	0x44, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45,
	0x5f, 0x54, 0x49, 0x46, 0x4c, 0x41, 0x53, 0x48, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x55, 0x54, 0x45,
	0x10, 0x03, 0x32, 0x97, 0x22, 0x0a, 0x0d, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x12, 0x9d, 0x04, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x67,
	0x69, 0x6f, 0x6e, 0x73, 0x12, 0x37, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75,
	0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67,
	0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52,
	0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e,
	0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f,
	0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65,
	0x74, 0x61, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9a, 0x03, 0x92, 0x41, 0x86, 0x03, 0x0a, 0x06,
	0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x0a, 0x06, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x0c,
	0x4c, 0x69, 0x73, 0x74, 0x20, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x7f, 0x4c, 0x69,
	0x73, 0x74, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x20,
	0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x54, 0x69, 0x44, 0x42, 0x20, 0x43, 0x6c, 0x6f, 0x75,
	0x64, 0x20, 0x50, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e,
	0x63, 0x65, 0x2e, 0x20, 0x59, 0x6f, 0x75, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x66, 0x69, 0x6c, 0x74,
	0x65, 0x72, 0x20, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x20, 0x62, 0x79, 0x20, 0x63, 0x6c,
	0x6f, 0x75, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x20, 0x6f, 0x72, 0x20,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x20, 0x70, 0x6c, 0x61, 0x6e, 0x2e, 0x6a, 0xe4, 0x01,
	0x0a, 0x0e, 0x78, 0x2d, 0x63, 0x6f, 0x64, 0x65, 0x2d, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73,
	0x12, 0xd1, 0x01, 0x32, 0xce, 0x01, 0x0a, 0xcb, 0x01, 0x2a, 0xc8, 0x01, 0x0a, 0x0f, 0x0a, 0x05,
	0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x06, 0x1a, 0x04, 0x63, 0x75, 0x72, 0x6c, 0x0a, 0x0e, 0x0a,
	0x04, 0x6c, 0x61, 0x6e, 0x67, 0x12, 0x06, 0x1a, 0x04, 0x63, 0x75, 0x72, 0x6c, 0x0a, 0xa4, 0x01,
	0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x99, 0x01, 0x1a, 0x96, 0x01, 0x63, 0x75,
	0x72, 0x6c, 0x20, 0x2d, 0x2d, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x27, 0x68,
	0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x74, 0x69, 0x64,
	0x62, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32,
	0x2f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x27, 0x20, 0x5c, 0x0a, 0x2d, 0x2d, 0x64, 0x69,
	0x67, 0x65, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x75, 0x73, 0x65, 0x72, 0x20, 0x27, 0x59, 0x4f, 0x55,
	0x52, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x5f, 0x4b, 0x45, 0x59, 0x3a, 0x59, 0x4f, 0x55,
	0x52, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x27, 0x20, 0x5c,
	0x0a, 0x2d, 0x2d, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x20, 0x27, 0x41, 0x63, 0x63, 0x65, 0x70,
	0x74, 0x3a, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6a,
	0x73, 0x6f, 0x6e, 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0a, 0x12, 0x08, 0x2f, 0x72, 0x65, 0x67,
	0x69, 0x6f, 0x6e, 0x73, 0x12, 0x92, 0x02, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x6f,
	0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x12, 0x3e, 0x2e, 0x74, 0x69,
	0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70,
	0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
	0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69,
	0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x74, 0x69,
	0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70,
	0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
	0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69,
	0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x7b, 0x92, 0x41,
	0x55, 0x12, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x20, 0x70, 0x72,
	0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x1a, 0x3d, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x20, 0x61,
	0x6c, 0x6c, 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x63, 0x6c, 0x6f,
	0x75, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x20, 0x66, 0x6f, 0x72,
	0x20, 0x61, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x20, 0x70, 0x6c, 0x61, 0x6e, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x12, 0x1b, 0x2f, 0x72,
	0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x6c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x6f, 0x75, 0x64,
	0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x12, 0xe2, 0x02, 0x0a, 0x17, 0x4c, 0x69,
	0x73, 0x74, 0x4f, 0x70, 0x73, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x53, 0x65, 0x74,
	0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x43, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f,
	0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74,
	0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x4f, 0x70, 0x73, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x53, 0x65, 0x74, 0x74, 0x69,
	0x6e, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x44, 0x2e, 0x74, 0x69, 0x64,
	0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69,
	0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x73, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67,
	0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0xbb, 0x01, 0x92, 0x41, 0x9b, 0x01, 0x12, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x70,
	0x73, 0x20, 0x61, 0x75, 0x64, 0x69, 0x74, 0x20, 0x6c, 0x6f, 0x67, 0x20, 0x73, 0x65, 0x74, 0x74,
	0x69, 0x6e, 0x67, 0x73, 0x1a, 0x7c, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20,
	0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x61, 0x75, 0x64, 0x69,
	0x74, 0x20, 0x6c, 0x6f, 0x67, 0x20, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x20, 0x66,
	0x6f, 0x72, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20,
	0x59, 0x6f, 0x75, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x72,
	0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x20, 0x62, 0x79, 0x20, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x20,
	0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2c, 0x20, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x20, 0x70, 0x6c, 0x61, 0x6e, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x72, 0x65, 0x67, 0x69, 0x6f,
	0x6e, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x16, 0x12, 0x14, 0x2f, 0x6f, 0x70, 0x73, 0x41, 0x75,
	0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0xb3,
	0x02, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x70,
	0x61, 0x63, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x40, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63,
	0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65,
	0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x69,
	0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x41, 0x2e, 0x74, 0x69, 0x64, 0x62,
	0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e,
	0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69,
	0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x95, 0x01, 0x92,
	0x41, 0x73, 0x12, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x20,
	0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x69, 0x65, 0x73, 0x1a, 0x59, 0x4c, 0x69, 0x73, 0x74,
	0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x63,
	0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6c,
	0x6c, 0x20, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20, 0x43, 0x75, 0x72, 0x72, 0x65,
	0x6e, 0x74, 0x6c, 0x79, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72,
	0x74, 0x73, 0x20, 0x42, 0x59, 0x4f, 0x43, 0x20, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x20,
	0x70, 0x6c, 0x61, 0x6e, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, 0x72, 0x65,
	0x67, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x6c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69,
	0x74, 0x69, 0x65, 0x73, 0x12, 0xb0, 0x02, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x79, 0x6f,
	0x63, 0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x3d, 0x2e, 0x74, 0x69, 0x64,
	0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69,
	0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f,
	0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3e, 0x2e, 0x74, 0x69, 0x64, 0x62,
	0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e,
	0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9b, 0x01, 0x92, 0x41, 0x81, 0x01,
	0x12, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x42, 0x59, 0x4f, 0x43, 0x20, 0x76, 0x43, 0x50, 0x55,
	0x20, 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x1a, 0x69, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x20, 0x74, 0x68,
	0x65, 0x20, 0x42, 0x59, 0x4f, 0x43, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20,
	0x70, 0x6f, 0x6f, 0x6c, 0x20, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x20, 0x67,
	0x72, 0x6f, 0x75, 0x70, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x20,
	0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, 0x67,
	0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x75, 0x72, 0x72,
	0x65, 0x6e, 0x74, 0x20, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x10, 0x12, 0x0e, 0x2f, 0x62, 0x79, 0x6f, 0x63, 0x56, 0x63,
	0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0xb1, 0x02, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x12, 0x3e,
	0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e,
	0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62,
	0x65, 0x74, 0x61, 0x32, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x79, 0x6f, 0x63, 0x56,
	0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31,
	0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e,
	0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62,
	0x65, 0x74, 0x61, 0x32, 0x2e, 0x42, 0x79, 0x6f, 0x63, 0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f,
	0x6c, 0x22, 0xa7, 0x01, 0x92, 0x41, 0x6b, 0x12, 0x1b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20,
	0x42, 0x59, 0x4f, 0x43, 0x20, 0x76, 0x43, 0x50, 0x55, 0x20, 0x70, 0x6f, 0x6f, 0x6c, 0x20, 0x6c,
	0x69, 0x6d, 0x69, 0x74, 0x1a, 0x4c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x20, 0x74, 0x68,
	0x65, 0x20, 0x76, 0x43, 0x50, 0x55, 0x20, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x20, 0x6f, 0x66, 0x20,
	0x61, 0x20, 0x42, 0x59, 0x4f, 0x43, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20,
	0x70, 0x6f, 0x6f, 0x6c, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x75, 0x72,
	0x72, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x33, 0x3a, 0x0e, 0x62, 0x79, 0x6f, 0x63, 0x5f, 0x76,
	0x63, 0x70, 0x75, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x32, 0x21, 0x2f, 0x62, 0x79, 0x6f, 0x63, 0x56,
	0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x73, 0x2f, 0x7b, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x69, 0x64, 0x7d, 0x12, 0xc3, 0x03, 0x0a, 0x26,
	0x47, 0x65, 0x74, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d,
	0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74,
	0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x52, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c,
	0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78,
	0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74,
	0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e,
	0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69,
	0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x48, 0x2e, 0x74, 0x69, 0x64,
	0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69,
	0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32,
	0x2e, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f,
	0x6e, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61,
	0x69, 0x6e, 0x74, 0x73, 0x22, 0xfa, 0x01, 0x92, 0x41, 0xad, 0x01, 0x12, 0x2b, 0x47, 0x65, 0x74,
	0x20, 0x42, 0x59, 0x4f, 0x43, 0x20, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x20, 0x63, 0x6f, 0x6d,
	0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x20, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x20, 0x63, 0x6f, 0x6e,
	0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x7e, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e,
	0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x73, 0x68,
	0x61, 0x72, 0x65, 0x64, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x20, 0x73,
	0x63, 0x61, 0x6c, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73,
	0x20, 0x61, 0x6e, 0x64, 0x20, 0x75, 0x73, 0x61, 0x67, 0x65, 0x20, 0x70, 0x72, 0x65, 0x76, 0x69,
	0x65, 0x77, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x20, 0x42, 0x59, 0x4f, 0x43, 0x20, 0x72, 0x65,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x70, 0x6f, 0x6f, 0x6c, 0x20, 0x69, 0x6e, 0x20, 0x74,
	0x68, 0x65, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x72, 0x67, 0x61, 0x6e,
	0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x43, 0x12, 0x41,
	0x2f, 0x62, 0x79, 0x6f, 0x63, 0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x73, 0x2f, 0x7b,
	0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x69, 0x64,
	0x7d, 0x2f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e,
	0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74,
	0x73, 0x12, 0x84, 0x03, 0x0a, 0x19, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x42, 0x79, 0x6f, 0x63, 0x53,
	0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12,
	0x45, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65,
	0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31,
	0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x42, 0x79, 0x6f, 0x63, 0x53,
	0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x46, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c,
	0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78,
	0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x53, 0x63, 0x61,
	0x6c, 0x65, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70,
	0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd7,
	0x01, 0x92, 0x41, 0x8d, 0x01, 0x12, 0x1c, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x20, 0x42, 0x59, 0x4f,
	0x43, 0x20, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65,
	0x6e, 0x74, 0x73, 0x1a, 0x6d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x73, 0x20, 0x6f,
	0x72, 0x20, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x73, 0x20, 0x61, 0x20, 0x42, 0x59, 0x4f, 0x43,
	0x20, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e,
	0x74, 0x20, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x20, 0x70, 0x6c, 0x61, 0x6e, 0x20, 0x66, 0x6f, 0x72,
	0x20, 0x61, 0x20, 0x42, 0x59, 0x4f, 0x43, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x20, 0x70, 0x6f, 0x6f, 0x6c, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x75, 0x72,
	0x72, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x40, 0x3a, 0x01, 0x2a, 0x22, 0x3b, 0x2f, 0x62, 0x79,
	0x6f, 0x63, 0x56, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x6f, 0x6c, 0x73, 0x2f, 0x7b, 0x72, 0x65, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x69, 0x64, 0x7d, 0x3a, 0x73,
	0x63, 0x61, 0x6c, 0x65, 0x42, 0x79, 0x6f, 0x63, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f,
	0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x8a, 0x05, 0x0a, 0x0d, 0x4c, 0x69, 0x73,
	0x74, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x73, 0x12, 0x39, 0x2e, 0x74, 0x69, 0x64,
	0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69,
	0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f,
	0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74,
	0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x4e, 0x6f, 0x64, 0x65, 0x53, 0x70, 0x65, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x81, 0x04, 0x92, 0x41, 0xd7, 0x03, 0x0a, 0x06, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e,
	0x12, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x6e, 0x6f, 0x64, 0x65, 0x20, 0x73, 0x70, 0x65, 0x63,
	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x67, 0x4c, 0x69, 0x73, 0x74,
	0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x54, 0x69, 0x4b, 0x56, 0x20, 0x6f, 0x72, 0x20, 0x54, 0x69,
	0x46, 0x6c, 0x61, 0x73, 0x68, 0x20, 0x6e, 0x6f, 0x64, 0x65, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69,
	0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
	0x62, 0x6c, 0x65, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6e,
	0x67, 0x20, 0x61, 0x20, 0x42, 0x59, 0x4f, 0x43, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x20, 0x70, 0x6f, 0x6f, 0x6c, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x20, 0x72, 0x65, 0x67, 0x69,
	0x6f, 0x6e, 0x2e, 0x6a, 0xc9, 0x02, 0x0a, 0x0e, 0x78, 0x2d, 0x63, 0x6f, 0x64, 0x65, 0x2d, 0x73,
	0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0xb6, 0x02, 0x32, 0xb3, 0x02, 0x0a, 0xb0, 0x02, 0x2a,
	0xad, 0x02, 0x0a, 0x0f, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x06, 0x1a, 0x04, 0x63,
	0x75, 0x72, 0x6c, 0x0a, 0x0e, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x67, 0x12, 0x06, 0x1a, 0x04, 0x63,
	0x75, 0x72, 0x6c, 0x0a, 0x89, 0x02, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0xfe,
	0x01, 0x1a, 0xfb, 0x01, 0x63, 0x75, 0x72, 0x6c, 0x20, 0x2d, 0x2d, 0x6c, 0x6f, 0x63, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x20, 0x27, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x63, 0x6c, 0x6f,
	0x75, 0x64, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x76,
	0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x61,
	0x77, 0x73, 0x2d, 0x75, 0x73, 0x2d, 0x77, 0x65, 0x73, 0x74, 0x2d, 0x32, 0x2f, 0x6e, 0x6f, 0x64,
	0x65, 0x53, 0x70, 0x65, 0x63, 0x73, 0x3f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3d, 0x37, 0x33, 0x31, 0x32, 0x37, 0x26, 0x63, 0x6f, 0x6d, 0x70,
	0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x3d, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x53,
	0x50, 0x45, 0x43, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59,
	0x50, 0x45, 0x5f, 0x54, 0x49, 0x4b, 0x56, 0x26, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65,
	0x3d, 0x32, 0x30, 0x27, 0x20, 0x5c, 0x0a, 0x2d, 0x2d, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x20,
	0x2d, 0x2d, 0x75, 0x73, 0x65, 0x72, 0x20, 0x27, 0x59, 0x4f, 0x55, 0x52, 0x5f, 0x50, 0x55, 0x42,
	0x4c, 0x49, 0x43, 0x5f, 0x4b, 0x45, 0x59, 0x3a, 0x59, 0x4f, 0x55, 0x52, 0x5f, 0x50, 0x52, 0x49,
	0x56, 0x41, 0x54, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x27, 0x20, 0x5c, 0x0a, 0x2d, 0x2d, 0x68, 0x65,
	0x61, 0x64, 0x65, 0x72, 0x20, 0x27, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x3a, 0x20, 0x61, 0x70,
	0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6a, 0x73, 0x6f, 0x6e, 0x27, 0x82,
	0xd3, 0xe4, 0x93, 0x02, 0x20, 0x12, 0x1e, 0x2f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
	0x7b, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x6e, 0x6f, 0x64, 0x65,
	0x53, 0x70, 0x65, 0x63, 0x73, 0x12, 0xf7, 0x02, 0x0a, 0x14, 0x50, 0x6c, 0x61, 0x6e, 0x52, 0x65,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x12, 0x40,
	0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e,
	0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62,
	0x65, 0x74, 0x61, 0x32, 0x2e, 0x50, 0x6c, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x41, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70,
	0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76,
	0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x50, 0x6c, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0xd9, 0x01, 0x92, 0x41, 0xa4, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x67, 0x69,
	0x6f, 0x6e, 0x12, 0x19, 0x50, 0x6c, 0x61, 0x6e, 0x20, 0x61, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x20, 0x70, 0x6f, 0x6f, 0x6c, 0x20, 0x43, 0x49, 0x44, 0x52, 0x1a, 0x7f, 0x52,
	0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x43,
	0x49, 0x44, 0x52, 0x20, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
	0x2c, 0x20, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x20, 0x43, 0x49, 0x44, 0x52, 0x73,
	0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, 0x20, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e,
	0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61,
	0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x20, 0x6f, 0x72, 0x67,
	0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x73, 0x65,
	0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x20, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x2e, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x2b, 0x12, 0x29, 0x2f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b,
	0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x7d, 0x3a, 0x70, 0x6c, 0x61, 0x6e, 0x52,
	0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x12,
	0xfa, 0x02, 0x0a, 0x18, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x12, 0x44, 0x2e, 0x74,
	0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61,
	0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
	0x61, 0x32, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x45, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f,
	0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e,
	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74,
	0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64,
	0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd0, 0x01, 0x92, 0x41, 0x94, 0x01,
	0x0a, 0x06, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61,
	0x74, 0x65, 0x20, 0x61, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x70, 0x6f,
	0x6f, 0x6c, 0x20, 0x43, 0x49, 0x44, 0x52, 0x1a, 0x6b, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74,
	0x65, 0x73, 0x20, 0x61, 0x20, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x2d, 0x73, 0x75,
	0x70, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x20, 0x43, 0x49, 0x44, 0x52, 0x20, 0x61, 0x6e, 0x64, 0x20,
	0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x69, 0x74, 0x73, 0x20, 0x61, 0x67, 0x67, 0x72,
	0x65, 0x67, 0x61, 0x74, 0x65, 0x20, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x20,
	0x6e, 0x6f, 0x64, 0x65, 0x20, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x20, 0x61, 0x6e,
	0x64, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x66, 0x69, 0x6e, 0x64, 0x69,
	0x6e, 0x67, 0x73, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x32, 0x3a, 0x01, 0x2a, 0x22, 0x2d, 0x2f,
	0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f,
	0x69, 0x64, 0x7d, 0x3a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x43, 0x69, 0x64, 0x72, 0x42, 0xab, 0x06, 0x92,
	0x41, 0xe5, 0x03, 0x0a, 0x03, 0x32, 0x2e, 0x30, 0x12, 0x39, 0x0a, 0x16, 0x54, 0x69, 0x44, 0x42,
	0x20, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x20, 0x50, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x20, 0x41,
	0x50, 0x49, 0x12, 0x16, 0x54, 0x69, 0x44, 0x42, 0x20, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x20, 0x50,
	0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x20, 0x41, 0x50, 0x49, 0x32, 0x07, 0x76, 0x31, 0x62, 0x65,
	0x74, 0x61, 0x32, 0x1a, 0x11, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x74, 0x69, 0x64, 0x62, 0x61,
	0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x22, 0x08, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32,
	0x2a, 0x01, 0x02, 0x32, 0x10, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x2f, 0x6a, 0x73, 0x6f, 0x6e, 0x3a, 0x10, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x2f, 0x6a, 0x73, 0x6f, 0x6e, 0x52, 0x3c, 0x0a, 0x03, 0x34, 0x30, 0x30, 0x12, 0x35,
	0x0a, 0x1b, 0x41, 0x20, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x20, 0x66, 0x69, 0x65, 0x6c,
	0x64, 0x20, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x2e, 0x12, 0x16, 0x0a,
	0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x45, 0x0a, 0x03, 0x34, 0x30, 0x31, 0x12, 0x3e, 0x0a, 0x24,
	0x54, 0x68, 0x65, 0x20, 0x41, 0x50, 0x49, 0x20, 0x6b, 0x65, 0x79, 0x20, 0x63, 0x61, 0x6e, 0x6e,
	0x6f, 0x74, 0x20, 0x62, 0x65, 0x20, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61,
	0x74, 0x65, 0x64, 0x2e, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
	0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x5d, 0x0a, 0x03,
	0x34, 0x30, 0x33, 0x12, 0x56, 0x0a, 0x3c, 0x54, 0x68, 0x65, 0x20, 0x41, 0x50, 0x49, 0x20, 0x6b,
	0x65, 0x79, 0x20, 0x64, 0x6f, 0x65, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65,
	0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x61,
	0x63, 0x63, 0x65, 0x73, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x2e, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
	0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x42, 0x0a, 0x03, 0x34,
	0x32, 0x39, 0x12, 0x3b, 0x0a, 0x21, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x65,
	0x78, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x61, 0x74, 0x65,
	0x20, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x2e, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f,
	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
	0x37, 0x0a, 0x03, 0x35, 0x30, 0x30, 0x12, 0x30, 0x0a, 0x16, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x2e,
	0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70,
	0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x0a, 0x27, 0x63, 0x6f, 0x6d, 0x2e, 0x74, 0x69,
	0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70,
	0x69, 0x2e, 0x6e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
	0x32, 0x42, 0x0b, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01,
	0x5a, 0x68, 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, 0x74, 0x69, 0x64, 0x62, 0x5f, 0x63, 0x6c, 0x6f,
	0x75, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x61, 0x70, 0x69, 0x2f, 0x6e, 0x65, 0x78, 0x74,
	0x67, 0x65, 0x6e, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x3b, 0x6e, 0x65, 0x78, 0x74,
	0x67, 0x65, 0x6e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0xa2, 0x02, 0x03, 0x54, 0x4e, 0x58,
	0xaa, 0x02, 0x20, 0x54, 0x69, 0x64, 0x62, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x4f, 0x70, 0x65, 0x6e,
	0x41, 0x70, 0x69, 0x2e, 0x4e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x2e, 0x56, 0x31, 0x62, 0x65,
	0x74, 0x61, 0x32, 0xca, 0x02, 0x20, 0x54, 0x69, 0x64, 0x62, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x4f,
	0x70, 0x65, 0x6e, 0x41, 0x70, 0x69, 0x5c, 0x4e, 0x65, 0x78, 0x74, 0x67, 0x65, 0x6e, 0x5c, 0x56,
	0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0xe2, 0x02, 0x2c, 0x54, 0x69, 0x64, 0x62, 0x43, 0x6c, 0x6f,
	0x75, 0x64, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x70, 0x69, 0x5c, 0x4e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74,
	0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x22, 0x54, 0x69, 0x64, 0x62, 0x43, 0x6c, 0x6f, 0x75,
	0x64, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x4e, 0x65, 0x78, 0x74, 0x67, 0x65,
	0x6e, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x33,
}

var (
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescOnce sync.Once
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescData = file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDesc
)

func file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescGZIP() []byte {
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescOnce.Do(func() {
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescData = protoimpl.X.CompressGZIP(file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescData)
	})
	return file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDescData
}

var file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes = make([]protoimpl.EnumInfo, 8)
var file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes = make([]protoimpl.MessageInfo, 54)
var file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_goTypes = []any{
	(NodeSpecComponentType)(0),                             // 0: tidb_cloud_open_api.nextgen.v1beta2.NodeSpecComponentType
	(NodeCountRuleType)(0),                                 // 1: tidb_cloud_open_api.nextgen.v1beta2.NodeCountRuleType
	(ByocSharedComponentType)(0),                           // 2: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentType
	(ByocVcpuPool_State)(0),                                // 3: tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool.State
	(ByocVcpuPool_HighAvailabilityType)(0),                 // 4: tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool.HighAvailabilityType
	(PlanResourcePoolCidrResponse_RecommendationStatus)(0), // 5: tidb_cloud_open_api.nextgen.v1beta2.PlanResourcePoolCidrResponse.RecommendationStatus
	(ResourcePoolCidrExclusion_Type)(0),                    // 6: tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrExclusion.Type
	(ResourcePoolCidrValidationFinding_Code)(0),            // 7: tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrValidationFinding.Code
	(*ListRegionsRequest)(nil),                             // 8: tidb_cloud_open_api.nextgen.v1beta2.ListRegionsRequest
	(*ListRegionsResponse)(nil),                            // 9: tidb_cloud_open_api.nextgen.v1beta2.ListRegionsResponse
	(*ListCloudProvidersRequest)(nil),                      // 10: tidb_cloud_open_api.nextgen.v1beta2.ListCloudProvidersRequest
	(*ListCloudProvidersResponse)(nil),                     // 11: tidb_cloud_open_api.nextgen.v1beta2.ListCloudProvidersResponse
	(*ListOpsAuditLogSettingsRequest)(nil),                 // 12: tidb_cloud_open_api.nextgen.v1beta2.ListOpsAuditLogSettingsRequest
	(*ListOpsAuditLogSettingsResponse)(nil),                // 13: tidb_cloud_open_api.nextgen.v1beta2.ListOpsAuditLogSettingsResponse
	(*OpsAuditLogSetting)(nil),                             // 14: tidb_cloud_open_api.nextgen.v1beta2.OpsAuditLogSetting
	(*ListRegionCapacitiesRequest)(nil),                    // 15: tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesRequest
	(*ListRegionCapacitiesResponse)(nil),                   // 16: tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesResponse
	(*ListByocVcpuPoolsRequest)(nil),                       // 17: tidb_cloud_open_api.nextgen.v1beta2.ListByocVcpuPoolsRequest
	(*UpdateByocVcpuPoolRequest)(nil),                      // 18: tidb_cloud_open_api.nextgen.v1beta2.UpdateByocVcpuPoolRequest
	(*GetByocSharedComponentScaleConstraintsRequest)(nil),  // 19: tidb_cloud_open_api.nextgen.v1beta2.GetByocSharedComponentScaleConstraintsRequest
	(*ScaleByocSharedComponentsRequest)(nil),               // 20: tidb_cloud_open_api.nextgen.v1beta2.ScaleByocSharedComponentsRequest
	(*ByocVcpuPool)(nil),                                   // 21: tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool
	(*ByocSharedComponentScaleConstraints)(nil),            // 22: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleConstraints
	(*ScaleByocSharedComponentsResponse)(nil),              // 23: tidb_cloud_open_api.nextgen.v1beta2.ScaleByocSharedComponentsResponse
	(*ListNodeSpecsRequest)(nil),                           // 24: tidb_cloud_open_api.nextgen.v1beta2.ListNodeSpecsRequest
	(*ListNodeSpecsResponse)(nil),                          // 25: tidb_cloud_open_api.nextgen.v1beta2.ListNodeSpecsResponse
	(*PlanResourcePoolCidrRequest)(nil),                    // 26: tidb_cloud_open_api.nextgen.v1beta2.PlanResourcePoolCidrRequest
	(*PlanResourcePoolCidrResponse)(nil),                   // 27: tidb_cloud_open_api.nextgen.v1beta2.PlanResourcePoolCidrResponse
	(*ValidateResourcePoolCidrRequest)(nil),                // 28: tidb_cloud_open_api.nextgen.v1beta2.ValidateResourcePoolCidrRequest
	(*ValidateResourcePoolCidrResponse)(nil),               // 29: tidb_cloud_open_api.nextgen.v1beta2.ValidateResourcePoolCidrResponse
	(*ResourcePoolCidrPolicy)(nil),                         // 30: tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrPolicy
	(*ResourcePoolCidrPrefixRange)(nil),                    // 31: tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrPrefixRange
	(*ResourcePoolCidrRecommendation)(nil),                 // 32: tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrRecommendation
	(*ResourcePoolCidrExclusion)(nil),                      // 33: tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrExclusion
	(*ResourcePoolCidrValidationFinding)(nil),              // 34: tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrValidationFinding
	(*ResourcePoolCidrValidationError)(nil),                // 35: tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrValidationError
	(*NodeSpec)(nil),                                       // 36: tidb_cloud_open_api.nextgen.v1beta2.NodeSpec
	(*NodeSpecStorage)(nil),                                // 37: tidb_cloud_open_api.nextgen.v1beta2.NodeSpecStorage
	(*NodeCountOptions)(nil),                               // 38: tidb_cloud_open_api.nextgen.v1beta2.NodeCountOptions
	(*NodeCountRule)(nil),                                  // 39: tidb_cloud_open_api.nextgen.v1beta2.NodeCountRule
	(*ByocSharedComponentScalePreviewSummary)(nil),         // 40: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScalePreviewSummary
	(*ByocSharedComponentScaleConstraint)(nil),             // 41: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleConstraint
	(*ByocSharedComponentScalePlanComponent)(nil),          // 42: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScalePlanComponent
	(*ByocSharedComponentScaleTarget)(nil),                 // 43: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleTarget
	(*ByocSharedComponentStorage)(nil),                     // 44: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentStorage
	(*ByocSharedComponentScaleConstraintReason)(nil),       // 45: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleConstraintReason
	(*ByocSharedComponentScaleNodeCountConstraints)(nil),   // 46: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleNodeCountConstraints
	(*ByocSharedComponentScaleNodeCountRule)(nil),          // 47: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleNodeCountRule
	(*ByocSharedComponentScaleNodeSpecConstraints)(nil),    // 48: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleNodeSpecConstraints
	(*ByocSharedComponentScaleNodeSpecCandidate)(nil),      // 49: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleNodeSpecCandidate
	(*ByocSharedComponentScaleRequiredMinSpec)(nil),        // 50: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleRequiredMinSpec
	(*ByocSharedComponentScaleStorageConstraint)(nil),      // 51: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleStorageConstraint
	(*ListByocVcpuPoolsResponse)(nil),                      // 52: tidb_cloud_open_api.nextgen.v1beta2.ListByocVcpuPoolsResponse
	(*ListCloudProvidersResponse_CloudProviderPlan)(nil),   // 53: tidb_cloud_open_api.nextgen.v1beta2.ListCloudProvidersResponse.CloudProviderPlan
	(*OpsAuditLogSetting_LogLocation)(nil),                 // 54: tidb_cloud_open_api.nextgen.v1beta2.OpsAuditLogSetting.LogLocation
	(*OpsAuditLogSetting_LogRotation)(nil),                 // 55: tidb_cloud_open_api.nextgen.v1beta2.OpsAuditLogSetting.LogRotation
	(*ListRegionCapacitiesRequest_UsageRequest)(nil),       // 56: tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesRequest.UsageRequest
	(*ListRegionCapacitiesResponse_RegionCapacity)(nil),    // 57: tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesResponse.RegionCapacity
	(*ListRegionCapacitiesResponse_UsageMetrics)(nil),      // 58: tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesResponse.UsageMetrics
	(*ByocVcpuPool_ZoneConfig)(nil),                        // 59: tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool.ZoneConfig
	(*ByocVcpuPool_TidbInstancesState)(nil),                // 60: tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool.TidbInstancesState
	(*ListByocVcpuPoolsResponse_Group)(nil),                // 61: tidb_cloud_open_api.nextgen.v1beta2.ListByocVcpuPoolsResponse.Group
	(v1beta1.ServicePlan)(0),                               // 62: tidb_cloud_open_api.common.v1beta1.ServicePlan
	(*v1beta1.Region)(nil),                                 // 63: tidb_cloud_open_api.common.v1beta1.Region
	(v1beta1.Region_CloudProvider)(0),                      // 64: tidb_cloud_open_api.common.v1beta1.Region.CloudProvider
	(*v1beta1.ServicePlanInfo)(nil),                        // 65: tidb_cloud_open_api.common.v1beta1.ServicePlanInfo
	(*timestamppb.Timestamp)(nil),                          // 66: google.protobuf.Timestamp
}
var file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_depIdxs = []int32{
	62, // 0: tidb_cloud_open_api.nextgen.v1beta2.ListRegionsRequest.service_plan:type_name -> tidb_cloud_open_api.common.v1beta1.ServicePlan
	63, // 1: tidb_cloud_open_api.nextgen.v1beta2.ListRegionsResponse.regions:type_name -> tidb_cloud_open_api.common.v1beta1.Region
	62, // 2: tidb_cloud_open_api.nextgen.v1beta2.ListCloudProvidersRequest.service_plan:type_name -> tidb_cloud_open_api.common.v1beta1.ServicePlan
	64, // 3: tidb_cloud_open_api.nextgen.v1beta2.ListCloudProvidersResponse.cloud_providers:type_name -> tidb_cloud_open_api.common.v1beta1.Region.CloudProvider
	53, // 4: tidb_cloud_open_api.nextgen.v1beta2.ListCloudProvidersResponse.cloud_provider_plans:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ListCloudProvidersResponse.CloudProviderPlan
	62, // 5: tidb_cloud_open_api.nextgen.v1beta2.ListOpsAuditLogSettingsRequest.service_plan:type_name -> tidb_cloud_open_api.common.v1beta1.ServicePlan
	14, // 6: tidb_cloud_open_api.nextgen.v1beta2.ListOpsAuditLogSettingsResponse.ops_audit_log_settings:type_name -> tidb_cloud_open_api.nextgen.v1beta2.OpsAuditLogSetting
	63, // 7: tidb_cloud_open_api.nextgen.v1beta2.OpsAuditLogSetting.region:type_name -> tidb_cloud_open_api.common.v1beta1.Region
	54, // 8: tidb_cloud_open_api.nextgen.v1beta2.OpsAuditLogSetting.log_location:type_name -> tidb_cloud_open_api.nextgen.v1beta2.OpsAuditLogSetting.LogLocation
	55, // 9: tidb_cloud_open_api.nextgen.v1beta2.OpsAuditLogSetting.log_rotation:type_name -> tidb_cloud_open_api.nextgen.v1beta2.OpsAuditLogSetting.LogRotation
	62, // 10: tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesRequest.service_plan:type_name -> tidb_cloud_open_api.common.v1beta1.ServicePlan
	56, // 11: tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesRequest.usage:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesRequest.UsageRequest
	57, // 12: tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesResponse.capacities:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesResponse.RegionCapacity
	21, // 13: tidb_cloud_open_api.nextgen.v1beta2.UpdateByocVcpuPoolRequest.byoc_vcpu_pool:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool
	43, // 14: tidb_cloud_open_api.nextgen.v1beta2.ScaleByocSharedComponentsRequest.tikv:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleTarget
	43, // 15: tidb_cloud_open_api.nextgen.v1beta2.ScaleByocSharedComponentsRequest.tiflash_write:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleTarget
	43, // 16: tidb_cloud_open_api.nextgen.v1beta2.ScaleByocSharedComponentsRequest.tiflash_compute:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleTarget
	4,  // 17: tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool.high_availability_type:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool.HighAvailabilityType
	59, // 18: tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool.zone_config:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool.ZoneConfig
	3,  // 19: tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool.state:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool.State
	60, // 20: tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool.tidb_instances_state:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool.TidbInstancesState
	40, // 21: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleConstraints.preview:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScalePreviewSummary
	41, // 22: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleConstraints.components:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleConstraint
	40, // 23: tidb_cloud_open_api.nextgen.v1beta2.ScaleByocSharedComponentsResponse.preview:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScalePreviewSummary
	42, // 24: tidb_cloud_open_api.nextgen.v1beta2.ScaleByocSharedComponentsResponse.components:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScalePlanComponent
	0,  // 25: tidb_cloud_open_api.nextgen.v1beta2.ListNodeSpecsRequest.component_type:type_name -> tidb_cloud_open_api.nextgen.v1beta2.NodeSpecComponentType
	36, // 26: tidb_cloud_open_api.nextgen.v1beta2.ListNodeSpecsResponse.node_specs:type_name -> tidb_cloud_open_api.nextgen.v1beta2.NodeSpec
	38, // 27: tidb_cloud_open_api.nextgen.v1beta2.ListNodeSpecsResponse.node_count_options:type_name -> tidb_cloud_open_api.nextgen.v1beta2.NodeCountOptions
	4,  // 28: tidb_cloud_open_api.nextgen.v1beta2.PlanResourcePoolCidrRequest.high_availability_type:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool.HighAvailabilityType
	64, // 29: tidb_cloud_open_api.nextgen.v1beta2.PlanResourcePoolCidrResponse.cloud_provider:type_name -> tidb_cloud_open_api.common.v1beta1.Region.CloudProvider
	30, // 30: tidb_cloud_open_api.nextgen.v1beta2.PlanResourcePoolCidrResponse.policy:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrPolicy
	33, // 31: tidb_cloud_open_api.nextgen.v1beta2.PlanResourcePoolCidrResponse.exclusions:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrExclusion
	5,  // 32: tidb_cloud_open_api.nextgen.v1beta2.PlanResourcePoolCidrResponse.recommendation_status:type_name -> tidb_cloud_open_api.nextgen.v1beta2.PlanResourcePoolCidrResponse.RecommendationStatus
	32, // 33: tidb_cloud_open_api.nextgen.v1beta2.PlanResourcePoolCidrResponse.recommendation:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrRecommendation
	4,  // 34: tidb_cloud_open_api.nextgen.v1beta2.ValidateResourcePoolCidrRequest.high_availability_type:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool.HighAvailabilityType
	64, // 35: tidb_cloud_open_api.nextgen.v1beta2.ValidateResourcePoolCidrResponse.cloud_provider:type_name -> tidb_cloud_open_api.common.v1beta1.Region.CloudProvider
	34, // 36: tidb_cloud_open_api.nextgen.v1beta2.ValidateResourcePoolCidrResponse.blocking_findings:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrValidationFinding
	31, // 37: tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrPolicy.allowed_prefix_ranges:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrPrefixRange
	6,  // 38: tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrExclusion.type:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrExclusion.Type
	64, // 39: tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrExclusion.cloud_provider:type_name -> tidb_cloud_open_api.common.v1beta1.Region.CloudProvider
	7,  // 40: tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrValidationFinding.code:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrValidationFinding.Code
	33, // 41: tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrValidationFinding.conflicting_exclusion:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrExclusion
	34, // 42: tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrValidationError.blocking_findings:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ResourcePoolCidrValidationFinding
	0,  // 43: tidb_cloud_open_api.nextgen.v1beta2.NodeSpec.component_type:type_name -> tidb_cloud_open_api.nextgen.v1beta2.NodeSpecComponentType
	37, // 44: tidb_cloud_open_api.nextgen.v1beta2.NodeSpec.storages:type_name -> tidb_cloud_open_api.nextgen.v1beta2.NodeSpecStorage
	39, // 45: tidb_cloud_open_api.nextgen.v1beta2.NodeCountOptions.rule:type_name -> tidb_cloud_open_api.nextgen.v1beta2.NodeCountRule
	1,  // 46: tidb_cloud_open_api.nextgen.v1beta2.NodeCountRule.type:type_name -> tidb_cloud_open_api.nextgen.v1beta2.NodeCountRuleType
	2,  // 47: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleConstraint.component_type:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentType
	43, // 48: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleConstraint.current:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleTarget
	45, // 49: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleConstraint.blocking_reasons:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleConstraintReason
	46, // 50: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleConstraint.node_count_constraints:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleNodeCountConstraints
	48, // 51: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleConstraint.node_spec_constraints:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleNodeSpecConstraints
	2,  // 52: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScalePlanComponent.component_type:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentType
	43, // 53: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScalePlanComponent.current:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleTarget
	43, // 54: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScalePlanComponent.target:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleTarget
	44, // 55: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleTarget.storages:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentStorage
	47, // 56: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleNodeCountConstraints.rule:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleNodeCountRule
	49, // 57: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleNodeSpecConstraints.candidates:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleNodeSpecCandidate
	45, // 58: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleNodeSpecCandidate.reasons:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleConstraintReason
	50, // 59: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleNodeSpecCandidate.required_min_spec:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleRequiredMinSpec
	51, // 60: tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleNodeSpecCandidate.storage_constraints:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleStorageConstraint
	61, // 61: tidb_cloud_open_api.nextgen.v1beta2.ListByocVcpuPoolsResponse.groups:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ListByocVcpuPoolsResponse.Group
	64, // 62: tidb_cloud_open_api.nextgen.v1beta2.ListCloudProvidersResponse.CloudProviderPlan.cloud_provider:type_name -> tidb_cloud_open_api.common.v1beta1.Region.CloudProvider
	62, // 63: tidb_cloud_open_api.nextgen.v1beta2.ListCloudProvidersResponse.CloudProviderPlan.service_plans:type_name -> tidb_cloud_open_api.common.v1beta1.ServicePlan
	65, // 64: tidb_cloud_open_api.nextgen.v1beta2.ListCloudProvidersResponse.CloudProviderPlan.supported_service_plans:type_name -> tidb_cloud_open_api.common.v1beta1.ServicePlanInfo
	66, // 65: tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesRequest.UsageRequest.start_time:type_name -> google.protobuf.Timestamp
	66, // 66: tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesRequest.UsageRequest.end_time:type_name -> google.protobuf.Timestamp
	63, // 67: tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesResponse.RegionCapacity.region:type_name -> tidb_cloud_open_api.common.v1beta1.Region
	58, // 68: tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesResponse.RegionCapacity.history_usages:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesResponse.UsageMetrics
	66, // 69: tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesResponse.UsageMetrics.metrics_time:type_name -> google.protobuf.Timestamp
	63, // 70: tidb_cloud_open_api.nextgen.v1beta2.ListByocVcpuPoolsResponse.Group.region:type_name -> tidb_cloud_open_api.common.v1beta1.Region
	21, // 71: tidb_cloud_open_api.nextgen.v1beta2.ListByocVcpuPoolsResponse.Group.pools:type_name -> tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool
	8,  // 72: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ListRegions:input_type -> tidb_cloud_open_api.nextgen.v1beta2.ListRegionsRequest
	10, // 73: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ListCloudProviders:input_type -> tidb_cloud_open_api.nextgen.v1beta2.ListCloudProvidersRequest
	12, // 74: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ListOpsAuditLogSettings:input_type -> tidb_cloud_open_api.nextgen.v1beta2.ListOpsAuditLogSettingsRequest
	15, // 75: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ListRegionCapacities:input_type -> tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesRequest
	17, // 76: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ListByocVcpuPools:input_type -> tidb_cloud_open_api.nextgen.v1beta2.ListByocVcpuPoolsRequest
	18, // 77: tidb_cloud_open_api.nextgen.v1beta2.RegionService.UpdateByocVcpuPool:input_type -> tidb_cloud_open_api.nextgen.v1beta2.UpdateByocVcpuPoolRequest
	19, // 78: tidb_cloud_open_api.nextgen.v1beta2.RegionService.GetByocSharedComponentScaleConstraints:input_type -> tidb_cloud_open_api.nextgen.v1beta2.GetByocSharedComponentScaleConstraintsRequest
	20, // 79: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ScaleByocSharedComponents:input_type -> tidb_cloud_open_api.nextgen.v1beta2.ScaleByocSharedComponentsRequest
	24, // 80: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ListNodeSpecs:input_type -> tidb_cloud_open_api.nextgen.v1beta2.ListNodeSpecsRequest
	26, // 81: tidb_cloud_open_api.nextgen.v1beta2.RegionService.PlanResourcePoolCidr:input_type -> tidb_cloud_open_api.nextgen.v1beta2.PlanResourcePoolCidrRequest
	28, // 82: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ValidateResourcePoolCidr:input_type -> tidb_cloud_open_api.nextgen.v1beta2.ValidateResourcePoolCidrRequest
	9,  // 83: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ListRegions:output_type -> tidb_cloud_open_api.nextgen.v1beta2.ListRegionsResponse
	11, // 84: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ListCloudProviders:output_type -> tidb_cloud_open_api.nextgen.v1beta2.ListCloudProvidersResponse
	13, // 85: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ListOpsAuditLogSettings:output_type -> tidb_cloud_open_api.nextgen.v1beta2.ListOpsAuditLogSettingsResponse
	16, // 86: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ListRegionCapacities:output_type -> tidb_cloud_open_api.nextgen.v1beta2.ListRegionCapacitiesResponse
	52, // 87: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ListByocVcpuPools:output_type -> tidb_cloud_open_api.nextgen.v1beta2.ListByocVcpuPoolsResponse
	21, // 88: tidb_cloud_open_api.nextgen.v1beta2.RegionService.UpdateByocVcpuPool:output_type -> tidb_cloud_open_api.nextgen.v1beta2.ByocVcpuPool
	22, // 89: tidb_cloud_open_api.nextgen.v1beta2.RegionService.GetByocSharedComponentScaleConstraints:output_type -> tidb_cloud_open_api.nextgen.v1beta2.ByocSharedComponentScaleConstraints
	23, // 90: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ScaleByocSharedComponents:output_type -> tidb_cloud_open_api.nextgen.v1beta2.ScaleByocSharedComponentsResponse
	25, // 91: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ListNodeSpecs:output_type -> tidb_cloud_open_api.nextgen.v1beta2.ListNodeSpecsResponse
	27, // 92: tidb_cloud_open_api.nextgen.v1beta2.RegionService.PlanResourcePoolCidr:output_type -> tidb_cloud_open_api.nextgen.v1beta2.PlanResourcePoolCidrResponse
	29, // 93: tidb_cloud_open_api.nextgen.v1beta2.RegionService.ValidateResourcePoolCidr:output_type -> tidb_cloud_open_api.nextgen.v1beta2.ValidateResourcePoolCidrResponse
	83, // [83:94] is the sub-list for method output_type
	72, // [72:83] is the sub-list for method input_type
	72, // [72:72] is the sub-list for extension type_name
	72, // [72:72] is the sub-list for extension extendee
	0,  // [0:72] is the sub-list for field type_name
}

func init() { file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_init() }
func file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_init() {
	if File_tidb_cloud_open_api_nextgen_v1beta2_region_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[0].Exporter = func(v any, i int) any {
			switch v := v.(*ListRegionsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[1].Exporter = func(v any, i int) any {
			switch v := v.(*ListRegionsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[2].Exporter = func(v any, i int) any {
			switch v := v.(*ListCloudProvidersRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[3].Exporter = func(v any, i int) any {
			switch v := v.(*ListCloudProvidersResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[4].Exporter = func(v any, i int) any {
			switch v := v.(*ListOpsAuditLogSettingsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[5].Exporter = func(v any, i int) any {
			switch v := v.(*ListOpsAuditLogSettingsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[6].Exporter = func(v any, i int) any {
			switch v := v.(*OpsAuditLogSetting); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[7].Exporter = func(v any, i int) any {
			switch v := v.(*ListRegionCapacitiesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[8].Exporter = func(v any, i int) any {
			switch v := v.(*ListRegionCapacitiesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[9].Exporter = func(v any, i int) any {
			switch v := v.(*ListByocVcpuPoolsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[10].Exporter = func(v any, i int) any {
			switch v := v.(*UpdateByocVcpuPoolRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[11].Exporter = func(v any, i int) any {
			switch v := v.(*GetByocSharedComponentScaleConstraintsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[12].Exporter = func(v any, i int) any {
			switch v := v.(*ScaleByocSharedComponentsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[13].Exporter = func(v any, i int) any {
			switch v := v.(*ByocVcpuPool); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[14].Exporter = func(v any, i int) any {
			switch v := v.(*ByocSharedComponentScaleConstraints); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[15].Exporter = func(v any, i int) any {
			switch v := v.(*ScaleByocSharedComponentsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[16].Exporter = func(v any, i int) any {
			switch v := v.(*ListNodeSpecsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[17].Exporter = func(v any, i int) any {
			switch v := v.(*ListNodeSpecsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[18].Exporter = func(v any, i int) any {
			switch v := v.(*PlanResourcePoolCidrRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[19].Exporter = func(v any, i int) any {
			switch v := v.(*PlanResourcePoolCidrResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[20].Exporter = func(v any, i int) any {
			switch v := v.(*ValidateResourcePoolCidrRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[21].Exporter = func(v any, i int) any {
			switch v := v.(*ValidateResourcePoolCidrResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[22].Exporter = func(v any, i int) any {
			switch v := v.(*ResourcePoolCidrPolicy); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[23].Exporter = func(v any, i int) any {
			switch v := v.(*ResourcePoolCidrPrefixRange); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[24].Exporter = func(v any, i int) any {
			switch v := v.(*ResourcePoolCidrRecommendation); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[25].Exporter = func(v any, i int) any {
			switch v := v.(*ResourcePoolCidrExclusion); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[26].Exporter = func(v any, i int) any {
			switch v := v.(*ResourcePoolCidrValidationFinding); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[27].Exporter = func(v any, i int) any {
			switch v := v.(*ResourcePoolCidrValidationError); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[28].Exporter = func(v any, i int) any {
			switch v := v.(*NodeSpec); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[29].Exporter = func(v any, i int) any {
			switch v := v.(*NodeSpecStorage); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[30].Exporter = func(v any, i int) any {
			switch v := v.(*NodeCountOptions); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[31].Exporter = func(v any, i int) any {
			switch v := v.(*NodeCountRule); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[32].Exporter = func(v any, i int) any {
			switch v := v.(*ByocSharedComponentScalePreviewSummary); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[33].Exporter = func(v any, i int) any {
			switch v := v.(*ByocSharedComponentScaleConstraint); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[34].Exporter = func(v any, i int) any {
			switch v := v.(*ByocSharedComponentScalePlanComponent); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[35].Exporter = func(v any, i int) any {
			switch v := v.(*ByocSharedComponentScaleTarget); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[36].Exporter = func(v any, i int) any {
			switch v := v.(*ByocSharedComponentStorage); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[37].Exporter = func(v any, i int) any {
			switch v := v.(*ByocSharedComponentScaleConstraintReason); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[38].Exporter = func(v any, i int) any {
			switch v := v.(*ByocSharedComponentScaleNodeCountConstraints); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[39].Exporter = func(v any, i int) any {
			switch v := v.(*ByocSharedComponentScaleNodeCountRule); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[40].Exporter = func(v any, i int) any {
			switch v := v.(*ByocSharedComponentScaleNodeSpecConstraints); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[41].Exporter = func(v any, i int) any {
			switch v := v.(*ByocSharedComponentScaleNodeSpecCandidate); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[42].Exporter = func(v any, i int) any {
			switch v := v.(*ByocSharedComponentScaleRequiredMinSpec); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[43].Exporter = func(v any, i int) any {
			switch v := v.(*ByocSharedComponentScaleStorageConstraint); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[44].Exporter = func(v any, i int) any {
			switch v := v.(*ListByocVcpuPoolsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[45].Exporter = func(v any, i int) any {
			switch v := v.(*ListCloudProvidersResponse_CloudProviderPlan); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[46].Exporter = func(v any, i int) any {
			switch v := v.(*OpsAuditLogSetting_LogLocation); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[47].Exporter = func(v any, i int) any {
			switch v := v.(*OpsAuditLogSetting_LogRotation); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[48].Exporter = func(v any, i int) any {
			switch v := v.(*ListRegionCapacitiesRequest_UsageRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[49].Exporter = func(v any, i int) any {
			switch v := v.(*ListRegionCapacitiesResponse_RegionCapacity); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[50].Exporter = func(v any, i int) any {
			switch v := v.(*ListRegionCapacitiesResponse_UsageMetrics); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[51].Exporter = func(v any, i int) any {
			switch v := v.(*ByocVcpuPool_ZoneConfig); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[52].Exporter = func(v any, i int) any {
			switch v := v.(*ByocVcpuPool_TidbInstancesState); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[53].Exporter = func(v any, i int) any {
			switch v := v.(*ListByocVcpuPoolsResponse_Group); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[12].OneofWrappers = []any{}
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[13].OneofWrappers = []any{}
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[19].OneofWrappers = []any{}
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[21].OneofWrappers = []any{}
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[25].OneofWrappers = []any{}
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[26].OneofWrappers = []any{}
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[29].OneofWrappers = []any{}
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[35].OneofWrappers = []any{}
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[36].OneofWrappers = []any{}
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes[43].OneofWrappers = []any{}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDesc,
			NumEnums:      8,
			NumMessages:   54,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_goTypes,
		DependencyIndexes: file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_depIdxs,
		EnumInfos:         file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_enumTypes,
		MessageInfos:      file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_msgTypes,
	}.Build()
	File_tidb_cloud_open_api_nextgen_v1beta2_region_proto = out.File
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_rawDesc = nil
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_goTypes = nil
	file_tidb_cloud_open_api_nextgen_v1beta2_region_proto_depIdxs = nil
}
