diff --git a/config/samples/resources/sqlinstance/mysql-sql-instance-with-replication/sql_v1beta1_sqlinstance.yaml b/config/samples/resources/sqlinstance/mysql-sql-instance-with-replication/sql_v1beta1_sqlinstance.yaml index a6329bf2e7..70d0f3f971 100644 --- a/config/samples/resources/sqlinstance/mysql-sql-instance-with-replication/sql_v1beta1_sqlinstance.yaml +++ b/config/samples/resources/sqlinstance/mysql-sql-instance-with-replication/sql_v1beta1_sqlinstance.yaml @@ -46,4 +46,4 @@ spec: ipConfiguration: requireSsl: true locationPreference: - zone: us-central1-c \ No newline at end of file + zone: us-central1-a \ No newline at end of file diff --git a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql.pb.go b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql.pb.go index b89a9cf765..6082fc7cd4 100644 --- a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql.pb.go +++ b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql.pb.go @@ -1,4 +1,4 @@ -// Copyright 2023 Google LLC +// Copyright 2024 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -202,6 +202,60 @@ func (SqlInstancesVerifyExternalSyncSettingsRequest_ExternalSyncMode) EnumDescri return file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_rawDescGZIP(), []int{38, 0} } +// MigrationType determines whether the migration is a physical file-based +// migration or a logical dump file-based migration. +type SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType int32 + +const ( + // Default value is a logical dump file-based migration + SqlInstancesVerifyExternalSyncSettingsRequest_MIGRATION_TYPE_UNSPECIFIED SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType = 0 + // Logical dump file-based migration + SqlInstancesVerifyExternalSyncSettingsRequest_LOGICAL SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType = 1 + // Physical file-based migration + SqlInstancesVerifyExternalSyncSettingsRequest_PHYSICAL SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType = 2 +) + +// Enum value maps for SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType. +var ( + SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType_name = map[int32]string{ + 0: "MIGRATION_TYPE_UNSPECIFIED", + 1: "LOGICAL", + 2: "PHYSICAL", + } + SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType_value = map[string]int32{ + "MIGRATION_TYPE_UNSPECIFIED": 0, + "LOGICAL": 1, + "PHYSICAL": 2, + } +) + +func (x SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType) Enum() *SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType { + p := new(SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType) + *p = x + return p +} + +func (x SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType) Descriptor() protoreflect.EnumDescriptor { + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_enumTypes[3].Descriptor() +} + +func (SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType) Type() protoreflect.EnumType { + return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_enumTypes[3] +} + +func (x SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType.Descriptor instead. +func (SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType) EnumDescriptor() ([]byte, []int) { + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_rawDescGZIP(), []int{38, 1} +} + type SqlBackupRunsDeleteRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1694,9 +1748,13 @@ type SqlInstancesPromoteReplicaRequest struct { Instance string `protobuf:"bytes,1,opt,name=instance,proto3" json:"instance,omitempty"` // ID of the project that contains the read replica. Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"` - // Set to true if the promote operation should attempt to re-add the original - // primary as a replica when it comes back online. Otherwise, if this value is - // false or not set, the original primary will be a standalone instance. + // Set to true to invoke a replica failover to the designated DR replica. + // As part of replica failover, the promote operation attempts + // to add the original primary instance as a replica of the promoted + // DR replica when the original primary instance comes back online. + // If set to false or not specified, then the original primary + // instance becomes an independent Cloud SQL primary instance. + // Only applicable to MySQL. Failover bool `protobuf:"varint,3,opt,name=failover,proto3" json:"failover,omitempty"` } @@ -2635,6 +2693,13 @@ type SqlInstancesVerifyExternalSyncSettingsRequest struct { // // *SqlInstancesVerifyExternalSyncSettingsRequest_MysqlSyncConfig SyncConfig isSqlInstancesVerifyExternalSyncSettingsRequest_SyncConfig `protobuf_oneof:"sync_config"` + // Optional. MigrationType configures the migration to use physical files or + // logical dump files. If not set, then the logical dump file configuration is + // used. Valid values are `LOGICAL` or `PHYSICAL`. Only applicable to MySQL. + MigrationType SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType `protobuf:"varint,7,opt,name=migration_type,json=migrationType,proto3,enum=mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType" json:"migration_type,omitempty"` + // Optional. Parallel level for initial data sync. Only applicable for + // PostgreSQL. + SyncParallelLevel ExternalSyncParallelLevel `protobuf:"varint,8,opt,name=sync_parallel_level,json=syncParallelLevel,proto3,enum=mockgcp.cloud.sql.v1beta4.ExternalSyncParallelLevel" json:"sync_parallel_level,omitempty"` } func (x *SqlInstancesVerifyExternalSyncSettingsRequest) Reset() { @@ -2718,6 +2783,20 @@ func (x *SqlInstancesVerifyExternalSyncSettingsRequest) GetMysqlSyncConfig() *My return nil } +func (x *SqlInstancesVerifyExternalSyncSettingsRequest) GetMigrationType() SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType { + if x != nil { + return x.MigrationType + } + return SqlInstancesVerifyExternalSyncSettingsRequest_MIGRATION_TYPE_UNSPECIFIED +} + +func (x *SqlInstancesVerifyExternalSyncSettingsRequest) GetSyncParallelLevel() ExternalSyncParallelLevel { + if x != nil { + return x.SyncParallelLevel + } + return ExternalSyncParallelLevel_EXTERNAL_SYNC_PARALLEL_LEVEL_UNSPECIFIED +} + type isSqlInstancesVerifyExternalSyncSettingsRequest_SyncConfig interface { isSqlInstancesVerifyExternalSyncSettingsRequest_SyncConfig() } @@ -2750,6 +2829,10 @@ type SqlInstancesStartExternalSyncRequest struct { // Optional. Parallel level for initial data sync. Currently only applicable // for MySQL. SyncParallelLevel ExternalSyncParallelLevel `protobuf:"varint,7,opt,name=sync_parallel_level,json=syncParallelLevel,proto3,enum=mockgcp.cloud.sql.v1beta4.ExternalSyncParallelLevel" json:"sync_parallel_level,omitempty"` + // Optional. MigrationType configures the migration to use physical files or + // logical dump files. If not set, then the logical dump file configuration is + // used. Valid values are `LOGICAL` or `PHYSICAL`. Only applicable to MySQL. + MigrationType SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType `protobuf:"varint,8,opt,name=migration_type,json=migrationType,proto3,enum=mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType" json:"migration_type,omitempty"` } func (x *SqlInstancesStartExternalSyncRequest) Reset() { @@ -2833,6 +2916,13 @@ func (x *SqlInstancesStartExternalSyncRequest) GetSyncParallelLevel() ExternalSy return ExternalSyncParallelLevel_EXTERNAL_SYNC_PARALLEL_LEVEL_UNSPECIFIED } +func (x *SqlInstancesStartExternalSyncRequest) GetMigrationType() SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType { + if x != nil { + return x.MigrationType + } + return SqlInstancesVerifyExternalSyncSettingsRequest_MIGRATION_TYPE_UNSPECIFIED +} + type isSqlInstancesStartExternalSyncRequest_SyncConfig interface { isSqlInstancesStartExternalSyncRequest_SyncConfig() } @@ -3587,6 +3677,237 @@ func (x *SqlInstancesGetLatestRecoveryTimeResponse) GetLatestRecoveryTime() *tim return nil } +// Request to release a lease for SSRS. +type SqlInstancesReleaseSsrsLeaseRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Required. The Cloud SQL instance ID. This doesn't include the project ID. + // It's composed of lowercase letters, numbers, and hyphens, and it must start + // with a letter. The total length must be 98 characters or less (Example: + // instance-id). + Instance string `protobuf:"bytes,1,opt,name=instance,proto3" json:"instance,omitempty"` + // Required. The ID of the project that contains the instance (Example: + // project-id). + Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"` +} + +func (x *SqlInstancesReleaseSsrsLeaseRequest) Reset() { + *x = SqlInstancesReleaseSsrsLeaseRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes[52] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SqlInstancesReleaseSsrsLeaseRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SqlInstancesReleaseSsrsLeaseRequest) ProtoMessage() {} + +func (x *SqlInstancesReleaseSsrsLeaseRequest) ProtoReflect() protoreflect.Message { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_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 SqlInstancesReleaseSsrsLeaseRequest.ProtoReflect.Descriptor instead. +func (*SqlInstancesReleaseSsrsLeaseRequest) Descriptor() ([]byte, []int) { + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_rawDescGZIP(), []int{52} +} + +func (x *SqlInstancesReleaseSsrsLeaseRequest) GetInstance() string { + if x != nil { + return x.Instance + } + return "" +} + +func (x *SqlInstancesReleaseSsrsLeaseRequest) GetProject() string { + if x != nil { + return x.Project + } + return "" +} + +// The response for the release of the SSRS lease. +type SqlInstancesReleaseSsrsLeaseResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // The operation ID. + OperationId string `protobuf:"bytes,1,opt,name=operation_id,json=operationId,proto3" json:"operation_id,omitempty"` +} + +func (x *SqlInstancesReleaseSsrsLeaseResponse) Reset() { + *x = SqlInstancesReleaseSsrsLeaseResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes[53] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SqlInstancesReleaseSsrsLeaseResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SqlInstancesReleaseSsrsLeaseResponse) ProtoMessage() {} + +func (x *SqlInstancesReleaseSsrsLeaseResponse) ProtoReflect() protoreflect.Message { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_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 SqlInstancesReleaseSsrsLeaseResponse.ProtoReflect.Descriptor instead. +func (*SqlInstancesReleaseSsrsLeaseResponse) Descriptor() ([]byte, []int) { + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_rawDescGZIP(), []int{53} +} + +func (x *SqlInstancesReleaseSsrsLeaseResponse) GetOperationId() string { + if x != nil { + return x.OperationId + } + return "" +} + +// Request to acquire a lease for SSRS. +type SqlInstancesAcquireSsrsLeaseRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Required. Cloud SQL instance ID. This doesn't include the project ID. It's + // composed of lowercase letters, numbers, and hyphens, and it must start with + // a letter. The total length must be 98 characters or less (Example: + // instance-id). + Instance string `protobuf:"bytes,1,opt,name=instance,proto3" json:"instance,omitempty"` + // Required. ID of the project that contains the instance (Example: + // project-id). + Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"` + // The body for request to acquire an SSRS lease. + Body *InstancesAcquireSsrsLeaseRequest `protobuf:"bytes,100,opt,name=body,proto3" json:"body,omitempty"` +} + +func (x *SqlInstancesAcquireSsrsLeaseRequest) Reset() { + *x = SqlInstancesAcquireSsrsLeaseRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes[54] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SqlInstancesAcquireSsrsLeaseRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SqlInstancesAcquireSsrsLeaseRequest) ProtoMessage() {} + +func (x *SqlInstancesAcquireSsrsLeaseRequest) ProtoReflect() protoreflect.Message { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes[54] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SqlInstancesAcquireSsrsLeaseRequest.ProtoReflect.Descriptor instead. +func (*SqlInstancesAcquireSsrsLeaseRequest) Descriptor() ([]byte, []int) { + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_rawDescGZIP(), []int{54} +} + +func (x *SqlInstancesAcquireSsrsLeaseRequest) GetInstance() string { + if x != nil { + return x.Instance + } + return "" +} + +func (x *SqlInstancesAcquireSsrsLeaseRequest) GetProject() string { + if x != nil { + return x.Project + } + return "" +} + +func (x *SqlInstancesAcquireSsrsLeaseRequest) GetBody() *InstancesAcquireSsrsLeaseRequest { + if x != nil { + return x.Body + } + return nil +} + +// Acquire SSRS lease response. +type SqlInstancesAcquireSsrsLeaseResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // The unique identifier for this operation. + OperationId *string `protobuf:"bytes,1,opt,name=operation_id,json=operationId,proto3,oneof" json:"operation_id,omitempty"` +} + +func (x *SqlInstancesAcquireSsrsLeaseResponse) Reset() { + *x = SqlInstancesAcquireSsrsLeaseResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes[55] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SqlInstancesAcquireSsrsLeaseResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SqlInstancesAcquireSsrsLeaseResponse) ProtoMessage() {} + +func (x *SqlInstancesAcquireSsrsLeaseResponse) ProtoReflect() protoreflect.Message { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes[55] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SqlInstancesAcquireSsrsLeaseResponse.ProtoReflect.Descriptor instead. +func (*SqlInstancesAcquireSsrsLeaseResponse) Descriptor() ([]byte, []int) { + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_rawDescGZIP(), []int{55} +} + +func (x *SqlInstancesAcquireSsrsLeaseResponse) GetOperationId() string { + if x != nil && x.OperationId != nil { + return *x.OperationId + } + return "" +} + var File_mockgcp_cloud_sql_v1beta4_cloud_sql_proto protoreflect.FileDescriptor var file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_rawDesc = []byte{ @@ -3929,7 +4250,7 @@ var file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_rawDesc = []byte{ 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x68, 0x72, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x04, - 0x62, 0x6f, 0x64, 0x79, 0x22, 0x8f, 0x04, 0x0a, 0x2d, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, + 0x62, 0x6f, 0x64, 0x79, 0x22, 0xcb, 0x06, 0x0a, 0x2d, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, @@ -3956,788 +4277,874 @@ var file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_rawDesc = []byte{ 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4d, 0x79, 0x53, 0x71, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x00, 0x52, 0x0f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x53, 0x79, 0x6e, 0x63, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x4f, 0x0a, 0x10, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x82, 0x01, 0x0a, 0x0e, 0x6d, 0x69, 0x67, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x56, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x78, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, + 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0d, 0x6d, 0x69, + 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x69, 0x0a, 0x13, 0x73, + 0x79, 0x6e, 0x63, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x5f, 0x6c, 0x65, 0x76, + 0x65, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, + 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x34, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, + 0x63, 0x50, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x42, 0x03, + 0xe0, 0x41, 0x01, 0x52, 0x11, 0x73, 0x79, 0x6e, 0x63, 0x50, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, + 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x4f, 0x0a, 0x10, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x45, 0x58, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x53, 0x59, 0x4e, 0x43, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x4f, 0x4e, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x46, - 0x46, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x02, 0x42, 0x0d, 0x0a, 0x0b, 0x73, 0x79, 0x6e, 0x63, 0x5f, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xd5, 0x03, 0x0a, 0x24, 0x53, 0x71, 0x6c, 0x49, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x53, 0x74, 0x61, 0x72, 0x74, 0x45, 0x78, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x76, 0x0a, 0x09, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x6d, 0x6f, - 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x59, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, - 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, - 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x4d, - 0x6f, 0x64, 0x65, 0x52, 0x08, 0x73, 0x79, 0x6e, 0x63, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x2b, 0x0a, - 0x11, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x6b, 0x69, 0x70, 0x56, 0x65, - 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x58, 0x0a, 0x11, 0x6d, 0x79, - 0x73, 0x71, 0x6c, 0x5f, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, - 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x34, 0x2e, 0x4d, 0x79, 0x53, 0x71, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x48, 0x00, 0x52, 0x0f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x12, 0x69, 0x0a, 0x13, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x70, 0x61, 0x72, - 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, - 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x45, 0x78, - 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x50, 0x61, 0x72, 0x61, 0x6c, 0x6c, - 0x65, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x11, 0x73, 0x79, - 0x6e, 0x63, 0x50, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x42, - 0x0d, 0x0a, 0x0b, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x5b, - 0x0a, 0x23, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, - 0x73, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x51, 0x0a, 0x17, 0x53, - 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x47, 0x65, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x90, - 0x01, 0x0a, 0x18, 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, - 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, - 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, - 0x78, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, - 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, - 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x22, 0x54, 0x0a, 0x1a, 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1c, 0x0a, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, - 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0xad, 0x01, 0x0a, 0x26, 0x53, 0x71, 0x6c, 0x49, - 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x70, - 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x4d, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, - 0x18, 0x64, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, - 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x7b, 0x0a, 0x18, 0x53, 0x71, 0x6c, 0x53, 0x73, - 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x68, 0x61, - 0x31, 0x5f, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x68, 0x61, 0x31, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, - 0x72, 0x69, 0x6e, 0x74, 0x22, 0x78, 0x0a, 0x15, 0x53, 0x71, 0x6c, 0x53, 0x73, 0x6c, 0x43, 0x65, - 0x72, 0x74, 0x73, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, - 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x68, 0x61, 0x31, 0x5f, 0x66, 0x69, 0x6e, 0x67, - 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, - 0x68, 0x61, 0x31, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x22, 0x96, - 0x01, 0x0a, 0x18, 0x53, 0x71, 0x6c, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x49, 0x6e, - 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, + 0x46, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x02, 0x22, 0x4a, 0x0a, 0x0d, 0x4d, 0x69, 0x67, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x1a, 0x4d, 0x49, 0x47, 0x52, + 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, + 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x4c, 0x4f, 0x47, 0x49, + 0x43, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x50, 0x48, 0x59, 0x53, 0x49, 0x43, 0x41, + 0x4c, 0x10, 0x02, 0x42, 0x0d, 0x0a, 0x0b, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x22, 0xda, 0x04, 0x0a, 0x24, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x73, 0x53, 0x74, 0x61, 0x72, 0x74, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, + 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x12, 0x44, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x64, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x30, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, - 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, - 0x65, 0x72, 0x74, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x4e, 0x0a, 0x16, 0x53, 0x71, 0x6c, 0x53, 0x73, - 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x5e, 0x0a, 0x26, 0x53, 0x71, 0x6c, 0x49, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x68, - 0x72, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x60, 0x0a, 0x28, 0x53, 0x71, 0x6c, 0x49, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, - 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x74, 0x12, 0x76, 0x0a, 0x09, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x59, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x56, 0x65, 0x72, + 0x69, 0x66, 0x79, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, + 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x45, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x4d, 0x6f, 0x64, 0x65, 0x52, + 0x08, 0x73, 0x79, 0x6e, 0x63, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x6b, 0x69, + 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x58, 0x0a, 0x11, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, + 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2a, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4d, 0x79, + 0x53, 0x71, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, + 0x0f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x12, 0x69, 0x0a, 0x13, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, + 0x6c, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, + 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, + 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x50, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x4c, 0x65, + 0x76, 0x65, 0x6c, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x11, 0x73, 0x79, 0x6e, 0x63, 0x50, 0x61, + 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x82, 0x01, 0x0a, 0x0e, + 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x56, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x56, 0x65, 0x72, + 0x69, 0x66, 0x79, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, + 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4d, + 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, + 0x01, 0x52, 0x0d, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, + 0x42, 0x0d, 0x0a, 0x0b, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, + 0x5b, 0x0a, 0x23, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x53, 0x69, 0x7a, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x51, 0x0a, 0x17, + 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x47, 0x65, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, + 0x90, 0x01, 0x0a, 0x18, 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, + 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, + 0x61, 0x78, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, + 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, + 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x22, 0x54, 0x0a, 0x1a, 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, + 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0xad, 0x01, 0x0a, 0x26, 0x53, 0x71, 0x6c, + 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, + 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x8d, 0x01, 0x0a, 0x29, 0x53, 0x71, - 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, - 0x65, 0x73, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x4c, 0x0a, 0x14, 0x6c, - 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 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, 0x52, 0x12, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x63, - 0x6f, 0x76, 0x65, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x2a, 0x68, 0x0a, 0x19, 0x45, 0x78, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x50, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, - 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x2c, 0x0a, 0x28, 0x45, 0x58, 0x54, 0x45, 0x52, 0x4e, - 0x41, 0x4c, 0x5f, 0x53, 0x59, 0x4e, 0x43, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4c, 0x4c, 0x45, 0x4c, - 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, - 0x45, 0x44, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4d, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x0b, 0x0a, - 0x07, 0x4f, 0x50, 0x54, 0x49, 0x4d, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x4d, 0x41, - 0x58, 0x10, 0x03, 0x32, 0xeb, 0x06, 0x0a, 0x14, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, - 0x70, 0x52, 0x75, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xb3, 0x01, 0x0a, - 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x35, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, - 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, - 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, - 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, - 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x46, 0x2a, 0x44, 0x2f, 0x73, - 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x7d, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x73, 0x2f, 0x7b, 0x69, - 0x64, 0x7d, 0x12, 0xad, 0x01, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x32, 0x2e, 0x6d, 0x6f, 0x63, - 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, - 0x52, 0x75, 0x6e, 0x73, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, - 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, - 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, - 0x70, 0x52, 0x75, 0x6e, 0x22, 0x4c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x46, 0x12, 0x44, 0x2f, 0x73, - 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x7d, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x73, 0x2f, 0x7b, 0x69, - 0x64, 0x7d, 0x12, 0xb4, 0x01, 0x0a, 0x06, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x12, 0x35, 0x2e, - 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, - 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x63, - 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, - 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, - 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4d, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x47, 0x22, 0x3f, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, - 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, - 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, - 0x75, 0x6e, 0x73, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xb7, 0x01, 0x0a, 0x04, 0x4c, 0x69, - 0x73, 0x74, 0x12, 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, - 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, - 0x71, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x73, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, + 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x4d, 0x0a, 0x04, 0x62, 0x6f, 0x64, + 0x79, 0x18, 0x64, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x34, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x73, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x47, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x41, 0x12, 0x3f, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, - 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, - 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, - 0x75, 0x6e, 0x73, 0x1a, 0x7c, 0xca, 0x41, 0x17, 0x73, 0x71, 0x6c, 0x61, 0x64, 0x6d, 0x69, 0x6e, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, - 0x41, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, - 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, - 0x2f, 0x73, 0x71, 0x6c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x61, 0x64, 0x6d, 0x69, - 0x6e, 0x32, 0xeb, 0x09, 0x0a, 0x13, 0x53, 0x71, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, - 0x65, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xb7, 0x01, 0x0a, 0x06, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, - 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, - 0x2e, 0x53, 0x71, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, - 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x22, 0x51, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4b, 0x2a, 0x49, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, - 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, - 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x64, - 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, - 0x73, 0x65, 0x7d, 0x12, 0xb0, 0x01, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x31, 0x2e, 0x6d, 0x6f, + 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x7b, 0x0a, 0x18, 0x53, 0x71, 0x6c, 0x53, + 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x68, + 0x61, 0x31, 0x5f, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x68, 0x61, 0x31, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, + 0x70, 0x72, 0x69, 0x6e, 0x74, 0x22, 0x78, 0x0a, 0x15, 0x53, 0x71, 0x6c, 0x53, 0x73, 0x6c, 0x43, + 0x65, 0x72, 0x74, 0x73, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, + 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x68, 0x61, 0x31, 0x5f, 0x66, 0x69, 0x6e, + 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, + 0x73, 0x68, 0x61, 0x31, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x22, + 0x96, 0x01, 0x0a, 0x18, 0x53, 0x71, 0x6c, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x49, + 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x12, 0x44, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x64, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x30, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, + 0x43, 0x65, 0x72, 0x74, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x4e, 0x0a, 0x16, 0x53, 0x71, 0x6c, 0x53, + 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x5e, 0x0a, 0x26, 0x53, 0x71, 0x6c, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x44, 0x69, 0x73, 0x6b, 0x53, + 0x68, 0x72, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x60, 0x0a, 0x28, 0x53, 0x71, 0x6c, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, + 0x74, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x8d, 0x01, 0x0a, 0x29, 0x53, + 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x4c, 0x61, + 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x4c, 0x0a, 0x14, + 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 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, 0x52, 0x12, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, + 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x65, 0x0a, 0x23, 0x53, 0x71, + 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, + 0x65, 0x53, 0x73, 0x72, 0x73, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x1f, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x22, 0x49, 0x0a, 0x24, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x73, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x53, 0x73, 0x72, 0x73, 0x4c, 0x65, 0x61, 0x73, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x70, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xb6, 0x01, 0x0a, + 0x23, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x41, 0x63, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x53, 0x73, 0x72, 0x73, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x70, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x12, 0x4f, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x64, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x41, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x53, + 0x73, 0x72, 0x73, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, + 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x5f, 0x0a, 0x24, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x73, 0x41, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x53, 0x73, 0x72, 0x73, + 0x4c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x26, 0x0a, + 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x2a, 0x68, 0x0a, 0x19, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x50, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x4c, 0x65, + 0x76, 0x65, 0x6c, 0x12, 0x2c, 0x0a, 0x28, 0x45, 0x58, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, + 0x53, 0x59, 0x4e, 0x43, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4c, 0x4c, 0x45, 0x4c, 0x5f, 0x4c, 0x45, + 0x56, 0x45, 0x4c, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4d, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x50, + 0x54, 0x49, 0x4d, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x4d, 0x41, 0x58, 0x10, 0x03, + 0x32, 0xeb, 0x06, 0x0a, 0x14, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, + 0x6e, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xb3, 0x01, 0x0a, 0x06, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x12, 0x35, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x73, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, - 0x61, 0x73, 0x65, 0x73, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, - 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, - 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, - 0x61, 0x73, 0x65, 0x22, 0x51, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4b, 0x12, 0x49, 0x2f, 0x73, 0x71, - 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x7d, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, 0x64, 0x61, 0x74, - 0x61, 0x62, 0x61, 0x73, 0x65, 0x7d, 0x12, 0xb2, 0x01, 0x0a, 0x06, 0x49, 0x6e, 0x73, 0x65, 0x72, - 0x74, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x22, 0x4c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x46, 0x2a, 0x44, 0x2f, 0x73, 0x71, 0x6c, 0x2f, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, + 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, + 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, + 0xad, 0x01, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x32, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, + 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, + 0x73, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, + 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, + 0x6e, 0x22, 0x4c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x46, 0x12, 0x44, 0x2f, 0x73, 0x71, 0x6c, 0x2f, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, + 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, + 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, + 0xb4, 0x01, 0x0a, 0x06, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x12, 0x35, 0x2e, 0x6d, 0x6f, 0x63, + 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, + 0x52, 0x75, 0x6e, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x47, 0x22, + 0x3f, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, + 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x73, + 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xb7, 0x01, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, + 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x42, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x47, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x41, 0x12, + 0x3f, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, + 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x73, + 0x1a, 0x7c, 0xca, 0x41, 0x17, 0x73, 0x71, 0x6c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x5f, 0x68, + 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, + 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x73, 0x71, + 0x6c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x32, 0xeb, + 0x09, 0x0a, 0x13, 0x53, 0x71, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xb7, 0x01, 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, - 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, + 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4c, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x46, 0x22, 0x3e, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x51, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x4b, 0x2a, 0x49, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x64, 0x61, 0x74, 0x61, - 0x62, 0x61, 0x73, 0x65, 0x73, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xb4, 0x01, 0x0a, 0x04, - 0x4c, 0x69, 0x73, 0x74, 0x12, 0x32, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, - 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, - 0x2e, 0x53, 0x71, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, + 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x7d, + 0x12, 0xb0, 0x01, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x31, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x46, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x40, 0x12, 0x3e, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, + 0x73, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x6d, 0x6f, + 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, + 0x22, 0x51, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4b, 0x12, 0x49, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, + 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x64, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, + 0x73, 0x65, 0x7d, 0x12, 0xb2, 0x01, 0x0a, 0x06, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x12, 0x34, + 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, + 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x44, 0x61, + 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4c, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x46, 0x22, 0x3e, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, - 0x65, 0x73, 0x12, 0xbc, 0x01, 0x0a, 0x05, 0x50, 0x61, 0x74, 0x63, 0x68, 0x12, 0x34, 0x2e, 0x6d, - 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x44, 0x61, 0x74, 0x61, - 0x62, 0x61, 0x73, 0x65, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, - 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x57, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x51, - 0x32, 0x49, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, - 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, - 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x7d, 0x3a, 0x04, 0x62, 0x6f, 0x64, - 0x79, 0x12, 0xbd, 0x01, 0x0a, 0x06, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x34, 0x2e, 0x6d, - 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x44, 0x61, 0x74, 0x61, - 0x62, 0x61, 0x73, 0x65, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, - 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x57, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x51, - 0x1a, 0x49, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, - 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, - 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x7d, 0x3a, 0x04, 0x62, 0x6f, 0x64, - 0x79, 0x1a, 0x7c, 0xca, 0x41, 0x17, 0x73, 0x71, 0x6c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x5f, - 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, - 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, - 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x73, - 0x71, 0x6c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x32, - 0x92, 0x02, 0x0a, 0x0f, 0x53, 0x71, 0x6c, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x53, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x12, 0x80, 0x01, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2e, 0x2e, 0x6d, - 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x46, 0x6c, 0x61, 0x67, - 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x6d, - 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1a, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x14, 0x12, 0x12, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, - 0x2f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x1a, 0x7c, 0xca, 0x41, 0x17, 0x73, 0x71, 0x6c, 0x61, 0x64, - 0x6d, 0x69, 0x6e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, - 0x6f, 0x6d, 0xd2, 0x41, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, - 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, - 0x75, 0x74, 0x68, 0x2f, 0x73, 0x71, 0x6c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x61, - 0x64, 0x6d, 0x69, 0x6e, 0x32, 0xd3, 0x31, 0x0a, 0x13, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, - 0x61, 0x6e, 0x63, 0x65, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xb8, 0x01, 0x0a, - 0x0b, 0x41, 0x64, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x12, 0x39, 0x2e, 0x6d, - 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, - 0x61, 0x6e, 0x63, 0x65, 0x73, 0x41, 0x64, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, - 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x48, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x42, 0x22, 0x40, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, - 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x61, 0x64, 0x64, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x12, 0xac, 0x01, 0x0a, 0x05, 0x43, 0x6c, 0x6f, 0x6e, - 0x65, 0x12, 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, - 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, - 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, - 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x48, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x42, 0x22, 0x3a, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, - 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x63, 0x6c, 0x6f, 0x6e, 0x65, - 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xa2, 0x01, 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, + 0x65, 0x73, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xb4, 0x01, 0x0a, 0x04, 0x4c, 0x69, 0x73, + 0x74, 0x12, 0x32, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, - 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, - 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3c, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x36, 0x2a, 0x34, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, - 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x12, 0xc1, 0x01, 0x0a, 0x0c, - 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x12, 0x3a, 0x2e, 0x6d, - 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, - 0x61, 0x6e, 0x63, 0x65, 0x73, 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, 0x65, - 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, - 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4f, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x49, 0x22, 0x41, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x64, 0x65, 0x6d, - 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, - 0xaf, 0x01, 0x0a, 0x06, 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, - 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, - 0x63, 0x65, 0x73, 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x49, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x43, 0x22, 0x3b, - 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, - 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x64, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x3a, 0x04, 0x62, 0x6f, 0x64, - 0x79, 0x12, 0xaf, 0x01, 0x0a, 0x06, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x34, 0x2e, 0x6d, - 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, - 0x61, 0x6e, 0x63, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, - 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x49, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x43, - 0x22, 0x3b, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, - 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x04, 0x62, - 0x6f, 0x64, 0x79, 0x12, 0xb5, 0x01, 0x0a, 0x08, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, - 0x12, 0x36, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, - 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, - 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, - 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4b, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x45, 0x22, 0x3d, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x66, 0x61, 0x69, - 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xb8, 0x01, 0x0a, 0x09, - 0x52, 0x65, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x12, 0x37, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x46, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x40, 0x12, + 0x3e, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, + 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x12, + 0xbc, 0x01, 0x0a, 0x05, 0x50, 0x61, 0x74, 0x63, 0x68, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, + 0x65, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x57, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x51, 0x32, 0x49, 0x2f, + 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x7d, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, 0x64, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x7d, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xbd, + 0x01, 0x0a, 0x06, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, + 0x65, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x57, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x51, 0x1a, 0x49, 0x2f, + 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x7d, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, 0x64, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x7d, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, 0x7c, + 0xca, 0x41, 0x17, 0x73, 0x71, 0x6c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x5f, 0x68, 0x74, 0x74, + 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, + 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, + 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, + 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x73, 0x71, 0x6c, 0x73, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x32, 0x92, 0x02, 0x0a, + 0x0f, 0x53, 0x71, 0x6c, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x12, 0x80, 0x01, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x14, 0x12, + 0x12, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x66, 0x6c, + 0x61, 0x67, 0x73, 0x1a, 0x7c, 0xca, 0x41, 0x17, 0x73, 0x71, 0x6c, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, + 0x41, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, + 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, + 0x2f, 0x73, 0x71, 0x6c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x61, 0x64, 0x6d, 0x69, + 0x6e, 0x32, 0xa3, 0x35, 0x0a, 0x13, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xb8, 0x01, 0x0a, 0x0b, 0x41, 0x64, + 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x12, 0x39, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x73, 0x52, 0x65, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, - 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x46, - 0x22, 0x3e, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, - 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x72, 0x65, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, - 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xa3, 0x01, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x31, + 0x65, 0x73, 0x41, 0x64, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x48, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x42, 0x22, 0x40, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x61, 0x64, 0x64, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x43, 0x61, 0x12, 0xac, 0x01, 0x0a, 0x05, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x12, 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x2b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, - 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, - 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x3c, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x36, 0x12, 0x34, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x12, 0xaf, 0x01, 0x0a, - 0x06, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, + 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x48, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x42, 0x22, 0x3a, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, + 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x63, 0x6c, 0x6f, 0x6e, 0x65, 0x3a, 0x04, 0x62, + 0x6f, 0x64, 0x79, 0x12, 0xa2, 0x01, 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x34, + 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, + 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3c, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x36, 0x2a, 0x34, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x12, 0xc1, 0x01, 0x0a, 0x0c, 0x44, 0x65, 0x6d, + 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x12, 0x3a, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x73, 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4f, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x49, 0x22, 0x41, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x64, 0x65, 0x6d, 0x6f, 0x74, 0x65, + 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xaf, 0x01, 0x0a, + 0x06, 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, - 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, + 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x49, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x43, 0x22, 0x3b, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x7d, 0x2f, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x9d, - 0x01, 0x0a, 0x06, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x7d, 0x2f, 0x64, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xaf, + 0x01, 0x0a, 0x06, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x37, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x31, 0x22, 0x29, 0x2f, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x49, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x43, 0x22, 0x3b, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, - 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x9f, - 0x01, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x32, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, - 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, - 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x6d, 0x6f, - 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x12, 0x29, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, - 0x12, 0xd3, 0x01, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, - 0x61, 0x73, 0x12, 0x3b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, - 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, - 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x39, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, - 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, 0x6e, 0x73, 0x74, - 0x61, 0x6e, 0x63, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, - 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4a, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x44, 0x12, 0x42, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, - 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, - 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x43, 0x61, 0x73, 0x12, 0xa6, 0x01, 0x0a, 0x05, 0x50, 0x61, 0x74, 0x63, 0x68, - 0x12, 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, - 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x50, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x7d, 0x2f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, + 0x12, 0xb5, 0x01, 0x0a, 0x08, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x12, 0x36, 0x2e, + 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, + 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x42, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x3c, 0x32, 0x34, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4b, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x45, 0x22, 0x3d, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, - 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, - 0xc1, 0x01, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x12, 0x3c, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, - 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, - 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x6d, 0x6f, - 0x74, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x45, 0x22, 0x43, - 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, - 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x12, 0xb5, 0x01, 0x0a, 0x0a, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x6f, 0x76, - 0x65, 0x72, 0x12, 0x38, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, - 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, - 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x53, 0x77, 0x69, 0x74, 0x63, - 0x68, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, - 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x22, 0x47, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x41, 0x22, 0x3f, 0x2f, 0x73, 0x71, 0x6c, - 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, - 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, - 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, - 0x2f, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x6f, 0x76, 0x65, 0x72, 0x12, 0xc1, 0x01, 0x0a, 0x0e, - 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x73, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3c, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x66, 0x61, 0x69, 0x6c, 0x6f, 0x76, + 0x65, 0x72, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xb8, 0x01, 0x0a, 0x09, 0x52, 0x65, 0x65, + 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x12, 0x37, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, + 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, + 0x65, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x46, 0x22, 0x3e, 0x2f, + 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x7d, 0x2f, 0x72, 0x65, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x3a, 0x04, 0x62, + 0x6f, 0x64, 0x79, 0x12, 0xa3, 0x01, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x31, 0x2e, 0x6d, 0x6f, + 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, - 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x73, 0x6c, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, + 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, + 0x61, 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x3c, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x36, 0x12, 0x34, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x12, 0xaf, 0x01, 0x0a, 0x06, 0x49, 0x6d, + 0x70, 0x6f, 0x72, 0x74, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x49, 0x6d, 0x70, + 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, + 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0x49, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x43, 0x22, 0x3b, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, + 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x69, + 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x9d, 0x01, 0x0a, 0x06, + 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, + 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x49, + 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x22, 0x4b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x45, 0x22, 0x43, 0x2f, 0x73, 0x71, 0x6c, + 0x6f, 0x6e, 0x22, 0x37, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x31, 0x22, 0x29, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, - 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, - 0x2f, 0x72, 0x65, 0x73, 0x65, 0x74, 0x53, 0x73, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, - 0xac, 0x01, 0x0a, 0x07, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x35, 0x2e, 0x6d, 0x6f, - 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x61, 0x6e, 0x63, 0x65, 0x73, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x9f, 0x01, 0x0a, 0x04, + 0x4c, 0x69, 0x73, 0x74, 0x12, 0x32, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, + 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x2b, 0x12, 0x29, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0xd3, 0x01, + 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x73, 0x12, + 0x3b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x43, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x6d, + 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x44, 0x12, + 0x42, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, + 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x43, 0x61, 0x73, 0x12, 0xa6, 0x01, 0x0a, 0x05, 0x50, 0x61, 0x74, 0x63, 0x68, 0x12, 0x33, 0x2e, + 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, + 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x50, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3e, - 0x22, 0x3c, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, + 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x42, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3c, + 0x32, 0x34, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x72, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0xc4, - 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, - 0x12, 0x3b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, - 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, - 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xc1, 0x01, 0x0a, + 0x0e, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, + 0x3c, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x52, + 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0x50, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4a, 0x22, 0x42, 0x2f, 0x73, 0x71, + 0x69, 0x6f, 0x6e, 0x22, 0x4b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x45, 0x22, 0x43, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x7d, 0x2f, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x3a, - 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xc7, 0x01, 0x0a, 0x0e, 0x52, 0x6f, 0x74, 0x61, 0x74, 0x65, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x12, 0x3c, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, + 0x7d, 0x2f, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x12, 0xb5, 0x01, 0x0a, 0x0a, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x6f, 0x76, 0x65, 0x72, 0x12, + 0x38, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x6f, 0x76, + 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, + 0x47, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x41, 0x22, 0x3f, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, + 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x73, 0x77, + 0x69, 0x74, 0x63, 0x68, 0x6f, 0x76, 0x65, 0x72, 0x12, 0xc1, 0x01, 0x0a, 0x0e, 0x52, 0x65, 0x73, + 0x65, 0x74, 0x53, 0x73, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3c, 0x2e, 0x6d, 0x6f, + 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x73, 0x6c, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, + 0x4b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x45, 0x22, 0x43, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, + 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x72, 0x65, + 0x73, 0x65, 0x74, 0x53, 0x73, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0xac, 0x01, 0x0a, + 0x07, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x35, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x73, 0x52, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, - 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x51, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x4b, 0x22, 0x43, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, - 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x72, 0x6f, 0x74, 0x61, 0x74, - 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, - 0xbb, 0x01, 0x0a, 0x0c, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, - 0x12, 0x3a, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, - 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, - 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, - 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x22, 0x49, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x43, 0x22, 0x41, 0x2f, 0x73, 0x71, 0x6c, - 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, - 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, - 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, - 0x2f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, 0xb8, 0x01, - 0x0a, 0x0b, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, 0x39, 0x2e, + 0x73, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3e, 0x22, 0x3c, 0x2f, + 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x7d, 0x2f, 0x72, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0xc4, 0x01, 0x0a, 0x0d, + 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x3b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, - 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, - 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x48, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x42, 0x22, 0x40, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x73, 0x74, 0x6f, - 0x70, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, 0xbe, 0x01, 0x0a, 0x0b, 0x54, 0x72, 0x75, - 0x6e, 0x63, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x12, 0x39, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, - 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x73, 0x54, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, - 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, - 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4e, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x48, 0x22, 0x40, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, - 0x4c, 0x6f, 0x67, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xa8, 0x01, 0x0a, 0x06, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, - 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, - 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x63, + 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x22, 0x42, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3c, 0x1a, 0x34, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, + 0x22, 0x50, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4a, 0x22, 0x42, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, - 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x3a, 0x04, - 0x62, 0x6f, 0x64, 0x79, 0x12, 0xcc, 0x01, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, - 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x12, 0x41, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, - 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, - 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x6d, 0x6f, - 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x22, - 0x52, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4c, 0x22, 0x44, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x3a, 0x04, 0x62, - 0x6f, 0x64, 0x79, 0x12, 0xdc, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, - 0x6c, 0x65, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x43, 0x2e, + 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x72, + 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x3a, 0x04, 0x62, 0x6f, + 0x64, 0x79, 0x12, 0xc7, 0x01, 0x0a, 0x0e, 0x52, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x43, 0x61, 0x12, 0x3c, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x6f, + 0x74, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, + 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x51, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x4b, 0x22, 0x43, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, + 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xbb, 0x01, 0x0a, + 0x0c, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, 0x3a, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, - 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, - 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x58, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x52, - 0x22, 0x4a, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, - 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x72, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, - 0x65, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x3a, 0x04, 0x62, 0x6f, - 0x64, 0x79, 0x12, 0x8d, 0x02, 0x0a, 0x1a, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x78, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, - 0x73, 0x12, 0x48, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, - 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, - 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, - 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, - 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x49, 0x2e, 0x6d, 0x6f, - 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, - 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x54, 0x22, 0x4f, - 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, - 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x78, 0x74, 0x65, 0x72, - 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x3a, - 0x01, 0x2a, 0x12, 0xcd, 0x01, 0x0a, 0x11, 0x53, 0x74, 0x61, 0x72, 0x74, 0x45, 0x78, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x12, 0x3f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, - 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x73, 0x53, 0x74, 0x61, 0x72, 0x74, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, - 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, - 0x51, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4b, 0x22, 0x46, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, + 0x49, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x43, 0x22, 0x41, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x3a, - 0x01, 0x2a, 0x12, 0xd0, 0x01, 0x0a, 0x11, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x44, 0x69, - 0x73, 0x6b, 0x53, 0x68, 0x72, 0x69, 0x6e, 0x6b, 0x12, 0x3f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, + 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, 0xb8, 0x01, 0x0a, 0x0b, 0x53, + 0x74, 0x6f, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, 0x39, 0x2e, 0x6d, 0x6f, 0x63, + 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x73, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x48, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x42, 0x22, 0x40, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x73, 0x74, 0x6f, 0x70, 0x52, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, 0xbe, 0x01, 0x0a, 0x0b, 0x54, 0x72, 0x75, 0x6e, 0x63, 0x61, + 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x12, 0x39, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x54, 0x72, + 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x48, 0x22, 0x40, + 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x67, + 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xa8, 0x01, 0x0a, 0x06, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x12, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, + 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, + 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x42, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x3c, 0x1a, 0x34, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, + 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x3a, 0x04, 0x62, 0x6f, 0x64, + 0x79, 0x12, 0xcc, 0x01, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x70, 0x68, 0x65, + 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x12, 0x41, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x43, 0x65, 0x72, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, + 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x22, 0x52, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x4c, 0x22, 0x44, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, + 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, + 0x12, 0xdc, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x4d, + 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x43, 0x2e, 0x6d, 0x6f, 0x63, + 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x4d, 0x61, 0x69, + 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x58, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x52, 0x22, 0x4a, 0x2f, + 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x7d, 0x2f, 0x72, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x4d, 0x61, + 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, + 0x8d, 0x02, 0x0a, 0x1a, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x48, + 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, + 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x78, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x49, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x73, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x68, 0x72, 0x69, - 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, - 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, - 0x54, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4e, 0x22, 0x46, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x70, 0x65, - 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x68, 0x72, 0x69, 0x6e, 0x6b, 0x3a, - 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xee, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x44, 0x69, 0x73, - 0x6b, 0x53, 0x68, 0x72, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x41, 0x2e, + 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, + 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x5a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x54, 0x22, 0x4f, 0x2f, 0x73, 0x71, + 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x7d, 0x2f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, + 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x3a, 0x01, 0x2a, 0x12, + 0xcd, 0x01, 0x0a, 0x11, 0x53, 0x74, 0x61, 0x72, 0x74, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x12, 0x3f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x53, 0x74, + 0x61, 0x72, 0x74, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, + 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x51, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x4b, 0x22, 0x46, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, + 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x73, 0x74, 0x61, 0x72, 0x74, + 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x3a, 0x01, 0x2a, 0x12, + 0xd0, 0x01, 0x0a, 0x11, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x44, 0x69, 0x73, 0x6b, 0x53, + 0x68, 0x72, 0x69, 0x6e, 0x6b, 0x12, 0x3f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x50, 0x65, + 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x68, 0x72, 0x69, 0x6e, 0x6b, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, + 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x54, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x4e, 0x22, 0x46, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, + 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x70, 0x65, 0x72, 0x66, 0x6f, + 0x72, 0x6d, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x68, 0x72, 0x69, 0x6e, 0x6b, 0x3a, 0x04, 0x62, 0x6f, + 0x64, 0x79, 0x12, 0xee, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x68, + 0x72, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x41, 0x2e, 0x6d, 0x6f, 0x63, + 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x68, 0x72, 0x69, 0x6e, 0x6b, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x42, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x68, 0x72, - 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x42, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, - 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x44, 0x69, 0x73, 0x6b, - 0x53, 0x68, 0x72, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x50, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4a, 0x12, 0x48, 0x2f, 0x73, - 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x7d, 0x2f, 0x67, 0x65, 0x74, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x68, 0x72, 0x69, 0x6e, 0x6b, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0xca, 0x01, 0x0a, 0x10, 0x52, 0x65, 0x73, 0x65, 0x74, - 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x3e, 0x2e, 0x6d, 0x6f, - 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, - 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, - 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0x50, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4a, 0x22, 0x45, 0x2f, 0x73, 0x71, 0x6c, 0x2f, + 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x50, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4a, 0x12, 0x48, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, - 0x72, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x53, 0x69, 0x7a, 0x65, - 0x3a, 0x01, 0x2a, 0x12, 0xf6, 0x01, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, - 0x74, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x43, 0x2e, - 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, - 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x52, - 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x44, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, - 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, - 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x4c, 0x61, - 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x52, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4c, - 0x12, 0x4a, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, - 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x67, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, - 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x7c, 0xca, 0x41, - 0x17, 0x73, 0x71, 0x6c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x73, - 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, - 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, - 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, - 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x73, 0x71, 0x6c, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x32, 0xfc, 0x04, 0x0a, 0x14, 0x53, - 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x12, 0x9f, 0x01, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x32, 0x2e, 0x6d, 0x6f, - 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, - 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x38, 0x12, 0x36, 0x2f, + 0x67, 0x65, 0x74, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x68, 0x72, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x12, 0xca, 0x01, 0x0a, 0x10, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x3e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, + 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x73, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x53, 0x69, 0x7a, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, + 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x50, + 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4a, 0x22, 0x45, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, + 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x72, 0x65, 0x73, + 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x53, 0x69, 0x7a, 0x65, 0x3a, 0x01, 0x2a, + 0x12, 0xf6, 0x01, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, + 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x43, 0x2e, 0x6d, 0x6f, 0x63, + 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x63, 0x6f, + 0x76, 0x65, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x44, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, + 0x74, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x52, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4c, 0x12, 0x4a, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x12, 0xa2, 0x01, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x33, + 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x7d, 0x2f, 0x67, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x63, + 0x6f, 0x76, 0x65, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x12, 0xe8, 0x01, 0x0a, 0x10, 0x41, 0x63, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x53, 0x73, 0x72, 0x73, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x12, 0x3e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, - 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x4f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, - 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, - 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2c, 0x12, 0x2a, - 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, - 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x9e, 0x01, 0x0a, 0x06, 0x43, - 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x12, 0x35, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, - 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, - 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, - 0x6d, 0x70, 0x74, 0x79, 0x22, 0x45, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3f, 0x22, 0x3d, 0x2f, 0x73, - 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x1a, 0x7c, 0xca, 0x41, 0x17, - 0x73, 0x71, 0x6c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, - 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, - 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, - 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, - 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, - 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x73, 0x71, 0x6c, 0x73, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x32, 0xfe, 0x06, 0x0a, 0x12, 0x53, 0x71, - 0x6c, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x12, 0xbd, 0x01, 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x33, 0x2e, 0x6d, 0x6f, + 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x41, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x53, 0x73, + 0x72, 0x73, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, + 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, + 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x41, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x53, 0x73, + 0x72, 0x73, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x53, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4d, 0x22, 0x45, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, + 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x61, 0x63, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x53, 0x73, 0x72, 0x73, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x3a, 0x04, + 0x62, 0x6f, 0x64, 0x79, 0x12, 0xe2, 0x01, 0x0a, 0x10, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, + 0x53, 0x73, 0x72, 0x73, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x12, 0x3e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x73, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x53, 0x73, 0x72, 0x73, 0x4c, 0x65, 0x61, + 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x73, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x53, 0x73, 0x72, 0x73, 0x4c, 0x65, 0x61, + 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4d, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x47, 0x22, 0x45, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, + 0x53, 0x73, 0x72, 0x73, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x1a, 0x7c, 0xca, 0x41, 0x17, 0x73, 0x71, + 0x6c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, + 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, + 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, + 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x73, 0x71, 0x6c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x32, 0xfc, 0x04, 0x0a, 0x14, 0x53, 0x71, 0x6c, 0x4f, + 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x12, 0x9f, 0x01, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x32, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, + 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, + 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x22, 0x3e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x38, 0x12, 0x36, 0x2f, 0x73, 0x71, 0x6c, + 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x7d, 0x12, 0xa2, 0x01, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x53, 0x73, 0x6c, 0x43, 0x65, - 0x72, 0x74, 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x31, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x58, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x52, 0x2a, 0x50, - 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, - 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x2f, 0x7b, 0x73, - 0x68, 0x61, 0x31, 0x5f, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x7d, - 0x12, 0xb5, 0x01, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x30, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x32, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2c, 0x12, 0x2a, 0x2f, 0x73, 0x71, + 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6f, 0x70, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x9e, 0x01, 0x0a, 0x06, 0x43, 0x61, 0x6e, 0x63, + 0x65, 0x6c, 0x12, 0x35, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, + 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x61, 0x6e, 0x63, + 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, + 0x79, 0x22, 0x45, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3f, 0x22, 0x3d, 0x2f, 0x73, 0x71, 0x6c, 0x2f, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, + 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x7d, 0x2f, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x1a, 0x7c, 0xca, 0x41, 0x17, 0x73, 0x71, 0x6c, + 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, + 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, + 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x73, 0x71, 0x6c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x32, 0xfe, 0x06, 0x0a, 0x12, 0x53, 0x71, 0x6c, 0x53, 0x73, + 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xbd, 0x01, + 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, - 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x6d, 0x6f, 0x63, - 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x22, 0x58, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x52, 0x12, 0x50, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x73, 0x73, 0x6c, - 0x43, 0x65, 0x72, 0x74, 0x73, 0x2f, 0x7b, 0x73, 0x68, 0x61, 0x31, 0x5f, 0x66, 0x69, 0x6e, 0x67, - 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x7d, 0x12, 0xbd, 0x01, 0x0a, 0x06, 0x49, 0x6e, 0x73, - 0x65, 0x72, 0x74, 0x12, 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, - 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, - 0x53, 0x71, 0x6c, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x72, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, - 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x49, 0x6e, 0x73, - 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4b, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x45, 0x22, 0x3d, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, + 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, + 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x22, 0x58, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x52, 0x2a, 0x50, 0x2f, 0x73, 0x71, + 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x7d, 0x2f, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x2f, 0x7b, 0x73, 0x68, 0x61, 0x31, + 0x5f, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x7d, 0x12, 0xb5, 0x01, + 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x30, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x47, 0x65, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, + 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x22, 0x58, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x52, 0x12, 0x50, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, - 0x74, 0x73, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xb1, 0x01, 0x0a, 0x04, 0x4c, 0x69, 0x73, - 0x74, 0x12, 0x31, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, - 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, - 0x6c, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, - 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, - 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x45, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3f, 0x12, 0x3d, 0x2f, - 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, - 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, - 0x63, 0x65, 0x7d, 0x2f, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x1a, 0x7c, 0xca, 0x41, - 0x17, 0x73, 0x71, 0x6c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x73, - 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, - 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, - 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, - 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x73, 0x71, 0x6c, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x42, 0x67, 0x0a, 0x1d, 0x63, 0x6f, - 0x6d, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, - 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x42, 0x14, 0x43, 0x6c, 0x6f, - 0x75, 0x64, 0x53, 0x71, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, - 0x6f, 0x50, 0x01, 0x5a, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x61, 0x70, 0x69, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x73, 0x71, 0x6c, 0x70, 0x62, 0x3b, 0x73, 0x71, - 0x6c, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x74, 0x73, 0x2f, 0x7b, 0x73, 0x68, 0x61, 0x31, 0x5f, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, + 0x72, 0x69, 0x6e, 0x74, 0x7d, 0x12, 0xbd, 0x01, 0x0a, 0x06, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, + 0x12, 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, + 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x45, + 0x22, 0x3d, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, + 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x2f, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x3a, + 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0xb1, 0x01, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x31, + 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, + 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x53, 0x73, + 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x2f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, + 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x45, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3f, 0x12, 0x3d, 0x2f, 0x73, 0x71, 0x6c, + 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, + 0x2f, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x1a, 0x7c, 0xca, 0x41, 0x17, 0x73, 0x71, + 0x6c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, + 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, + 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, + 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x73, 0x71, 0x6c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x42, 0x67, 0x0a, 0x1d, 0x63, 0x6f, 0x6d, 0x2e, 0x6d, + 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x42, 0x14, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x53, + 0x71, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, + 0x5a, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, + 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x73, 0x71, 0x6c, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x34, 0x2f, 0x73, 0x71, 0x6c, 0x70, 0x62, 0x3b, 0x73, 0x71, 0x6c, 0x70, 0x62, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -4752,232 +5159,246 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_rawDescGZIP() []byte { return file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_rawDescData } -var file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_enumTypes = make([]protoimpl.EnumInfo, 3) -var file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes = make([]protoimpl.MessageInfo, 52) +var file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_enumTypes = make([]protoimpl.EnumInfo, 4) +var file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes = make([]protoimpl.MessageInfo, 56) var file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_goTypes = []interface{}{ (ExternalSyncParallelLevel)(0), // 0: mockgcp.cloud.sql.v1beta4.ExternalSyncParallelLevel (BackupReencryptionConfig_BackupType)(0), // 1: mockgcp.cloud.sql.v1beta4.BackupReencryptionConfig.BackupType (SqlInstancesVerifyExternalSyncSettingsRequest_ExternalSyncMode)(0), // 2: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest.ExternalSyncMode - (*SqlBackupRunsDeleteRequest)(nil), // 3: mockgcp.cloud.sql.v1beta4.SqlBackupRunsDeleteRequest - (*SqlBackupRunsGetRequest)(nil), // 4: mockgcp.cloud.sql.v1beta4.SqlBackupRunsGetRequest - (*SqlBackupRunsInsertRequest)(nil), // 5: mockgcp.cloud.sql.v1beta4.SqlBackupRunsInsertRequest - (*SqlBackupRunsListRequest)(nil), // 6: mockgcp.cloud.sql.v1beta4.SqlBackupRunsListRequest - (*SqlDatabasesDeleteRequest)(nil), // 7: mockgcp.cloud.sql.v1beta4.SqlDatabasesDeleteRequest - (*SqlDatabasesGetRequest)(nil), // 8: mockgcp.cloud.sql.v1beta4.SqlDatabasesGetRequest - (*SqlDatabasesInsertRequest)(nil), // 9: mockgcp.cloud.sql.v1beta4.SqlDatabasesInsertRequest - (*SqlDatabasesListRequest)(nil), // 10: mockgcp.cloud.sql.v1beta4.SqlDatabasesListRequest - (*SqlDatabasesUpdateRequest)(nil), // 11: mockgcp.cloud.sql.v1beta4.SqlDatabasesUpdateRequest - (*SqlFlagsListRequest)(nil), // 12: mockgcp.cloud.sql.v1beta4.SqlFlagsListRequest - (*SqlInstancesAddServerCaRequest)(nil), // 13: mockgcp.cloud.sql.v1beta4.SqlInstancesAddServerCaRequest - (*SqlInstancesCloneRequest)(nil), // 14: mockgcp.cloud.sql.v1beta4.SqlInstancesCloneRequest - (*SqlInstancesDeleteRequest)(nil), // 15: mockgcp.cloud.sql.v1beta4.SqlInstancesDeleteRequest - (*SqlInstancesDemoteMasterRequest)(nil), // 16: mockgcp.cloud.sql.v1beta4.SqlInstancesDemoteMasterRequest - (*SqlInstancesDemoteRequest)(nil), // 17: mockgcp.cloud.sql.v1beta4.SqlInstancesDemoteRequest - (*SqlInstancesExportRequest)(nil), // 18: mockgcp.cloud.sql.v1beta4.SqlInstancesExportRequest - (*SqlInstancesFailoverRequest)(nil), // 19: mockgcp.cloud.sql.v1beta4.SqlInstancesFailoverRequest - (*SqlInstancesGetRequest)(nil), // 20: mockgcp.cloud.sql.v1beta4.SqlInstancesGetRequest - (*SqlInstancesImportRequest)(nil), // 21: mockgcp.cloud.sql.v1beta4.SqlInstancesImportRequest - (*SqlInstancesInsertRequest)(nil), // 22: mockgcp.cloud.sql.v1beta4.SqlInstancesInsertRequest - (*SqlInstancesListRequest)(nil), // 23: mockgcp.cloud.sql.v1beta4.SqlInstancesListRequest - (*SqlInstancesListServerCasRequest)(nil), // 24: mockgcp.cloud.sql.v1beta4.SqlInstancesListServerCasRequest - (*SqlInstancesPatchRequest)(nil), // 25: mockgcp.cloud.sql.v1beta4.SqlInstancesPatchRequest - (*SqlInstancesPromoteReplicaRequest)(nil), // 26: mockgcp.cloud.sql.v1beta4.SqlInstancesPromoteReplicaRequest - (*SqlInstancesSwitchoverRequest)(nil), // 27: mockgcp.cloud.sql.v1beta4.SqlInstancesSwitchoverRequest - (*SqlInstancesResetSslConfigRequest)(nil), // 28: mockgcp.cloud.sql.v1beta4.SqlInstancesResetSslConfigRequest - (*SqlInstancesRestartRequest)(nil), // 29: mockgcp.cloud.sql.v1beta4.SqlInstancesRestartRequest - (*SqlInstancesRestoreBackupRequest)(nil), // 30: mockgcp.cloud.sql.v1beta4.SqlInstancesRestoreBackupRequest - (*SqlInstancesRotateServerCaRequest)(nil), // 31: mockgcp.cloud.sql.v1beta4.SqlInstancesRotateServerCaRequest - (*SqlInstancesStartReplicaRequest)(nil), // 32: mockgcp.cloud.sql.v1beta4.SqlInstancesStartReplicaRequest - (*SqlInstancesStopReplicaRequest)(nil), // 33: mockgcp.cloud.sql.v1beta4.SqlInstancesStopReplicaRequest - (*SqlInstancesTruncateLogRequest)(nil), // 34: mockgcp.cloud.sql.v1beta4.SqlInstancesTruncateLogRequest - (*SqlInstancesUpdateRequest)(nil), // 35: mockgcp.cloud.sql.v1beta4.SqlInstancesUpdateRequest - (*SqlInstancesReencryptRequest)(nil), // 36: mockgcp.cloud.sql.v1beta4.SqlInstancesReencryptRequest - (*InstancesReencryptRequest)(nil), // 37: mockgcp.cloud.sql.v1beta4.InstancesReencryptRequest - (*BackupReencryptionConfig)(nil), // 38: mockgcp.cloud.sql.v1beta4.BackupReencryptionConfig - (*SqlInstancesRescheduleMaintenanceRequest)(nil), // 39: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequest - (*SqlInstancesPerformDiskShrinkRequest)(nil), // 40: mockgcp.cloud.sql.v1beta4.SqlInstancesPerformDiskShrinkRequest - (*SqlInstancesVerifyExternalSyncSettingsRequest)(nil), // 41: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest - (*SqlInstancesStartExternalSyncRequest)(nil), // 42: mockgcp.cloud.sql.v1beta4.SqlInstancesStartExternalSyncRequest - (*SqlInstancesResetReplicaSizeRequest)(nil), // 43: mockgcp.cloud.sql.v1beta4.SqlInstancesResetReplicaSizeRequest - (*SqlOperationsGetRequest)(nil), // 44: mockgcp.cloud.sql.v1beta4.SqlOperationsGetRequest - (*SqlOperationsListRequest)(nil), // 45: mockgcp.cloud.sql.v1beta4.SqlOperationsListRequest - (*SqlOperationsCancelRequest)(nil), // 46: mockgcp.cloud.sql.v1beta4.SqlOperationsCancelRequest - (*SqlInstancesCreateEphemeralCertRequest)(nil), // 47: mockgcp.cloud.sql.v1beta4.SqlInstancesCreateEphemeralCertRequest - (*SqlSslCertsDeleteRequest)(nil), // 48: mockgcp.cloud.sql.v1beta4.SqlSslCertsDeleteRequest - (*SqlSslCertsGetRequest)(nil), // 49: mockgcp.cloud.sql.v1beta4.SqlSslCertsGetRequest - (*SqlSslCertsInsertRequest)(nil), // 50: mockgcp.cloud.sql.v1beta4.SqlSslCertsInsertRequest - (*SqlSslCertsListRequest)(nil), // 51: mockgcp.cloud.sql.v1beta4.SqlSslCertsListRequest - (*SqlInstancesGetDiskShrinkConfigRequest)(nil), // 52: mockgcp.cloud.sql.v1beta4.SqlInstancesGetDiskShrinkConfigRequest - (*SqlInstancesGetLatestRecoveryTimeRequest)(nil), // 53: mockgcp.cloud.sql.v1beta4.SqlInstancesGetLatestRecoveryTimeRequest - (*SqlInstancesGetLatestRecoveryTimeResponse)(nil), // 54: mockgcp.cloud.sql.v1beta4.SqlInstancesGetLatestRecoveryTimeResponse - (*BackupRun)(nil), // 55: mockgcp.cloud.sql.v1beta4.BackupRun - (*Database)(nil), // 56: mockgcp.cloud.sql.v1beta4.Database - (*InstancesCloneRequest)(nil), // 57: mockgcp.cloud.sql.v1beta4.InstancesCloneRequest - (*InstancesDemoteMasterRequest)(nil), // 58: mockgcp.cloud.sql.v1beta4.InstancesDemoteMasterRequest - (*InstancesDemoteRequest)(nil), // 59: mockgcp.cloud.sql.v1beta4.InstancesDemoteRequest - (*InstancesExportRequest)(nil), // 60: mockgcp.cloud.sql.v1beta4.InstancesExportRequest - (*InstancesFailoverRequest)(nil), // 61: mockgcp.cloud.sql.v1beta4.InstancesFailoverRequest - (*InstancesImportRequest)(nil), // 62: mockgcp.cloud.sql.v1beta4.InstancesImportRequest - (*DatabaseInstance)(nil), // 63: mockgcp.cloud.sql.v1beta4.DatabaseInstance - (*duration.Duration)(nil), // 64: google.protobuf.Duration - (*InstancesRestoreBackupRequest)(nil), // 65: mockgcp.cloud.sql.v1beta4.InstancesRestoreBackupRequest - (*InstancesRotateServerCaRequest)(nil), // 66: mockgcp.cloud.sql.v1beta4.InstancesRotateServerCaRequest - (*InstancesTruncateLogRequest)(nil), // 67: mockgcp.cloud.sql.v1beta4.InstancesTruncateLogRequest - (*SqlInstancesRescheduleMaintenanceRequestBody)(nil), // 68: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody - (*PerformDiskShrinkContext)(nil), // 69: mockgcp.cloud.sql.v1beta4.PerformDiskShrinkContext - (*MySqlSyncConfig)(nil), // 70: mockgcp.cloud.sql.v1beta4.MySqlSyncConfig - (*SslCertsCreateEphemeralRequest)(nil), // 71: mockgcp.cloud.sql.v1beta4.SslCertsCreateEphemeralRequest - (*SslCertsInsertRequest)(nil), // 72: mockgcp.cloud.sql.v1beta4.SslCertsInsertRequest - (*timestamp.Timestamp)(nil), // 73: google.protobuf.Timestamp - (*Operation)(nil), // 74: mockgcp.cloud.sql.v1beta4.Operation - (*BackupRunsListResponse)(nil), // 75: mockgcp.cloud.sql.v1beta4.BackupRunsListResponse - (*DatabasesListResponse)(nil), // 76: mockgcp.cloud.sql.v1beta4.DatabasesListResponse - (*FlagsListResponse)(nil), // 77: mockgcp.cloud.sql.v1beta4.FlagsListResponse - (*InstancesListResponse)(nil), // 78: mockgcp.cloud.sql.v1beta4.InstancesListResponse - (*InstancesListServerCasResponse)(nil), // 79: mockgcp.cloud.sql.v1beta4.InstancesListServerCasResponse - (*SslCert)(nil), // 80: mockgcp.cloud.sql.v1beta4.SslCert - (*SqlInstancesVerifyExternalSyncSettingsResponse)(nil), // 81: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsResponse - (*SqlInstancesGetDiskShrinkConfigResponse)(nil), // 82: mockgcp.cloud.sql.v1beta4.SqlInstancesGetDiskShrinkConfigResponse - (*OperationsListResponse)(nil), // 83: mockgcp.cloud.sql.v1beta4.OperationsListResponse - (*empty.Empty)(nil), // 84: google.protobuf.Empty - (*SslCertsInsertResponse)(nil), // 85: mockgcp.cloud.sql.v1beta4.SslCertsInsertResponse - (*SslCertsListResponse)(nil), // 86: mockgcp.cloud.sql.v1beta4.SslCertsListResponse + (SqlInstancesVerifyExternalSyncSettingsRequest_MigrationType)(0), // 3: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest.MigrationType + (*SqlBackupRunsDeleteRequest)(nil), // 4: mockgcp.cloud.sql.v1beta4.SqlBackupRunsDeleteRequest + (*SqlBackupRunsGetRequest)(nil), // 5: mockgcp.cloud.sql.v1beta4.SqlBackupRunsGetRequest + (*SqlBackupRunsInsertRequest)(nil), // 6: mockgcp.cloud.sql.v1beta4.SqlBackupRunsInsertRequest + (*SqlBackupRunsListRequest)(nil), // 7: mockgcp.cloud.sql.v1beta4.SqlBackupRunsListRequest + (*SqlDatabasesDeleteRequest)(nil), // 8: mockgcp.cloud.sql.v1beta4.SqlDatabasesDeleteRequest + (*SqlDatabasesGetRequest)(nil), // 9: mockgcp.cloud.sql.v1beta4.SqlDatabasesGetRequest + (*SqlDatabasesInsertRequest)(nil), // 10: mockgcp.cloud.sql.v1beta4.SqlDatabasesInsertRequest + (*SqlDatabasesListRequest)(nil), // 11: mockgcp.cloud.sql.v1beta4.SqlDatabasesListRequest + (*SqlDatabasesUpdateRequest)(nil), // 12: mockgcp.cloud.sql.v1beta4.SqlDatabasesUpdateRequest + (*SqlFlagsListRequest)(nil), // 13: mockgcp.cloud.sql.v1beta4.SqlFlagsListRequest + (*SqlInstancesAddServerCaRequest)(nil), // 14: mockgcp.cloud.sql.v1beta4.SqlInstancesAddServerCaRequest + (*SqlInstancesCloneRequest)(nil), // 15: mockgcp.cloud.sql.v1beta4.SqlInstancesCloneRequest + (*SqlInstancesDeleteRequest)(nil), // 16: mockgcp.cloud.sql.v1beta4.SqlInstancesDeleteRequest + (*SqlInstancesDemoteMasterRequest)(nil), // 17: mockgcp.cloud.sql.v1beta4.SqlInstancesDemoteMasterRequest + (*SqlInstancesDemoteRequest)(nil), // 18: mockgcp.cloud.sql.v1beta4.SqlInstancesDemoteRequest + (*SqlInstancesExportRequest)(nil), // 19: mockgcp.cloud.sql.v1beta4.SqlInstancesExportRequest + (*SqlInstancesFailoverRequest)(nil), // 20: mockgcp.cloud.sql.v1beta4.SqlInstancesFailoverRequest + (*SqlInstancesGetRequest)(nil), // 21: mockgcp.cloud.sql.v1beta4.SqlInstancesGetRequest + (*SqlInstancesImportRequest)(nil), // 22: mockgcp.cloud.sql.v1beta4.SqlInstancesImportRequest + (*SqlInstancesInsertRequest)(nil), // 23: mockgcp.cloud.sql.v1beta4.SqlInstancesInsertRequest + (*SqlInstancesListRequest)(nil), // 24: mockgcp.cloud.sql.v1beta4.SqlInstancesListRequest + (*SqlInstancesListServerCasRequest)(nil), // 25: mockgcp.cloud.sql.v1beta4.SqlInstancesListServerCasRequest + (*SqlInstancesPatchRequest)(nil), // 26: mockgcp.cloud.sql.v1beta4.SqlInstancesPatchRequest + (*SqlInstancesPromoteReplicaRequest)(nil), // 27: mockgcp.cloud.sql.v1beta4.SqlInstancesPromoteReplicaRequest + (*SqlInstancesSwitchoverRequest)(nil), // 28: mockgcp.cloud.sql.v1beta4.SqlInstancesSwitchoverRequest + (*SqlInstancesResetSslConfigRequest)(nil), // 29: mockgcp.cloud.sql.v1beta4.SqlInstancesResetSslConfigRequest + (*SqlInstancesRestartRequest)(nil), // 30: mockgcp.cloud.sql.v1beta4.SqlInstancesRestartRequest + (*SqlInstancesRestoreBackupRequest)(nil), // 31: mockgcp.cloud.sql.v1beta4.SqlInstancesRestoreBackupRequest + (*SqlInstancesRotateServerCaRequest)(nil), // 32: mockgcp.cloud.sql.v1beta4.SqlInstancesRotateServerCaRequest + (*SqlInstancesStartReplicaRequest)(nil), // 33: mockgcp.cloud.sql.v1beta4.SqlInstancesStartReplicaRequest + (*SqlInstancesStopReplicaRequest)(nil), // 34: mockgcp.cloud.sql.v1beta4.SqlInstancesStopReplicaRequest + (*SqlInstancesTruncateLogRequest)(nil), // 35: mockgcp.cloud.sql.v1beta4.SqlInstancesTruncateLogRequest + (*SqlInstancesUpdateRequest)(nil), // 36: mockgcp.cloud.sql.v1beta4.SqlInstancesUpdateRequest + (*SqlInstancesReencryptRequest)(nil), // 37: mockgcp.cloud.sql.v1beta4.SqlInstancesReencryptRequest + (*InstancesReencryptRequest)(nil), // 38: mockgcp.cloud.sql.v1beta4.InstancesReencryptRequest + (*BackupReencryptionConfig)(nil), // 39: mockgcp.cloud.sql.v1beta4.BackupReencryptionConfig + (*SqlInstancesRescheduleMaintenanceRequest)(nil), // 40: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequest + (*SqlInstancesPerformDiskShrinkRequest)(nil), // 41: mockgcp.cloud.sql.v1beta4.SqlInstancesPerformDiskShrinkRequest + (*SqlInstancesVerifyExternalSyncSettingsRequest)(nil), // 42: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest + (*SqlInstancesStartExternalSyncRequest)(nil), // 43: mockgcp.cloud.sql.v1beta4.SqlInstancesStartExternalSyncRequest + (*SqlInstancesResetReplicaSizeRequest)(nil), // 44: mockgcp.cloud.sql.v1beta4.SqlInstancesResetReplicaSizeRequest + (*SqlOperationsGetRequest)(nil), // 45: mockgcp.cloud.sql.v1beta4.SqlOperationsGetRequest + (*SqlOperationsListRequest)(nil), // 46: mockgcp.cloud.sql.v1beta4.SqlOperationsListRequest + (*SqlOperationsCancelRequest)(nil), // 47: mockgcp.cloud.sql.v1beta4.SqlOperationsCancelRequest + (*SqlInstancesCreateEphemeralCertRequest)(nil), // 48: mockgcp.cloud.sql.v1beta4.SqlInstancesCreateEphemeralCertRequest + (*SqlSslCertsDeleteRequest)(nil), // 49: mockgcp.cloud.sql.v1beta4.SqlSslCertsDeleteRequest + (*SqlSslCertsGetRequest)(nil), // 50: mockgcp.cloud.sql.v1beta4.SqlSslCertsGetRequest + (*SqlSslCertsInsertRequest)(nil), // 51: mockgcp.cloud.sql.v1beta4.SqlSslCertsInsertRequest + (*SqlSslCertsListRequest)(nil), // 52: mockgcp.cloud.sql.v1beta4.SqlSslCertsListRequest + (*SqlInstancesGetDiskShrinkConfigRequest)(nil), // 53: mockgcp.cloud.sql.v1beta4.SqlInstancesGetDiskShrinkConfigRequest + (*SqlInstancesGetLatestRecoveryTimeRequest)(nil), // 54: mockgcp.cloud.sql.v1beta4.SqlInstancesGetLatestRecoveryTimeRequest + (*SqlInstancesGetLatestRecoveryTimeResponse)(nil), // 55: mockgcp.cloud.sql.v1beta4.SqlInstancesGetLatestRecoveryTimeResponse + (*SqlInstancesReleaseSsrsLeaseRequest)(nil), // 56: mockgcp.cloud.sql.v1beta4.SqlInstancesReleaseSsrsLeaseRequest + (*SqlInstancesReleaseSsrsLeaseResponse)(nil), // 57: mockgcp.cloud.sql.v1beta4.SqlInstancesReleaseSsrsLeaseResponse + (*SqlInstancesAcquireSsrsLeaseRequest)(nil), // 58: mockgcp.cloud.sql.v1beta4.SqlInstancesAcquireSsrsLeaseRequest + (*SqlInstancesAcquireSsrsLeaseResponse)(nil), // 59: mockgcp.cloud.sql.v1beta4.SqlInstancesAcquireSsrsLeaseResponse + (*BackupRun)(nil), // 60: mockgcp.cloud.sql.v1beta4.BackupRun + (*Database)(nil), // 61: mockgcp.cloud.sql.v1beta4.Database + (*InstancesCloneRequest)(nil), // 62: mockgcp.cloud.sql.v1beta4.InstancesCloneRequest + (*InstancesDemoteMasterRequest)(nil), // 63: mockgcp.cloud.sql.v1beta4.InstancesDemoteMasterRequest + (*InstancesDemoteRequest)(nil), // 64: mockgcp.cloud.sql.v1beta4.InstancesDemoteRequest + (*InstancesExportRequest)(nil), // 65: mockgcp.cloud.sql.v1beta4.InstancesExportRequest + (*InstancesFailoverRequest)(nil), // 66: mockgcp.cloud.sql.v1beta4.InstancesFailoverRequest + (*InstancesImportRequest)(nil), // 67: mockgcp.cloud.sql.v1beta4.InstancesImportRequest + (*DatabaseInstance)(nil), // 68: mockgcp.cloud.sql.v1beta4.DatabaseInstance + (*duration.Duration)(nil), // 69: google.protobuf.Duration + (*InstancesRestoreBackupRequest)(nil), // 70: mockgcp.cloud.sql.v1beta4.InstancesRestoreBackupRequest + (*InstancesRotateServerCaRequest)(nil), // 71: mockgcp.cloud.sql.v1beta4.InstancesRotateServerCaRequest + (*InstancesTruncateLogRequest)(nil), // 72: mockgcp.cloud.sql.v1beta4.InstancesTruncateLogRequest + (*SqlInstancesRescheduleMaintenanceRequestBody)(nil), // 73: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody + (*PerformDiskShrinkContext)(nil), // 74: mockgcp.cloud.sql.v1beta4.PerformDiskShrinkContext + (*MySqlSyncConfig)(nil), // 75: mockgcp.cloud.sql.v1beta4.MySqlSyncConfig + (*SslCertsCreateEphemeralRequest)(nil), // 76: mockgcp.cloud.sql.v1beta4.SslCertsCreateEphemeralRequest + (*SslCertsInsertRequest)(nil), // 77: mockgcp.cloud.sql.v1beta4.SslCertsInsertRequest + (*timestamp.Timestamp)(nil), // 78: google.protobuf.Timestamp + (*InstancesAcquireSsrsLeaseRequest)(nil), // 79: mockgcp.cloud.sql.v1beta4.InstancesAcquireSsrsLeaseRequest + (*Operation)(nil), // 80: mockgcp.cloud.sql.v1beta4.Operation + (*BackupRunsListResponse)(nil), // 81: mockgcp.cloud.sql.v1beta4.BackupRunsListResponse + (*DatabasesListResponse)(nil), // 82: mockgcp.cloud.sql.v1beta4.DatabasesListResponse + (*FlagsListResponse)(nil), // 83: mockgcp.cloud.sql.v1beta4.FlagsListResponse + (*InstancesListResponse)(nil), // 84: mockgcp.cloud.sql.v1beta4.InstancesListResponse + (*InstancesListServerCasResponse)(nil), // 85: mockgcp.cloud.sql.v1beta4.InstancesListServerCasResponse + (*SslCert)(nil), // 86: mockgcp.cloud.sql.v1beta4.SslCert + (*SqlInstancesVerifyExternalSyncSettingsResponse)(nil), // 87: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsResponse + (*SqlInstancesGetDiskShrinkConfigResponse)(nil), // 88: mockgcp.cloud.sql.v1beta4.SqlInstancesGetDiskShrinkConfigResponse + (*OperationsListResponse)(nil), // 89: mockgcp.cloud.sql.v1beta4.OperationsListResponse + (*empty.Empty)(nil), // 90: google.protobuf.Empty + (*SslCertsInsertResponse)(nil), // 91: mockgcp.cloud.sql.v1beta4.SslCertsInsertResponse + (*SslCertsListResponse)(nil), // 92: mockgcp.cloud.sql.v1beta4.SslCertsListResponse } var file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_depIdxs = []int32{ - 55, // 0: mockgcp.cloud.sql.v1beta4.SqlBackupRunsInsertRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.BackupRun - 56, // 1: mockgcp.cloud.sql.v1beta4.SqlDatabasesInsertRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.Database - 56, // 2: mockgcp.cloud.sql.v1beta4.SqlDatabasesUpdateRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.Database - 57, // 3: mockgcp.cloud.sql.v1beta4.SqlInstancesCloneRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesCloneRequest - 58, // 4: mockgcp.cloud.sql.v1beta4.SqlInstancesDemoteMasterRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesDemoteMasterRequest - 59, // 5: mockgcp.cloud.sql.v1beta4.SqlInstancesDemoteRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesDemoteRequest - 60, // 6: mockgcp.cloud.sql.v1beta4.SqlInstancesExportRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesExportRequest - 61, // 7: mockgcp.cloud.sql.v1beta4.SqlInstancesFailoverRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesFailoverRequest - 62, // 8: mockgcp.cloud.sql.v1beta4.SqlInstancesImportRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesImportRequest - 63, // 9: mockgcp.cloud.sql.v1beta4.SqlInstancesInsertRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance - 63, // 10: mockgcp.cloud.sql.v1beta4.SqlInstancesPatchRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance - 64, // 11: mockgcp.cloud.sql.v1beta4.SqlInstancesSwitchoverRequest.db_timeout:type_name -> google.protobuf.Duration - 65, // 12: mockgcp.cloud.sql.v1beta4.SqlInstancesRestoreBackupRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesRestoreBackupRequest - 66, // 13: mockgcp.cloud.sql.v1beta4.SqlInstancesRotateServerCaRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesRotateServerCaRequest - 67, // 14: mockgcp.cloud.sql.v1beta4.SqlInstancesTruncateLogRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesTruncateLogRequest - 63, // 15: mockgcp.cloud.sql.v1beta4.SqlInstancesUpdateRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance - 37, // 16: mockgcp.cloud.sql.v1beta4.SqlInstancesReencryptRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesReencryptRequest - 38, // 17: mockgcp.cloud.sql.v1beta4.InstancesReencryptRequest.backup_reencryption_config:type_name -> mockgcp.cloud.sql.v1beta4.BackupReencryptionConfig + 60, // 0: mockgcp.cloud.sql.v1beta4.SqlBackupRunsInsertRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.BackupRun + 61, // 1: mockgcp.cloud.sql.v1beta4.SqlDatabasesInsertRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.Database + 61, // 2: mockgcp.cloud.sql.v1beta4.SqlDatabasesUpdateRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.Database + 62, // 3: mockgcp.cloud.sql.v1beta4.SqlInstancesCloneRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesCloneRequest + 63, // 4: mockgcp.cloud.sql.v1beta4.SqlInstancesDemoteMasterRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesDemoteMasterRequest + 64, // 5: mockgcp.cloud.sql.v1beta4.SqlInstancesDemoteRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesDemoteRequest + 65, // 6: mockgcp.cloud.sql.v1beta4.SqlInstancesExportRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesExportRequest + 66, // 7: mockgcp.cloud.sql.v1beta4.SqlInstancesFailoverRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesFailoverRequest + 67, // 8: mockgcp.cloud.sql.v1beta4.SqlInstancesImportRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesImportRequest + 68, // 9: mockgcp.cloud.sql.v1beta4.SqlInstancesInsertRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance + 68, // 10: mockgcp.cloud.sql.v1beta4.SqlInstancesPatchRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance + 69, // 11: mockgcp.cloud.sql.v1beta4.SqlInstancesSwitchoverRequest.db_timeout:type_name -> google.protobuf.Duration + 70, // 12: mockgcp.cloud.sql.v1beta4.SqlInstancesRestoreBackupRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesRestoreBackupRequest + 71, // 13: mockgcp.cloud.sql.v1beta4.SqlInstancesRotateServerCaRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesRotateServerCaRequest + 72, // 14: mockgcp.cloud.sql.v1beta4.SqlInstancesTruncateLogRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesTruncateLogRequest + 68, // 15: mockgcp.cloud.sql.v1beta4.SqlInstancesUpdateRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance + 38, // 16: mockgcp.cloud.sql.v1beta4.SqlInstancesReencryptRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesReencryptRequest + 39, // 17: mockgcp.cloud.sql.v1beta4.InstancesReencryptRequest.backup_reencryption_config:type_name -> mockgcp.cloud.sql.v1beta4.BackupReencryptionConfig 1, // 18: mockgcp.cloud.sql.v1beta4.BackupReencryptionConfig.backup_type:type_name -> mockgcp.cloud.sql.v1beta4.BackupReencryptionConfig.BackupType - 68, // 19: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody - 69, // 20: mockgcp.cloud.sql.v1beta4.SqlInstancesPerformDiskShrinkRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.PerformDiskShrinkContext + 73, // 19: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody + 74, // 20: mockgcp.cloud.sql.v1beta4.SqlInstancesPerformDiskShrinkRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.PerformDiskShrinkContext 2, // 21: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest.sync_mode:type_name -> mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest.ExternalSyncMode - 70, // 22: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest.mysql_sync_config:type_name -> mockgcp.cloud.sql.v1beta4.MySqlSyncConfig - 2, // 23: mockgcp.cloud.sql.v1beta4.SqlInstancesStartExternalSyncRequest.sync_mode:type_name -> mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest.ExternalSyncMode - 70, // 24: mockgcp.cloud.sql.v1beta4.SqlInstancesStartExternalSyncRequest.mysql_sync_config:type_name -> mockgcp.cloud.sql.v1beta4.MySqlSyncConfig - 0, // 25: mockgcp.cloud.sql.v1beta4.SqlInstancesStartExternalSyncRequest.sync_parallel_level:type_name -> mockgcp.cloud.sql.v1beta4.ExternalSyncParallelLevel - 71, // 26: mockgcp.cloud.sql.v1beta4.SqlInstancesCreateEphemeralCertRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.SslCertsCreateEphemeralRequest - 72, // 27: mockgcp.cloud.sql.v1beta4.SqlSslCertsInsertRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.SslCertsInsertRequest - 73, // 28: mockgcp.cloud.sql.v1beta4.SqlInstancesGetLatestRecoveryTimeResponse.latest_recovery_time:type_name -> google.protobuf.Timestamp - 3, // 29: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.Delete:input_type -> mockgcp.cloud.sql.v1beta4.SqlBackupRunsDeleteRequest - 4, // 30: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.Get:input_type -> mockgcp.cloud.sql.v1beta4.SqlBackupRunsGetRequest - 5, // 31: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.Insert:input_type -> mockgcp.cloud.sql.v1beta4.SqlBackupRunsInsertRequest - 6, // 32: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.List:input_type -> mockgcp.cloud.sql.v1beta4.SqlBackupRunsListRequest - 7, // 33: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Delete:input_type -> mockgcp.cloud.sql.v1beta4.SqlDatabasesDeleteRequest - 8, // 34: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Get:input_type -> mockgcp.cloud.sql.v1beta4.SqlDatabasesGetRequest - 9, // 35: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Insert:input_type -> mockgcp.cloud.sql.v1beta4.SqlDatabasesInsertRequest - 10, // 36: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.List:input_type -> mockgcp.cloud.sql.v1beta4.SqlDatabasesListRequest - 11, // 37: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Patch:input_type -> mockgcp.cloud.sql.v1beta4.SqlDatabasesUpdateRequest - 11, // 38: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Update:input_type -> mockgcp.cloud.sql.v1beta4.SqlDatabasesUpdateRequest - 12, // 39: mockgcp.cloud.sql.v1beta4.SqlFlagsService.List:input_type -> mockgcp.cloud.sql.v1beta4.SqlFlagsListRequest - 13, // 40: mockgcp.cloud.sql.v1beta4.SqlInstancesService.AddServerCa:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesAddServerCaRequest - 14, // 41: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Clone:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesCloneRequest - 15, // 42: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Delete:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesDeleteRequest - 16, // 43: mockgcp.cloud.sql.v1beta4.SqlInstancesService.DemoteMaster:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesDemoteMasterRequest - 17, // 44: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Demote:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesDemoteRequest - 18, // 45: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Export:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesExportRequest - 19, // 46: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Failover:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesFailoverRequest - 36, // 47: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Reencrypt:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesReencryptRequest - 20, // 48: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Get:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesGetRequest - 21, // 49: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Import:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesImportRequest - 22, // 50: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Insert:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesInsertRequest - 23, // 51: mockgcp.cloud.sql.v1beta4.SqlInstancesService.List:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesListRequest - 24, // 52: mockgcp.cloud.sql.v1beta4.SqlInstancesService.ListServerCas:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesListServerCasRequest - 25, // 53: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Patch:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesPatchRequest - 26, // 54: mockgcp.cloud.sql.v1beta4.SqlInstancesService.PromoteReplica:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesPromoteReplicaRequest - 27, // 55: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Switchover:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesSwitchoverRequest - 28, // 56: mockgcp.cloud.sql.v1beta4.SqlInstancesService.ResetSslConfig:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesResetSslConfigRequest - 29, // 57: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Restart:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesRestartRequest - 30, // 58: mockgcp.cloud.sql.v1beta4.SqlInstancesService.RestoreBackup:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesRestoreBackupRequest - 31, // 59: mockgcp.cloud.sql.v1beta4.SqlInstancesService.RotateServerCa:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesRotateServerCaRequest - 32, // 60: mockgcp.cloud.sql.v1beta4.SqlInstancesService.StartReplica:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesStartReplicaRequest - 33, // 61: mockgcp.cloud.sql.v1beta4.SqlInstancesService.StopReplica:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesStopReplicaRequest - 34, // 62: mockgcp.cloud.sql.v1beta4.SqlInstancesService.TruncateLog:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesTruncateLogRequest - 35, // 63: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Update:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesUpdateRequest - 47, // 64: mockgcp.cloud.sql.v1beta4.SqlInstancesService.CreateEphemeral:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesCreateEphemeralCertRequest - 39, // 65: mockgcp.cloud.sql.v1beta4.SqlInstancesService.RescheduleMaintenance:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequest - 41, // 66: mockgcp.cloud.sql.v1beta4.SqlInstancesService.VerifyExternalSyncSettings:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest - 42, // 67: mockgcp.cloud.sql.v1beta4.SqlInstancesService.StartExternalSync:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesStartExternalSyncRequest - 40, // 68: mockgcp.cloud.sql.v1beta4.SqlInstancesService.PerformDiskShrink:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesPerformDiskShrinkRequest - 52, // 69: mockgcp.cloud.sql.v1beta4.SqlInstancesService.GetDiskShrinkConfig:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesGetDiskShrinkConfigRequest - 43, // 70: mockgcp.cloud.sql.v1beta4.SqlInstancesService.ResetReplicaSize:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesResetReplicaSizeRequest - 53, // 71: mockgcp.cloud.sql.v1beta4.SqlInstancesService.GetLatestRecoveryTime:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesGetLatestRecoveryTimeRequest - 44, // 72: mockgcp.cloud.sql.v1beta4.SqlOperationsService.Get:input_type -> mockgcp.cloud.sql.v1beta4.SqlOperationsGetRequest - 45, // 73: mockgcp.cloud.sql.v1beta4.SqlOperationsService.List:input_type -> mockgcp.cloud.sql.v1beta4.SqlOperationsListRequest - 46, // 74: mockgcp.cloud.sql.v1beta4.SqlOperationsService.Cancel:input_type -> mockgcp.cloud.sql.v1beta4.SqlOperationsCancelRequest - 48, // 75: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.Delete:input_type -> mockgcp.cloud.sql.v1beta4.SqlSslCertsDeleteRequest - 49, // 76: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.Get:input_type -> mockgcp.cloud.sql.v1beta4.SqlSslCertsGetRequest - 50, // 77: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.Insert:input_type -> mockgcp.cloud.sql.v1beta4.SqlSslCertsInsertRequest - 51, // 78: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.List:input_type -> mockgcp.cloud.sql.v1beta4.SqlSslCertsListRequest - 74, // 79: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.Delete:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 55, // 80: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.Get:output_type -> mockgcp.cloud.sql.v1beta4.BackupRun - 74, // 81: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.Insert:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 75, // 82: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.List:output_type -> mockgcp.cloud.sql.v1beta4.BackupRunsListResponse - 74, // 83: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Delete:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 56, // 84: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Get:output_type -> mockgcp.cloud.sql.v1beta4.Database - 74, // 85: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Insert:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 76, // 86: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.List:output_type -> mockgcp.cloud.sql.v1beta4.DatabasesListResponse - 74, // 87: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Patch:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 88: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Update:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 77, // 89: mockgcp.cloud.sql.v1beta4.SqlFlagsService.List:output_type -> mockgcp.cloud.sql.v1beta4.FlagsListResponse - 74, // 90: mockgcp.cloud.sql.v1beta4.SqlInstancesService.AddServerCa:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 91: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Clone:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 92: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Delete:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 93: mockgcp.cloud.sql.v1beta4.SqlInstancesService.DemoteMaster:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 94: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Demote:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 95: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Export:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 96: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Failover:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 97: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Reencrypt:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 63, // 98: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Get:output_type -> mockgcp.cloud.sql.v1beta4.DatabaseInstance - 74, // 99: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Import:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 100: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Insert:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 78, // 101: mockgcp.cloud.sql.v1beta4.SqlInstancesService.List:output_type -> mockgcp.cloud.sql.v1beta4.InstancesListResponse - 79, // 102: mockgcp.cloud.sql.v1beta4.SqlInstancesService.ListServerCas:output_type -> mockgcp.cloud.sql.v1beta4.InstancesListServerCasResponse - 74, // 103: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Patch:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 104: mockgcp.cloud.sql.v1beta4.SqlInstancesService.PromoteReplica:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 105: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Switchover:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 106: mockgcp.cloud.sql.v1beta4.SqlInstancesService.ResetSslConfig:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 107: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Restart:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 108: mockgcp.cloud.sql.v1beta4.SqlInstancesService.RestoreBackup:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 109: mockgcp.cloud.sql.v1beta4.SqlInstancesService.RotateServerCa:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 110: mockgcp.cloud.sql.v1beta4.SqlInstancesService.StartReplica:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 111: mockgcp.cloud.sql.v1beta4.SqlInstancesService.StopReplica:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 112: mockgcp.cloud.sql.v1beta4.SqlInstancesService.TruncateLog:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 113: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Update:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 80, // 114: mockgcp.cloud.sql.v1beta4.SqlInstancesService.CreateEphemeral:output_type -> mockgcp.cloud.sql.v1beta4.SslCert - 74, // 115: mockgcp.cloud.sql.v1beta4.SqlInstancesService.RescheduleMaintenance:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 81, // 116: mockgcp.cloud.sql.v1beta4.SqlInstancesService.VerifyExternalSyncSettings:output_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsResponse - 74, // 117: mockgcp.cloud.sql.v1beta4.SqlInstancesService.StartExternalSync:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 74, // 118: mockgcp.cloud.sql.v1beta4.SqlInstancesService.PerformDiskShrink:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 82, // 119: mockgcp.cloud.sql.v1beta4.SqlInstancesService.GetDiskShrinkConfig:output_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesGetDiskShrinkConfigResponse - 74, // 120: mockgcp.cloud.sql.v1beta4.SqlInstancesService.ResetReplicaSize:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 54, // 121: mockgcp.cloud.sql.v1beta4.SqlInstancesService.GetLatestRecoveryTime:output_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesGetLatestRecoveryTimeResponse - 74, // 122: mockgcp.cloud.sql.v1beta4.SqlOperationsService.Get:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 83, // 123: mockgcp.cloud.sql.v1beta4.SqlOperationsService.List:output_type -> mockgcp.cloud.sql.v1beta4.OperationsListResponse - 84, // 124: mockgcp.cloud.sql.v1beta4.SqlOperationsService.Cancel:output_type -> google.protobuf.Empty - 74, // 125: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.Delete:output_type -> mockgcp.cloud.sql.v1beta4.Operation - 80, // 126: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.Get:output_type -> mockgcp.cloud.sql.v1beta4.SslCert - 85, // 127: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.Insert:output_type -> mockgcp.cloud.sql.v1beta4.SslCertsInsertResponse - 86, // 128: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.List:output_type -> mockgcp.cloud.sql.v1beta4.SslCertsListResponse - 79, // [79:129] is the sub-list for method output_type - 29, // [29:79] is the sub-list for method input_type - 29, // [29:29] is the sub-list for extension type_name - 29, // [29:29] is the sub-list for extension extendee - 0, // [0:29] is the sub-list for field type_name + 75, // 22: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest.mysql_sync_config:type_name -> mockgcp.cloud.sql.v1beta4.MySqlSyncConfig + 3, // 23: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest.migration_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest.MigrationType + 0, // 24: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest.sync_parallel_level:type_name -> mockgcp.cloud.sql.v1beta4.ExternalSyncParallelLevel + 2, // 25: mockgcp.cloud.sql.v1beta4.SqlInstancesStartExternalSyncRequest.sync_mode:type_name -> mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest.ExternalSyncMode + 75, // 26: mockgcp.cloud.sql.v1beta4.SqlInstancesStartExternalSyncRequest.mysql_sync_config:type_name -> mockgcp.cloud.sql.v1beta4.MySqlSyncConfig + 0, // 27: mockgcp.cloud.sql.v1beta4.SqlInstancesStartExternalSyncRequest.sync_parallel_level:type_name -> mockgcp.cloud.sql.v1beta4.ExternalSyncParallelLevel + 3, // 28: mockgcp.cloud.sql.v1beta4.SqlInstancesStartExternalSyncRequest.migration_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest.MigrationType + 76, // 29: mockgcp.cloud.sql.v1beta4.SqlInstancesCreateEphemeralCertRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.SslCertsCreateEphemeralRequest + 77, // 30: mockgcp.cloud.sql.v1beta4.SqlSslCertsInsertRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.SslCertsInsertRequest + 78, // 31: mockgcp.cloud.sql.v1beta4.SqlInstancesGetLatestRecoveryTimeResponse.latest_recovery_time:type_name -> google.protobuf.Timestamp + 79, // 32: mockgcp.cloud.sql.v1beta4.SqlInstancesAcquireSsrsLeaseRequest.body:type_name -> mockgcp.cloud.sql.v1beta4.InstancesAcquireSsrsLeaseRequest + 4, // 33: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.Delete:input_type -> mockgcp.cloud.sql.v1beta4.SqlBackupRunsDeleteRequest + 5, // 34: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.Get:input_type -> mockgcp.cloud.sql.v1beta4.SqlBackupRunsGetRequest + 6, // 35: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.Insert:input_type -> mockgcp.cloud.sql.v1beta4.SqlBackupRunsInsertRequest + 7, // 36: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.List:input_type -> mockgcp.cloud.sql.v1beta4.SqlBackupRunsListRequest + 8, // 37: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Delete:input_type -> mockgcp.cloud.sql.v1beta4.SqlDatabasesDeleteRequest + 9, // 38: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Get:input_type -> mockgcp.cloud.sql.v1beta4.SqlDatabasesGetRequest + 10, // 39: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Insert:input_type -> mockgcp.cloud.sql.v1beta4.SqlDatabasesInsertRequest + 11, // 40: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.List:input_type -> mockgcp.cloud.sql.v1beta4.SqlDatabasesListRequest + 12, // 41: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Patch:input_type -> mockgcp.cloud.sql.v1beta4.SqlDatabasesUpdateRequest + 12, // 42: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Update:input_type -> mockgcp.cloud.sql.v1beta4.SqlDatabasesUpdateRequest + 13, // 43: mockgcp.cloud.sql.v1beta4.SqlFlagsService.List:input_type -> mockgcp.cloud.sql.v1beta4.SqlFlagsListRequest + 14, // 44: mockgcp.cloud.sql.v1beta4.SqlInstancesService.AddServerCa:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesAddServerCaRequest + 15, // 45: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Clone:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesCloneRequest + 16, // 46: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Delete:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesDeleteRequest + 17, // 47: mockgcp.cloud.sql.v1beta4.SqlInstancesService.DemoteMaster:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesDemoteMasterRequest + 18, // 48: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Demote:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesDemoteRequest + 19, // 49: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Export:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesExportRequest + 20, // 50: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Failover:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesFailoverRequest + 37, // 51: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Reencrypt:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesReencryptRequest + 21, // 52: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Get:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesGetRequest + 22, // 53: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Import:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesImportRequest + 23, // 54: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Insert:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesInsertRequest + 24, // 55: mockgcp.cloud.sql.v1beta4.SqlInstancesService.List:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesListRequest + 25, // 56: mockgcp.cloud.sql.v1beta4.SqlInstancesService.ListServerCas:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesListServerCasRequest + 26, // 57: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Patch:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesPatchRequest + 27, // 58: mockgcp.cloud.sql.v1beta4.SqlInstancesService.PromoteReplica:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesPromoteReplicaRequest + 28, // 59: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Switchover:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesSwitchoverRequest + 29, // 60: mockgcp.cloud.sql.v1beta4.SqlInstancesService.ResetSslConfig:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesResetSslConfigRequest + 30, // 61: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Restart:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesRestartRequest + 31, // 62: mockgcp.cloud.sql.v1beta4.SqlInstancesService.RestoreBackup:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesRestoreBackupRequest + 32, // 63: mockgcp.cloud.sql.v1beta4.SqlInstancesService.RotateServerCa:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesRotateServerCaRequest + 33, // 64: mockgcp.cloud.sql.v1beta4.SqlInstancesService.StartReplica:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesStartReplicaRequest + 34, // 65: mockgcp.cloud.sql.v1beta4.SqlInstancesService.StopReplica:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesStopReplicaRequest + 35, // 66: mockgcp.cloud.sql.v1beta4.SqlInstancesService.TruncateLog:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesTruncateLogRequest + 36, // 67: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Update:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesUpdateRequest + 48, // 68: mockgcp.cloud.sql.v1beta4.SqlInstancesService.CreateEphemeral:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesCreateEphemeralCertRequest + 40, // 69: mockgcp.cloud.sql.v1beta4.SqlInstancesService.RescheduleMaintenance:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequest + 42, // 70: mockgcp.cloud.sql.v1beta4.SqlInstancesService.VerifyExternalSyncSettings:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsRequest + 43, // 71: mockgcp.cloud.sql.v1beta4.SqlInstancesService.StartExternalSync:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesStartExternalSyncRequest + 41, // 72: mockgcp.cloud.sql.v1beta4.SqlInstancesService.PerformDiskShrink:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesPerformDiskShrinkRequest + 53, // 73: mockgcp.cloud.sql.v1beta4.SqlInstancesService.GetDiskShrinkConfig:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesGetDiskShrinkConfigRequest + 44, // 74: mockgcp.cloud.sql.v1beta4.SqlInstancesService.ResetReplicaSize:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesResetReplicaSizeRequest + 54, // 75: mockgcp.cloud.sql.v1beta4.SqlInstancesService.GetLatestRecoveryTime:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesGetLatestRecoveryTimeRequest + 58, // 76: mockgcp.cloud.sql.v1beta4.SqlInstancesService.AcquireSsrsLease:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesAcquireSsrsLeaseRequest + 56, // 77: mockgcp.cloud.sql.v1beta4.SqlInstancesService.ReleaseSsrsLease:input_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesReleaseSsrsLeaseRequest + 45, // 78: mockgcp.cloud.sql.v1beta4.SqlOperationsService.Get:input_type -> mockgcp.cloud.sql.v1beta4.SqlOperationsGetRequest + 46, // 79: mockgcp.cloud.sql.v1beta4.SqlOperationsService.List:input_type -> mockgcp.cloud.sql.v1beta4.SqlOperationsListRequest + 47, // 80: mockgcp.cloud.sql.v1beta4.SqlOperationsService.Cancel:input_type -> mockgcp.cloud.sql.v1beta4.SqlOperationsCancelRequest + 49, // 81: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.Delete:input_type -> mockgcp.cloud.sql.v1beta4.SqlSslCertsDeleteRequest + 50, // 82: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.Get:input_type -> mockgcp.cloud.sql.v1beta4.SqlSslCertsGetRequest + 51, // 83: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.Insert:input_type -> mockgcp.cloud.sql.v1beta4.SqlSslCertsInsertRequest + 52, // 84: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.List:input_type -> mockgcp.cloud.sql.v1beta4.SqlSslCertsListRequest + 80, // 85: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.Delete:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 60, // 86: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.Get:output_type -> mockgcp.cloud.sql.v1beta4.BackupRun + 80, // 87: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.Insert:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 81, // 88: mockgcp.cloud.sql.v1beta4.SqlBackupRunsService.List:output_type -> mockgcp.cloud.sql.v1beta4.BackupRunsListResponse + 80, // 89: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Delete:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 61, // 90: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Get:output_type -> mockgcp.cloud.sql.v1beta4.Database + 80, // 91: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Insert:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 82, // 92: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.List:output_type -> mockgcp.cloud.sql.v1beta4.DatabasesListResponse + 80, // 93: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Patch:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 94: mockgcp.cloud.sql.v1beta4.SqlDatabasesService.Update:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 83, // 95: mockgcp.cloud.sql.v1beta4.SqlFlagsService.List:output_type -> mockgcp.cloud.sql.v1beta4.FlagsListResponse + 80, // 96: mockgcp.cloud.sql.v1beta4.SqlInstancesService.AddServerCa:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 97: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Clone:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 98: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Delete:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 99: mockgcp.cloud.sql.v1beta4.SqlInstancesService.DemoteMaster:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 100: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Demote:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 101: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Export:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 102: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Failover:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 103: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Reencrypt:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 68, // 104: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Get:output_type -> mockgcp.cloud.sql.v1beta4.DatabaseInstance + 80, // 105: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Import:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 106: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Insert:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 84, // 107: mockgcp.cloud.sql.v1beta4.SqlInstancesService.List:output_type -> mockgcp.cloud.sql.v1beta4.InstancesListResponse + 85, // 108: mockgcp.cloud.sql.v1beta4.SqlInstancesService.ListServerCas:output_type -> mockgcp.cloud.sql.v1beta4.InstancesListServerCasResponse + 80, // 109: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Patch:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 110: mockgcp.cloud.sql.v1beta4.SqlInstancesService.PromoteReplica:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 111: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Switchover:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 112: mockgcp.cloud.sql.v1beta4.SqlInstancesService.ResetSslConfig:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 113: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Restart:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 114: mockgcp.cloud.sql.v1beta4.SqlInstancesService.RestoreBackup:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 115: mockgcp.cloud.sql.v1beta4.SqlInstancesService.RotateServerCa:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 116: mockgcp.cloud.sql.v1beta4.SqlInstancesService.StartReplica:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 117: mockgcp.cloud.sql.v1beta4.SqlInstancesService.StopReplica:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 118: mockgcp.cloud.sql.v1beta4.SqlInstancesService.TruncateLog:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 119: mockgcp.cloud.sql.v1beta4.SqlInstancesService.Update:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 86, // 120: mockgcp.cloud.sql.v1beta4.SqlInstancesService.CreateEphemeral:output_type -> mockgcp.cloud.sql.v1beta4.SslCert + 80, // 121: mockgcp.cloud.sql.v1beta4.SqlInstancesService.RescheduleMaintenance:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 87, // 122: mockgcp.cloud.sql.v1beta4.SqlInstancesService.VerifyExternalSyncSettings:output_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsResponse + 80, // 123: mockgcp.cloud.sql.v1beta4.SqlInstancesService.StartExternalSync:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 80, // 124: mockgcp.cloud.sql.v1beta4.SqlInstancesService.PerformDiskShrink:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 88, // 125: mockgcp.cloud.sql.v1beta4.SqlInstancesService.GetDiskShrinkConfig:output_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesGetDiskShrinkConfigResponse + 80, // 126: mockgcp.cloud.sql.v1beta4.SqlInstancesService.ResetReplicaSize:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 55, // 127: mockgcp.cloud.sql.v1beta4.SqlInstancesService.GetLatestRecoveryTime:output_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesGetLatestRecoveryTimeResponse + 59, // 128: mockgcp.cloud.sql.v1beta4.SqlInstancesService.AcquireSsrsLease:output_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesAcquireSsrsLeaseResponse + 57, // 129: mockgcp.cloud.sql.v1beta4.SqlInstancesService.ReleaseSsrsLease:output_type -> mockgcp.cloud.sql.v1beta4.SqlInstancesReleaseSsrsLeaseResponse + 80, // 130: mockgcp.cloud.sql.v1beta4.SqlOperationsService.Get:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 89, // 131: mockgcp.cloud.sql.v1beta4.SqlOperationsService.List:output_type -> mockgcp.cloud.sql.v1beta4.OperationsListResponse + 90, // 132: mockgcp.cloud.sql.v1beta4.SqlOperationsService.Cancel:output_type -> google.protobuf.Empty + 80, // 133: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.Delete:output_type -> mockgcp.cloud.sql.v1beta4.Operation + 86, // 134: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.Get:output_type -> mockgcp.cloud.sql.v1beta4.SslCert + 91, // 135: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.Insert:output_type -> mockgcp.cloud.sql.v1beta4.SslCertsInsertResponse + 92, // 136: mockgcp.cloud.sql.v1beta4.SqlSslCertsService.List:output_type -> mockgcp.cloud.sql.v1beta4.SslCertsListResponse + 85, // [85:137] is the sub-list for method output_type + 33, // [33:85] is the sub-list for method input_type + 33, // [33:33] is the sub-list for extension type_name + 33, // [33:33] is the sub-list for extension extendee + 0, // [0:33] is the sub-list for field type_name } func init() { file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_init() } @@ -5611,6 +6032,54 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_init() { return nil } } + file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SqlInstancesReleaseSsrsLeaseRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SqlInstancesReleaseSsrsLeaseResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SqlInstancesAcquireSsrsLeaseRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SqlInstancesAcquireSsrsLeaseResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes[34].OneofWrappers = []interface{}{} file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes[35].OneofWrappers = []interface{}{} @@ -5620,13 +6089,14 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_init() { file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes[39].OneofWrappers = []interface{}{ (*SqlInstancesStartExternalSyncRequest_MysqlSyncConfig)(nil), } + file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_msgTypes[55].OneofWrappers = []interface{}{} type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_mockgcp_cloud_sql_v1beta4_cloud_sql_proto_rawDesc, - NumEnums: 3, - NumMessages: 52, + NumEnums: 4, + NumMessages: 56, NumExtensions: 0, NumServices: 6, }, diff --git a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql.pb.gw.go b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql.pb.gw.go index 5b5deee896..66204aa8e0 100644 --- a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql.pb.gw.go +++ b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql.pb.gw.go @@ -3611,6 +3611,166 @@ func local_request_SqlInstancesService_GetLatestRecoveryTime_0(ctx context.Conte } +func request_SqlInstancesService_AcquireSsrsLease_0(ctx context.Context, marshaler runtime.Marshaler, client SqlInstancesServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SqlInstancesAcquireSsrsLeaseRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Body); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["project"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "project") + } + + protoReq.Project, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "project", err) + } + + val, ok = pathParams["instance"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "instance") + } + + protoReq.Instance, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "instance", err) + } + + msg, err := client.AcquireSsrsLease(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_SqlInstancesService_AcquireSsrsLease_0(ctx context.Context, marshaler runtime.Marshaler, server SqlInstancesServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SqlInstancesAcquireSsrsLeaseRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Body); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["project"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "project") + } + + protoReq.Project, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "project", err) + } + + val, ok = pathParams["instance"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "instance") + } + + protoReq.Instance, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "instance", err) + } + + msg, err := server.AcquireSsrsLease(ctx, &protoReq) + return msg, metadata, err + +} + +func request_SqlInstancesService_ReleaseSsrsLease_0(ctx context.Context, marshaler runtime.Marshaler, client SqlInstancesServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SqlInstancesReleaseSsrsLeaseRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["project"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "project") + } + + protoReq.Project, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "project", err) + } + + val, ok = pathParams["instance"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "instance") + } + + protoReq.Instance, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "instance", err) + } + + msg, err := client.ReleaseSsrsLease(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_SqlInstancesService_ReleaseSsrsLease_0(ctx context.Context, marshaler runtime.Marshaler, server SqlInstancesServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SqlInstancesReleaseSsrsLeaseRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["project"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "project") + } + + protoReq.Project, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "project", err) + } + + val, ok = pathParams["instance"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "instance") + } + + protoReq.Instance, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "instance", err) + } + + msg, err := server.ReleaseSsrsLease(ctx, &protoReq) + return msg, metadata, err + +} + func request_SqlOperationsService_Get_0(ctx context.Context, marshaler runtime.Marshaler, client SqlOperationsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq SqlOperationsGetRequest var metadata runtime.ServerMetadata @@ -5277,6 +5437,56 @@ func RegisterSqlInstancesServiceHandlerServer(ctx context.Context, mux *runtime. }) + mux.Handle("POST", pattern_SqlInstancesService_AcquireSsrsLease_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/mockgcp.cloud.sql.v1beta4.SqlInstancesService/AcquireSsrsLease", runtime.WithHTTPPathPattern("/sql/v1beta4/projects/{project}/instances/{instance}/acquireSsrsLease")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_SqlInstancesService_AcquireSsrsLease_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_SqlInstancesService_AcquireSsrsLease_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_SqlInstancesService_ReleaseSsrsLease_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/mockgcp.cloud.sql.v1beta4.SqlInstancesService/ReleaseSsrsLease", runtime.WithHTTPPathPattern("/sql/v1beta4/projects/{project}/instances/{instance}/releaseSsrsLease")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_SqlInstancesService_ReleaseSsrsLease_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_SqlInstancesService_ReleaseSsrsLease_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + return nil } @@ -6636,6 +6846,50 @@ func RegisterSqlInstancesServiceHandlerClient(ctx context.Context, mux *runtime. }) + mux.Handle("POST", pattern_SqlInstancesService_AcquireSsrsLease_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/mockgcp.cloud.sql.v1beta4.SqlInstancesService/AcquireSsrsLease", runtime.WithHTTPPathPattern("/sql/v1beta4/projects/{project}/instances/{instance}/acquireSsrsLease")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_SqlInstancesService_AcquireSsrsLease_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_SqlInstancesService_AcquireSsrsLease_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_SqlInstancesService_ReleaseSsrsLease_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/mockgcp.cloud.sql.v1beta4.SqlInstancesService/ReleaseSsrsLease", runtime.WithHTTPPathPattern("/sql/v1beta4/projects/{project}/instances/{instance}/releaseSsrsLease")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_SqlInstancesService_ReleaseSsrsLease_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_SqlInstancesService_ReleaseSsrsLease_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + return nil } @@ -6703,6 +6957,10 @@ var ( pattern_SqlInstancesService_ResetReplicaSize_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3, 2, 4, 1, 0, 4, 1, 5, 5, 2, 6}, []string{"sql", "v1beta4", "projects", "project", "instances", "instance", "resetReplicaSize"}, "")) pattern_SqlInstancesService_GetLatestRecoveryTime_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3, 2, 4, 1, 0, 4, 1, 5, 5, 2, 6}, []string{"sql", "v1beta4", "projects", "project", "instances", "instance", "getLatestRecoveryTime"}, "")) + + pattern_SqlInstancesService_AcquireSsrsLease_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3, 2, 4, 1, 0, 4, 1, 5, 5, 2, 6}, []string{"sql", "v1beta4", "projects", "project", "instances", "instance", "acquireSsrsLease"}, "")) + + pattern_SqlInstancesService_ReleaseSsrsLease_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3, 2, 4, 1, 0, 4, 1, 5, 5, 2, 6}, []string{"sql", "v1beta4", "projects", "project", "instances", "instance", "releaseSsrsLease"}, "")) ) var ( @@ -6769,6 +7027,10 @@ var ( forward_SqlInstancesService_ResetReplicaSize_0 = runtime.ForwardResponseMessage forward_SqlInstancesService_GetLatestRecoveryTime_0 = runtime.ForwardResponseMessage + + forward_SqlInstancesService_AcquireSsrsLease_0 = runtime.ForwardResponseMessage + + forward_SqlInstancesService_ReleaseSsrsLease_0 = runtime.ForwardResponseMessage ) // RegisterSqlOperationsServiceHandlerFromEndpoint is same as RegisterSqlOperationsServiceHandler but diff --git a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_connect.pb.go b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_connect.pb.go index 92b10f2afe..dc69a4365f 100644 --- a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_connect.pb.go +++ b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_connect.pb.go @@ -1,4 +1,4 @@ -// Copyright 2023 Google LLC +// Copyright 2024 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_grpc.pb.go b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_grpc.pb.go index df82fa823a..62bf4c55d5 100644 --- a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_grpc.pb.go +++ b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_grpc.pb.go @@ -656,10 +656,12 @@ type SqlInstancesServiceClient interface { // Partially updates settings of a Cloud SQL instance by merging the request // with the current configuration. This method supports patch semantics. Patch(ctx context.Context, in *SqlInstancesPatchRequest, opts ...grpc.CallOption) (*Operation, error) - // Promotes the read replica instance to be a stand-alone Cloud SQL instance. + // Promotes the read replica instance to be an independent Cloud SQL + // primary instance. // Using this operation might cause your instance to restart. PromoteReplica(ctx context.Context, in *SqlInstancesPromoteReplicaRequest, opts ...grpc.CallOption) (*Operation, error) - // Switches over from the primary instance to a replica instance. + // Switches over from the primary instance to the designated DR replica + // instance. Switchover(ctx context.Context, in *SqlInstancesSwitchoverRequest, opts ...grpc.CallOption) (*Operation, error) // Deletes all client certificates and generates a new server SSL certificate // for the instance. @@ -701,6 +703,10 @@ type SqlInstancesServiceClient interface { ResetReplicaSize(ctx context.Context, in *SqlInstancesResetReplicaSizeRequest, opts ...grpc.CallOption) (*Operation, error) // Get Latest Recovery Time for a given instance. GetLatestRecoveryTime(ctx context.Context, in *SqlInstancesGetLatestRecoveryTimeRequest, opts ...grpc.CallOption) (*SqlInstancesGetLatestRecoveryTimeResponse, error) + // Acquire a lease for the setup of SQL Server Reporting Services (SSRS). + AcquireSsrsLease(ctx context.Context, in *SqlInstancesAcquireSsrsLeaseRequest, opts ...grpc.CallOption) (*SqlInstancesAcquireSsrsLeaseResponse, error) + // Release a lease for the setup of SQL Server Reporting Services (SSRS). + ReleaseSsrsLease(ctx context.Context, in *SqlInstancesReleaseSsrsLeaseRequest, opts ...grpc.CallOption) (*SqlInstancesReleaseSsrsLeaseResponse, error) } type sqlInstancesServiceClient struct { @@ -999,6 +1005,24 @@ func (c *sqlInstancesServiceClient) GetLatestRecoveryTime(ctx context.Context, i return out, nil } +func (c *sqlInstancesServiceClient) AcquireSsrsLease(ctx context.Context, in *SqlInstancesAcquireSsrsLeaseRequest, opts ...grpc.CallOption) (*SqlInstancesAcquireSsrsLeaseResponse, error) { + out := new(SqlInstancesAcquireSsrsLeaseResponse) + err := c.cc.Invoke(ctx, "/mockgcp.cloud.sql.v1beta4.SqlInstancesService/AcquireSsrsLease", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sqlInstancesServiceClient) ReleaseSsrsLease(ctx context.Context, in *SqlInstancesReleaseSsrsLeaseRequest, opts ...grpc.CallOption) (*SqlInstancesReleaseSsrsLeaseResponse, error) { + out := new(SqlInstancesReleaseSsrsLeaseResponse) + err := c.cc.Invoke(ctx, "/mockgcp.cloud.sql.v1beta4.SqlInstancesService/ReleaseSsrsLease", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // SqlInstancesServiceServer is the server API for SqlInstancesService service. // All implementations must embed UnimplementedSqlInstancesServiceServer // for forward compatibility @@ -1052,10 +1076,12 @@ type SqlInstancesServiceServer interface { // Partially updates settings of a Cloud SQL instance by merging the request // with the current configuration. This method supports patch semantics. Patch(context.Context, *SqlInstancesPatchRequest) (*Operation, error) - // Promotes the read replica instance to be a stand-alone Cloud SQL instance. + // Promotes the read replica instance to be an independent Cloud SQL + // primary instance. // Using this operation might cause your instance to restart. PromoteReplica(context.Context, *SqlInstancesPromoteReplicaRequest) (*Operation, error) - // Switches over from the primary instance to a replica instance. + // Switches over from the primary instance to the designated DR replica + // instance. Switchover(context.Context, *SqlInstancesSwitchoverRequest) (*Operation, error) // Deletes all client certificates and generates a new server SSL certificate // for the instance. @@ -1097,6 +1123,10 @@ type SqlInstancesServiceServer interface { ResetReplicaSize(context.Context, *SqlInstancesResetReplicaSizeRequest) (*Operation, error) // Get Latest Recovery Time for a given instance. GetLatestRecoveryTime(context.Context, *SqlInstancesGetLatestRecoveryTimeRequest) (*SqlInstancesGetLatestRecoveryTimeResponse, error) + // Acquire a lease for the setup of SQL Server Reporting Services (SSRS). + AcquireSsrsLease(context.Context, *SqlInstancesAcquireSsrsLeaseRequest) (*SqlInstancesAcquireSsrsLeaseResponse, error) + // Release a lease for the setup of SQL Server Reporting Services (SSRS). + ReleaseSsrsLease(context.Context, *SqlInstancesReleaseSsrsLeaseRequest) (*SqlInstancesReleaseSsrsLeaseResponse, error) mustEmbedUnimplementedSqlInstancesServiceServer() } @@ -1200,6 +1230,12 @@ func (UnimplementedSqlInstancesServiceServer) ResetReplicaSize(context.Context, func (UnimplementedSqlInstancesServiceServer) GetLatestRecoveryTime(context.Context, *SqlInstancesGetLatestRecoveryTimeRequest) (*SqlInstancesGetLatestRecoveryTimeResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GetLatestRecoveryTime not implemented") } +func (UnimplementedSqlInstancesServiceServer) AcquireSsrsLease(context.Context, *SqlInstancesAcquireSsrsLeaseRequest) (*SqlInstancesAcquireSsrsLeaseResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method AcquireSsrsLease not implemented") +} +func (UnimplementedSqlInstancesServiceServer) ReleaseSsrsLease(context.Context, *SqlInstancesReleaseSsrsLeaseRequest) (*SqlInstancesReleaseSsrsLeaseResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ReleaseSsrsLease not implemented") +} func (UnimplementedSqlInstancesServiceServer) mustEmbedUnimplementedSqlInstancesServiceServer() {} // UnsafeSqlInstancesServiceServer may be embedded to opt out of forward compatibility for this service. @@ -1789,6 +1825,42 @@ func _SqlInstancesService_GetLatestRecoveryTime_Handler(srv interface{}, ctx con return interceptor(ctx, in, info, handler) } +func _SqlInstancesService_AcquireSsrsLease_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SqlInstancesAcquireSsrsLeaseRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SqlInstancesServiceServer).AcquireSsrsLease(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/mockgcp.cloud.sql.v1beta4.SqlInstancesService/AcquireSsrsLease", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SqlInstancesServiceServer).AcquireSsrsLease(ctx, req.(*SqlInstancesAcquireSsrsLeaseRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SqlInstancesService_ReleaseSsrsLease_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SqlInstancesReleaseSsrsLeaseRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SqlInstancesServiceServer).ReleaseSsrsLease(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/mockgcp.cloud.sql.v1beta4.SqlInstancesService/ReleaseSsrsLease", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SqlInstancesServiceServer).ReleaseSsrsLease(ctx, req.(*SqlInstancesReleaseSsrsLeaseRequest)) + } + return interceptor(ctx, in, info, handler) +} + // SqlInstancesService_ServiceDesc is the grpc.ServiceDesc for SqlInstancesService service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -1924,6 +1996,14 @@ var SqlInstancesService_ServiceDesc = grpc.ServiceDesc{ MethodName: "GetLatestRecoveryTime", Handler: _SqlInstancesService_GetLatestRecoveryTime_Handler, }, + { + MethodName: "AcquireSsrsLease", + Handler: _SqlInstancesService_AcquireSsrsLease_Handler, + }, + { + MethodName: "ReleaseSsrsLease", + Handler: _SqlInstancesService_ReleaseSsrsLease_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "mockgcp/cloud/sql/v1beta4/cloud_sql.proto", diff --git a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_iam_policies.pb.go b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_iam_policies.pb.go index 42309896ed..eed945e1b7 100644 --- a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_iam_policies.pb.go +++ b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_iam_policies.pb.go @@ -1,4 +1,4 @@ -// Copyright 2023 Google LLC +// Copyright 2024 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_resources.pb.go b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_resources.pb.go index 40f1895f4b..2d1524b7cc 100644 --- a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_resources.pb.go +++ b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_resources.pb.go @@ -1,4 +1,4 @@ -// Copyright 2023 Google LLC +// Copyright 2024 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -560,6 +560,8 @@ const ( SqlDatabaseVersion_POSTGRES_14 SqlDatabaseVersion = 110 // The database version is PostgreSQL 15. SqlDatabaseVersion_POSTGRES_15 SqlDatabaseVersion = 172 + // The database version is PostgreSQL 16. + SqlDatabaseVersion_POSTGRES_16 SqlDatabaseVersion = 272 // The database version is MySQL 8. SqlDatabaseVersion_MYSQL_8_0 SqlDatabaseVersion = 20 // The database major version is MySQL 8.0 and the minor version is 18. @@ -588,6 +590,18 @@ const ( SqlDatabaseVersion_MYSQL_8_0_35 SqlDatabaseVersion = 240 // The database major version is MySQL 8.0 and the minor version is 36. SqlDatabaseVersion_MYSQL_8_0_36 SqlDatabaseVersion = 241 + // The database major version is MySQL 8.0 and the minor version is 37. + SqlDatabaseVersion_MYSQL_8_0_37 SqlDatabaseVersion = 355 + // The database major version is MySQL 8.0 and the minor version is 38. + SqlDatabaseVersion_MYSQL_8_0_38 SqlDatabaseVersion = 356 + // The database major version is MySQL 8.0 and the minor version is 39. + SqlDatabaseVersion_MYSQL_8_0_39 SqlDatabaseVersion = 357 + // The database major version is MySQL 8.0 and the minor version is 40. + SqlDatabaseVersion_MYSQL_8_0_40 SqlDatabaseVersion = 358 + // The database version is MySQL 8.4. + SqlDatabaseVersion_MYSQL_8_4 SqlDatabaseVersion = 398 + // The database version is MySQL 8.4 and the patch version is 0. + SqlDatabaseVersion_MYSQL_8_4_0 SqlDatabaseVersion = 399 // The database version is SQL Server 2019 Standard. SqlDatabaseVersion_SQLSERVER_2019_STANDARD SqlDatabaseVersion = 26 // The database version is SQL Server 2019 Enterprise. @@ -625,6 +639,7 @@ var ( 23: "POSTGRES_13", 110: "POSTGRES_14", 172: "POSTGRES_15", + 272: "POSTGRES_16", 20: "MYSQL_8_0", 41: "MYSQL_8_0_18", 85: "MYSQL_8_0_26", @@ -638,6 +653,12 @@ var ( 239: "MYSQL_8_0_34", 240: "MYSQL_8_0_35", 241: "MYSQL_8_0_36", + 355: "MYSQL_8_0_37", + 356: "MYSQL_8_0_38", + 357: "MYSQL_8_0_39", + 358: "MYSQL_8_0_40", + 398: "MYSQL_8_4", + 399: "MYSQL_8_4_0", 26: "SQLSERVER_2019_STANDARD", 27: "SQLSERVER_2019_ENTERPRISE", 28: "SQLSERVER_2019_EXPRESS", @@ -664,6 +685,7 @@ var ( "POSTGRES_13": 23, "POSTGRES_14": 110, "POSTGRES_15": 172, + "POSTGRES_16": 272, "MYSQL_8_0": 20, "MYSQL_8_0_18": 41, "MYSQL_8_0_26": 85, @@ -677,6 +699,12 @@ var ( "MYSQL_8_0_34": 239, "MYSQL_8_0_35": 240, "MYSQL_8_0_36": 241, + "MYSQL_8_0_37": 355, + "MYSQL_8_0_38": 356, + "MYSQL_8_0_39": 357, + "MYSQL_8_0_40": 358, + "MYSQL_8_4": 398, + "MYSQL_8_4_0": 399, "SQLSERVER_2019_STANDARD": 26, "SQLSERVER_2019_ENTERPRISE": 27, "SQLSERVER_2019_EXPRESS": 28, @@ -1250,6 +1278,74 @@ func (BackupRetentionSettings_RetentionUnit) EnumDescriptor() ([]byte, []int) { return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{2, 0} } +// This value contains the storage location of the transactional logs +// used to perform point-in-time recovery (PITR) for the database. +type BackupConfiguration_TransactionalLogStorageState int32 + +const ( + // Unspecified. + BackupConfiguration_TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED BackupConfiguration_TransactionalLogStorageState = 0 + // The transaction logs used for PITR for the instance are stored + // on a data disk. + BackupConfiguration_DISK BackupConfiguration_TransactionalLogStorageState = 1 + // The transaction logs used for PITR for the instance are switching from + // being stored on a data disk to being stored in Cloud Storage. + // Only applicable to MySQL. + BackupConfiguration_SWITCHING_TO_CLOUD_STORAGE BackupConfiguration_TransactionalLogStorageState = 2 + // The transaction logs used for PITR for the instance are now stored + // in Cloud Storage. Previously, they were stored on a data disk. + // Only applicable to MySQL. + BackupConfiguration_SWITCHED_TO_CLOUD_STORAGE BackupConfiguration_TransactionalLogStorageState = 3 + // The transaction logs used for PITR for the instance are stored in + // Cloud Storage. Only applicable to MySQL and PostgreSQL. + BackupConfiguration_CLOUD_STORAGE BackupConfiguration_TransactionalLogStorageState = 4 +) + +// Enum value maps for BackupConfiguration_TransactionalLogStorageState. +var ( + BackupConfiguration_TransactionalLogStorageState_name = map[int32]string{ + 0: "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED", + 1: "DISK", + 2: "SWITCHING_TO_CLOUD_STORAGE", + 3: "SWITCHED_TO_CLOUD_STORAGE", + 4: "CLOUD_STORAGE", + } + BackupConfiguration_TransactionalLogStorageState_value = map[string]int32{ + "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED": 0, + "DISK": 1, + "SWITCHING_TO_CLOUD_STORAGE": 2, + "SWITCHED_TO_CLOUD_STORAGE": 3, + "CLOUD_STORAGE": 4, + } +) + +func (x BackupConfiguration_TransactionalLogStorageState) Enum() *BackupConfiguration_TransactionalLogStorageState { + p := new(BackupConfiguration_TransactionalLogStorageState) + *p = x + return p +} + +func (x BackupConfiguration_TransactionalLogStorageState) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (BackupConfiguration_TransactionalLogStorageState) Descriptor() protoreflect.EnumDescriptor { + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[18].Descriptor() +} + +func (BackupConfiguration_TransactionalLogStorageState) Type() protoreflect.EnumType { + return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[18] +} + +func (x BackupConfiguration_TransactionalLogStorageState) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use BackupConfiguration_TransactionalLogStorageState.Descriptor instead. +func (BackupConfiguration_TransactionalLogStorageState) EnumDescriptor() ([]byte, []int) { + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{3, 0} +} + // The current serving state of the database instance. type DatabaseInstance_SqlInstanceState int32 @@ -1310,11 +1406,11 @@ func (x DatabaseInstance_SqlInstanceState) String() string { } func (DatabaseInstance_SqlInstanceState) Descriptor() protoreflect.EnumDescriptor { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[18].Descriptor() + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[19].Descriptor() } func (DatabaseInstance_SqlInstanceState) Type() protoreflect.EnumType { - return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[18] + return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[19] } func (x DatabaseInstance_SqlInstanceState) Number() protoreflect.EnumNumber { @@ -1362,11 +1458,11 @@ func (x DatabaseInstance_SqlNetworkArchitecture) String() string { } func (DatabaseInstance_SqlNetworkArchitecture) Descriptor() protoreflect.EnumDescriptor { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[19].Descriptor() + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[20].Descriptor() } func (DatabaseInstance_SqlNetworkArchitecture) Type() protoreflect.EnumType { - return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[19] + return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[20] } func (x DatabaseInstance_SqlNetworkArchitecture) Number() protoreflect.EnumNumber { @@ -1416,11 +1512,11 @@ func (x DatabaseInstance_SqlOutOfDiskReport_SqlOutOfDiskState) String() string { } func (DatabaseInstance_SqlOutOfDiskReport_SqlOutOfDiskState) Descriptor() protoreflect.EnumDescriptor { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[20].Descriptor() + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[21].Descriptor() } func (DatabaseInstance_SqlOutOfDiskReport_SqlOutOfDiskState) Type() protoreflect.EnumType { - return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[20] + return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[21] } func (x DatabaseInstance_SqlOutOfDiskReport_SqlOutOfDiskState) Number() protoreflect.EnumNumber { @@ -1534,6 +1630,20 @@ const ( // cores of the replica instance is less than 8, and the memory of the // replica is less than 32 GB. SqlExternalSyncSettingError_INSUFFICIENT_MACHINE_TIER SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType = 44 + // The warning message indicates the unsupported extensions will not be + // migrated to the destination. + SqlExternalSyncSettingError_UNSUPPORTED_EXTENSIONS_NOT_MIGRATED SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType = 45 + // The warning message indicates the pg_cron extension and settings will not + // be migrated to the destination. + SqlExternalSyncSettingError_EXTENSIONS_NOT_MIGRATED SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType = 46 + // The error message indicates that pg_cron flags are enabled on the + // destination which is not supported during the migration. + SqlExternalSyncSettingError_PG_CRON_FLAG_ENABLED_IN_REPLICA SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType = 47 + // This error message indicates that the specified extensions are not + // enabled on destination instance. For example, before you can migrate + // data to the destination instance, you must enable the PGAudit extension + // on the instance. + SqlExternalSyncSettingError_EXTENSIONS_NOT_ENABLED_IN_REPLICA SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType = 48 ) // Enum value maps for SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType. @@ -1584,6 +1694,10 @@ var ( 42: "PG_SYNC_PARALLEL_LEVEL", 43: "INSUFFICIENT_DISK_SIZE", 44: "INSUFFICIENT_MACHINE_TIER", + 45: "UNSUPPORTED_EXTENSIONS_NOT_MIGRATED", + 46: "EXTENSIONS_NOT_MIGRATED", + 47: "PG_CRON_FLAG_ENABLED_IN_REPLICA", + 48: "EXTENSIONS_NOT_ENABLED_IN_REPLICA", } SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType_value = map[string]int32{ "SQL_EXTERNAL_SYNC_SETTING_ERROR_TYPE_UNSPECIFIED": 0, @@ -1631,6 +1745,10 @@ var ( "PG_SYNC_PARALLEL_LEVEL": 42, "INSUFFICIENT_DISK_SIZE": 43, "INSUFFICIENT_MACHINE_TIER": 44, + "UNSUPPORTED_EXTENSIONS_NOT_MIGRATED": 45, + "EXTENSIONS_NOT_MIGRATED": 46, + "PG_CRON_FLAG_ENABLED_IN_REPLICA": 47, + "EXTENSIONS_NOT_ENABLED_IN_REPLICA": 48, } ) @@ -1645,11 +1763,11 @@ func (x SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType) String() st } func (SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType) Descriptor() protoreflect.EnumDescriptor { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[21].Descriptor() + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[22].Descriptor() } func (SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType) Type() protoreflect.EnumType { - return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[21] + return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[22] } func (x SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType) Number() protoreflect.EnumNumber { @@ -1658,7 +1776,7 @@ func (x SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType) Number() pr // Deprecated: Use SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType.Descriptor instead. func (SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType) EnumDescriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{40, 0} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{44, 0} } // The SSL options for database connections. @@ -1667,17 +1785,23 @@ type IpConfiguration_SslMode int32 const ( // The SSL mode is unknown. IpConfiguration_SSL_MODE_UNSPECIFIED IpConfiguration_SslMode = 0 - // Allow non-SSL/non-TLS and SSL/TLS connections. For SSL/TLS connections, - // the client certificate won't be verified. + // Allow non-SSL/non-TLS and SSL/TLS connections. + // For SSL connections to MySQL and PostgreSQL, the client certificate + // isn't verified. + // // When this value is used, the legacy `require_ssl` flag must be false or - // cleared to avoid the conflict between values of two flags. + // cleared to avoid a conflict between the values of the two flags. IpConfiguration_ALLOW_UNENCRYPTED_AND_ENCRYPTED IpConfiguration_SslMode = 1 // Only allow connections encrypted with SSL/TLS. + // For SSL connections to MySQL and PostgreSQL, the client certificate + // isn't verified. + // // When this value is used, the legacy `require_ssl` flag must be false or - // cleared to avoid the conflict between values of two flags. + // cleared to avoid a conflict between the values of the two flags. IpConfiguration_ENCRYPTED_ONLY IpConfiguration_SslMode = 2 // Only allow connections encrypted with SSL/TLS and with valid // client certificates. + // // When this value is used, the legacy `require_ssl` flag must be true or // cleared to avoid the conflict between values of two flags. // PostgreSQL clients or users that connect using IAM database @@ -1687,6 +1811,8 @@ const ( // [Cloud SQL // Connectors](https://cloud.google.com/sql/docs/postgres/connect-connectors) // to enforce client identity verification. + // + // Only applicable to MySQL and PostgreSQL. Not applicable to SQL Server. IpConfiguration_TRUSTED_CLIENT_CERTIFICATE_REQUIRED IpConfiguration_SslMode = 3 ) @@ -1717,11 +1843,11 @@ func (x IpConfiguration_SslMode) String() string { } func (IpConfiguration_SslMode) Descriptor() protoreflect.EnumDescriptor { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[22].Descriptor() + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[23].Descriptor() } func (IpConfiguration_SslMode) Type() protoreflect.EnumType { - return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[22] + return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[23] } func (x IpConfiguration_SslMode) Number() protoreflect.EnumNumber { @@ -1730,7 +1856,7 @@ func (x IpConfiguration_SslMode) Number() protoreflect.EnumNumber { // Deprecated: Use IpConfiguration_SslMode.Descriptor instead. func (IpConfiguration_SslMode) EnumDescriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{41, 0} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{45, 0} } // The type of Cloud SQL operation. @@ -1822,8 +1948,32 @@ const ( Operation_AUTO_RESTART Operation_SqlOperationType = 37 // Re-encrypts CMEK instances with latest key version. Operation_REENCRYPT Operation_SqlOperationType = 38 - // Switches over to replica instance from primary. + // Switches the roles of the primary and replica pair. The target instance + // should be the replica. Operation_SWITCHOVER Operation_SqlOperationType = 39 + // Acquire a lease for the setup of SQL Server Reporting Services (SSRS). + Operation_ACQUIRE_SSRS_LEASE Operation_SqlOperationType = 42 + // Release a lease for the setup of SQL Server Reporting Services (SSRS). + Operation_RELEASE_SSRS_LEASE Operation_SqlOperationType = 43 + // Reconfigures old primary after a promote replica operation. Effect of a + // promote operation to the old primary is executed in this operation, + // asynchronously from the promote replica operation executed to the + // replica. + Operation_RECONFIGURE_OLD_PRIMARY Operation_SqlOperationType = 44 + // Indicates that the instance, its read replicas, and its cascading + // replicas are in maintenance. Maintenance typically gets initiated on + // groups of replicas first, followed by the primary instance. For each + // instance, maintenance typically causes the instance to be unavailable for + // 1-3 minutes. + Operation_CLUSTER_MAINTENANCE Operation_SqlOperationType = 45 + // Indicates that the instance (and any of its replicas) are currently in + // maintenance. This is initiated as a self-service request by using SSM. + // Maintenance typically causes the instance to be unavailable for 1-3 + // minutes. + Operation_SELF_SERVICE_MAINTENANCE Operation_SqlOperationType = 46 + // Switches a primary instance to a replica. This operation runs as part of + // a switchover operation to the original primary instance. + Operation_SWITCHOVER_TO_REPLICA Operation_SqlOperationType = 47 ) // Enum value maps for Operation_SqlOperationType. @@ -1868,6 +2018,12 @@ var ( 37: "AUTO_RESTART", 38: "REENCRYPT", 39: "SWITCHOVER", + 42: "ACQUIRE_SSRS_LEASE", + 43: "RELEASE_SSRS_LEASE", + 44: "RECONFIGURE_OLD_PRIMARY", + 45: "CLUSTER_MAINTENANCE", + 46: "SELF_SERVICE_MAINTENANCE", + 47: "SWITCHOVER_TO_REPLICA", } Operation_SqlOperationType_value = map[string]int32{ "SQL_OPERATION_TYPE_UNSPECIFIED": 0, @@ -1909,6 +2065,12 @@ var ( "AUTO_RESTART": 37, "REENCRYPT": 38, "SWITCHOVER": 39, + "ACQUIRE_SSRS_LEASE": 42, + "RELEASE_SSRS_LEASE": 43, + "RECONFIGURE_OLD_PRIMARY": 44, + "CLUSTER_MAINTENANCE": 45, + "SELF_SERVICE_MAINTENANCE": 46, + "SWITCHOVER_TO_REPLICA": 47, } ) @@ -1923,11 +2085,11 @@ func (x Operation_SqlOperationType) String() string { } func (Operation_SqlOperationType) Descriptor() protoreflect.EnumDescriptor { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[23].Descriptor() + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[24].Descriptor() } func (Operation_SqlOperationType) Type() protoreflect.EnumType { - return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[23] + return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[24] } func (x Operation_SqlOperationType) Number() protoreflect.EnumNumber { @@ -1936,7 +2098,7 @@ func (x Operation_SqlOperationType) Number() protoreflect.EnumNumber { // Deprecated: Use Operation_SqlOperationType.Descriptor instead. func (Operation_SqlOperationType) EnumDescriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{52, 0} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{56, 0} } // The status of an operation. @@ -1980,11 +2142,11 @@ func (x Operation_SqlOperationStatus) String() string { } func (Operation_SqlOperationStatus) Descriptor() protoreflect.EnumDescriptor { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[24].Descriptor() + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[25].Descriptor() } func (Operation_SqlOperationStatus) Type() protoreflect.EnumType { - return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[24] + return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[25] } func (x Operation_SqlOperationStatus) Number() protoreflect.EnumNumber { @@ -1993,7 +2155,7 @@ func (x Operation_SqlOperationStatus) Number() protoreflect.EnumNumber { // Deprecated: Use Operation_SqlOperationStatus.Descriptor instead. func (Operation_SqlOperationStatus) EnumDescriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{52, 1} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{56, 1} } // The complexity choices of the password. @@ -2030,11 +2192,11 @@ func (x PasswordValidationPolicy_Complexity) String() string { } func (PasswordValidationPolicy_Complexity) Descriptor() protoreflect.EnumDescriptor { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[25].Descriptor() + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[26].Descriptor() } func (PasswordValidationPolicy_Complexity) Type() protoreflect.EnumType { - return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[25] + return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[26] } func (x PasswordValidationPolicy_Complexity) Number() protoreflect.EnumNumber { @@ -2043,7 +2205,7 @@ func (x PasswordValidationPolicy_Complexity) Number() protoreflect.EnumNumber { // Deprecated: Use PasswordValidationPolicy_Complexity.Descriptor instead. func (PasswordValidationPolicy_Complexity) EnumDescriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{55, 0} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{59, 0} } // Specifies when the instance is activated. @@ -2089,11 +2251,11 @@ func (x Settings_SqlActivationPolicy) String() string { } func (Settings_SqlActivationPolicy) Descriptor() protoreflect.EnumDescriptor { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[26].Descriptor() + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[27].Descriptor() } func (Settings_SqlActivationPolicy) Type() protoreflect.EnumType { - return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[26] + return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[27] } func (x Settings_SqlActivationPolicy) Number() protoreflect.EnumNumber { @@ -2102,7 +2264,7 @@ func (x Settings_SqlActivationPolicy) Number() protoreflect.EnumNumber { // Deprecated: Use Settings_SqlActivationPolicy.Descriptor instead. func (Settings_SqlActivationPolicy) EnumDescriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{61, 0} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{65, 0} } // The edition of the instance, can be ENTERPRISE or ENTERPRISE_PLUS. @@ -2142,11 +2304,11 @@ func (x Settings_Edition) String() string { } func (Settings_Edition) Descriptor() protoreflect.EnumDescriptor { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[27].Descriptor() + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[28].Descriptor() } func (Settings_Edition) Type() protoreflect.EnumType { - return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[27] + return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[28] } func (x Settings_Edition) Number() protoreflect.EnumNumber { @@ -2155,7 +2317,7 @@ func (x Settings_Edition) Number() protoreflect.EnumNumber { // Deprecated: Use Settings_Edition.Descriptor instead. func (Settings_Edition) EnumDescriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{61, 1} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{65, 1} } // The options for enforcing Cloud SQL connectors in the instance. @@ -2197,11 +2359,11 @@ func (x Settings_ConnectorEnforcement) String() string { } func (Settings_ConnectorEnforcement) Descriptor() protoreflect.EnumDescriptor { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[28].Descriptor() + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[29].Descriptor() } func (Settings_ConnectorEnforcement) Type() protoreflect.EnumType { - return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[28] + return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[29] } func (x Settings_ConnectorEnforcement) Number() protoreflect.EnumNumber { @@ -2210,7 +2372,7 @@ func (x Settings_ConnectorEnforcement) Number() protoreflect.EnumNumber { // Deprecated: Use Settings_ConnectorEnforcement.Descriptor instead. func (Settings_ConnectorEnforcement) EnumDescriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{61, 2} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{65, 2} } type SqlInstancesRescheduleMaintenanceRequestBody_RescheduleType int32 @@ -2253,11 +2415,11 @@ func (x SqlInstancesRescheduleMaintenanceRequestBody_RescheduleType) String() st } func (SqlInstancesRescheduleMaintenanceRequestBody_RescheduleType) Descriptor() protoreflect.EnumDescriptor { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[29].Descriptor() + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[30].Descriptor() } func (SqlInstancesRescheduleMaintenanceRequestBody_RescheduleType) Type() protoreflect.EnumType { - return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[29] + return &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes[30] } func (x SqlInstancesRescheduleMaintenanceRequestBody_RescheduleType) Number() protoreflect.EnumNumber { @@ -2266,7 +2428,7 @@ func (x SqlInstancesRescheduleMaintenanceRequestBody_RescheduleType) Number() pr // Deprecated: Use SqlInstancesRescheduleMaintenanceRequestBody_RescheduleType.Descriptor instead. func (SqlInstancesRescheduleMaintenanceRequestBody_RescheduleType) EnumDescriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{67, 0} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{71, 0} } // An entry for an Access Control list. @@ -2502,6 +2664,9 @@ type BackupConfiguration struct { TransactionLogRetentionDays *wrappers.Int32Value `protobuf:"bytes,9,opt,name=transaction_log_retention_days,json=transactionLogRetentionDays,proto3" json:"transaction_log_retention_days,omitempty"` // Backup retention settings. BackupRetentionSettings *BackupRetentionSettings `protobuf:"bytes,10,opt,name=backup_retention_settings,json=backupRetentionSettings,proto3" json:"backup_retention_settings,omitempty"` + // Output only. This value contains the storage location of transactional logs + // for the database for point-in-time recovery. + TransactionalLogStorageState *BackupConfiguration_TransactionalLogStorageState `protobuf:"varint,11,opt,name=transactional_log_storage_state,json=transactionalLogStorageState,proto3,enum=mockgcp.cloud.sql.v1beta4.BackupConfiguration_TransactionalLogStorageState,oneof" json:"transactional_log_storage_state,omitempty"` } func (x *BackupConfiguration) Reset() { @@ -2599,6 +2764,13 @@ func (x *BackupConfiguration) GetBackupRetentionSettings() *BackupRetentionSetti return nil } +func (x *BackupConfiguration) GetTransactionalLogStorageState() BackupConfiguration_TransactionalLogStorageState { + if x != nil && x.TransactionalLogStorageState != nil { + return *x.TransactionalLogStorageState + } + return BackupConfiguration_TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED +} + // A BackupRun resource. type BackupRun struct { state protoimpl.MessageState @@ -3028,10 +3200,15 @@ type CloneContext struct { // (SQL Server only) Clone only the specified databases from the source // instance. Clone all databases if empty. DatabaseNames []string `protobuf:"bytes,9,rep,name=database_names,json=databaseNames,proto3" json:"database_names,omitempty"` - // Optional. (Point-in-time recovery for PostgreSQL only) Clone to an instance - // in the specified zone. If no zone is specified, clone to the same zone as + // Optional. Copy clone and point-in-time recovery clone of an instance to the + // specified zone. If no zone is specified, clone to the same primary zone as // the source instance. PreferredZone *string `protobuf:"bytes,10,opt,name=preferred_zone,json=preferredZone,proto3,oneof" json:"preferred_zone,omitempty"` + // Optional. Copy clone and point-in-time recovery clone of a regional + // instance in the specified zones. If not specified, clone to the same + // secondary zone as the source instance. This value cannot be the same as the + // preferred_zone field. + PreferredSecondaryZone *string `protobuf:"bytes,11,opt,name=preferred_secondary_zone,json=preferredSecondaryZone,proto3,oneof" json:"preferred_secondary_zone,omitempty"` } func (x *CloneContext) Reset() { @@ -3122,6 +3299,13 @@ func (x *CloneContext) GetPreferredZone() string { return "" } +func (x *CloneContext) GetPreferredSecondaryZone() string { + if x != nil && x.PreferredSecondaryZone != nil { + return *x.PreferredSecondaryZone + } + return "" +} + // Represents a SQL database on the Cloud SQL instance. type Database struct { state protoimpl.MessageState @@ -3619,8 +3803,9 @@ type DatabaseInstance struct { RootPassword string `protobuf:"bytes,29,opt,name=root_password,json=rootPassword,proto3" json:"root_password,omitempty"` // The start time of any upcoming scheduled maintenance for this instance. ScheduledMaintenance *DatabaseInstance_SqlScheduledMaintenance `protobuf:"bytes,30,opt,name=scheduled_maintenance,json=scheduledMaintenance,proto3" json:"scheduled_maintenance,omitempty"` - // The status indicating if instance satisfiesPzs. - // Reserved for future use. + // This status indicates whether the instance satisfies PZS. + // + // The status is reserved for future use. SatisfiesPzs *wrappers.BoolValue `protobuf:"bytes,35,opt,name=satisfies_pzs,json=satisfiesPzs,proto3" json:"satisfies_pzs,omitempty"` // Output only. Stores the current database version running on the instance // including minor version such as `MYSQL_8_0_18`. @@ -3641,6 +3826,8 @@ type DatabaseInstance struct { AvailableMaintenanceVersions []string `protobuf:"bytes,41,rep,name=available_maintenance_versions,json=availableMaintenanceVersions,proto3" json:"available_maintenance_versions,omitempty"` // The current software version on the instance. MaintenanceVersion string `protobuf:"bytes,42,opt,name=maintenance_version,json=maintenanceVersion,proto3" json:"maintenance_version,omitempty"` + // Output only. All database versions that are available for upgrade. + UpgradableDatabaseVersions []*AvailableDatabaseVersion `protobuf:"bytes,45,rep,name=upgradable_database_versions,json=upgradableDatabaseVersions,proto3" json:"upgradable_database_versions,omitempty"` // The SQL network architecture for the instance. SqlNetworkArchitecture *DatabaseInstance_SqlNetworkArchitecture `protobuf:"varint,47,opt,name=sql_network_architecture,json=sqlNetworkArchitecture,proto3,enum=mockgcp.cloud.sql.v1beta4.DatabaseInstance_SqlNetworkArchitecture,oneof" json:"sql_network_architecture,omitempty"` // Output only. The link to service attachment of PSC instance. @@ -3653,6 +3840,13 @@ type DatabaseInstance struct { PrimaryDnsName *string `protobuf:"bytes,51,opt,name=primary_dns_name,json=primaryDnsName,proto3,oneof" json:"primary_dns_name,omitempty"` // Output only. The dns name of the primary instance in a replication group. WriteEndpoint *string `protobuf:"bytes,52,opt,name=write_endpoint,json=writeEndpoint,proto3,oneof" json:"write_endpoint,omitempty"` + // A primary instance and disaster recovery (DR) replica pair. + // A DR replica is a cross-region replica that you designate + // for failover in the event that the primary instance + // experiences regional failure. Only applicable to MySQL. + ReplicationCluster *ReplicationCluster `protobuf:"bytes,54,opt,name=replication_cluster,json=replicationCluster,proto3,oneof" json:"replication_cluster,omitempty"` + // Gemini instance configuration. + GeminiConfig *GeminiInstanceConfig `protobuf:"bytes,55,opt,name=gemini_config,json=geminiConfig,proto3,oneof" json:"gemini_config,omitempty"` } func (x *DatabaseInstance) Reset() { @@ -3942,6 +4136,13 @@ func (x *DatabaseInstance) GetMaintenanceVersion() string { return "" } +func (x *DatabaseInstance) GetUpgradableDatabaseVersions() []*AvailableDatabaseVersion { + if x != nil { + return x.UpgradableDatabaseVersions + } + return nil +} + func (x *DatabaseInstance) GetSqlNetworkArchitecture() DatabaseInstance_SqlNetworkArchitecture { if x != nil && x.SqlNetworkArchitecture != nil { return *x.SqlNetworkArchitecture @@ -3978,6 +4179,264 @@ func (x *DatabaseInstance) GetWriteEndpoint() string { return "" } +func (x *DatabaseInstance) GetReplicationCluster() *ReplicationCluster { + if x != nil { + return x.ReplicationCluster + } + return nil +} + +func (x *DatabaseInstance) GetGeminiConfig() *GeminiInstanceConfig { + if x != nil { + return x.GeminiConfig + } + return nil +} + +// Gemini instance configuration. +type GeminiInstanceConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Output only. Whether Gemini is enabled. + Entitled *bool `protobuf:"varint,1,opt,name=entitled,proto3,oneof" json:"entitled,omitempty"` + // Output only. Whether the vacuum management is enabled. + GoogleVacuumMgmtEnabled *bool `protobuf:"varint,2,opt,name=google_vacuum_mgmt_enabled,json=googleVacuumMgmtEnabled,proto3,oneof" json:"google_vacuum_mgmt_enabled,omitempty"` + // Output only. Whether canceling the out-of-memory (OOM) session is enabled. + OomSessionCancelEnabled *bool `protobuf:"varint,3,opt,name=oom_session_cancel_enabled,json=oomSessionCancelEnabled,proto3,oneof" json:"oom_session_cancel_enabled,omitempty"` + // Output only. Whether the active query is enabled. + ActiveQueryEnabled *bool `protobuf:"varint,4,opt,name=active_query_enabled,json=activeQueryEnabled,proto3,oneof" json:"active_query_enabled,omitempty"` + // Output only. Whether the index advisor is enabled. + IndexAdvisorEnabled *bool `protobuf:"varint,5,opt,name=index_advisor_enabled,json=indexAdvisorEnabled,proto3,oneof" json:"index_advisor_enabled,omitempty"` + // Output only. Whether the flag recommender is enabled. + FlagRecommenderEnabled *bool `protobuf:"varint,6,opt,name=flag_recommender_enabled,json=flagRecommenderEnabled,proto3,oneof" json:"flag_recommender_enabled,omitempty"` +} + +func (x *GeminiInstanceConfig) Reset() { + *x = GeminiInstanceConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GeminiInstanceConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GeminiInstanceConfig) ProtoMessage() {} + +func (x *GeminiInstanceConfig) ProtoReflect() protoreflect.Message { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_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 GeminiInstanceConfig.ProtoReflect.Descriptor instead. +func (*GeminiInstanceConfig) Descriptor() ([]byte, []int) { + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{15} +} + +func (x *GeminiInstanceConfig) GetEntitled() bool { + if x != nil && x.Entitled != nil { + return *x.Entitled + } + return false +} + +func (x *GeminiInstanceConfig) GetGoogleVacuumMgmtEnabled() bool { + if x != nil && x.GoogleVacuumMgmtEnabled != nil { + return *x.GoogleVacuumMgmtEnabled + } + return false +} + +func (x *GeminiInstanceConfig) GetOomSessionCancelEnabled() bool { + if x != nil && x.OomSessionCancelEnabled != nil { + return *x.OomSessionCancelEnabled + } + return false +} + +func (x *GeminiInstanceConfig) GetActiveQueryEnabled() bool { + if x != nil && x.ActiveQueryEnabled != nil { + return *x.ActiveQueryEnabled + } + return false +} + +func (x *GeminiInstanceConfig) GetIndexAdvisorEnabled() bool { + if x != nil && x.IndexAdvisorEnabled != nil { + return *x.IndexAdvisorEnabled + } + return false +} + +func (x *GeminiInstanceConfig) GetFlagRecommenderEnabled() bool { + if x != nil && x.FlagRecommenderEnabled != nil { + return *x.FlagRecommenderEnabled + } + return false +} + +// A primary instance and disaster recovery (DR) replica pair. +// A DR replica is a cross-region replica that you designate for failover +// in the event that the primary instance has regional failure. +// Only applicable to MySQL. +type ReplicationCluster struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Output only. If set, it indicates this instance has a private service + // access (PSA) dns endpoint that is pointing to the primary instance of the + // cluster. If this instance is the primary, the dns should be pointing to + // this instance. After Switchover or Replica failover, this DNS endpoint + // points to the promoted instance. This is a read-only field, returned to the + // user as information. This field can exist even if a standalone instance + // does not yet have a replica, or had a DR replica that was deleted. + PsaWriteEndpoint *string `protobuf:"bytes,1,opt,name=psa_write_endpoint,json=psaWriteEndpoint,proto3,oneof" json:"psa_write_endpoint,omitempty"` + // Optional. If the instance is a primary instance, then this field identifies + // the disaster recovery (DR) replica. A DR replica is an optional + // configuration for Enterprise Plus edition instances. If the instance is a + // read replica, then the field is not set. Set this field to a replica name + // to designate a DR replica for a primary instance. Remove the replica name + // to remove the DR replica designation. + FailoverDrReplicaName *string `protobuf:"bytes,2,opt,name=failover_dr_replica_name,json=failoverDrReplicaName,proto3,oneof" json:"failover_dr_replica_name,omitempty"` + // Output only. Read-only field that indicates whether the replica is a DR + // replica. This field is not set if the instance is a primary instance. + DrReplica *bool `protobuf:"varint,4,opt,name=dr_replica,json=drReplica,proto3,oneof" json:"dr_replica,omitempty"` +} + +func (x *ReplicationCluster) Reset() { + *x = ReplicationCluster{} + if protoimpl.UnsafeEnabled { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ReplicationCluster) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReplicationCluster) ProtoMessage() {} + +func (x *ReplicationCluster) ProtoReflect() protoreflect.Message { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_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 ReplicationCluster.ProtoReflect.Descriptor instead. +func (*ReplicationCluster) Descriptor() ([]byte, []int) { + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{16} +} + +func (x *ReplicationCluster) GetPsaWriteEndpoint() string { + if x != nil && x.PsaWriteEndpoint != nil { + return *x.PsaWriteEndpoint + } + return "" +} + +func (x *ReplicationCluster) GetFailoverDrReplicaName() string { + if x != nil && x.FailoverDrReplicaName != nil { + return *x.FailoverDrReplicaName + } + return "" +} + +func (x *ReplicationCluster) GetDrReplica() bool { + if x != nil && x.DrReplica != nil { + return *x.DrReplica + } + return false +} + +// An available database version. It can be a major or a minor version. +type AvailableDatabaseVersion struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // The version's major version name. + MajorVersion *string `protobuf:"bytes,3,opt,name=major_version,json=majorVersion,proto3,oneof" json:"major_version,omitempty"` + // The database version name. For MySQL 8.0, this string provides the database + // major and minor version. + Name *string `protobuf:"bytes,8,opt,name=name,proto3,oneof" json:"name,omitempty"` + // The database version's display name. + DisplayName *string `protobuf:"bytes,9,opt,name=display_name,json=displayName,proto3,oneof" json:"display_name,omitempty"` +} + +func (x *AvailableDatabaseVersion) Reset() { + *x = AvailableDatabaseVersion{} + if protoimpl.UnsafeEnabled { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AvailableDatabaseVersion) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AvailableDatabaseVersion) ProtoMessage() {} + +func (x *AvailableDatabaseVersion) ProtoReflect() protoreflect.Message { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_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 AvailableDatabaseVersion.ProtoReflect.Descriptor instead. +func (*AvailableDatabaseVersion) Descriptor() ([]byte, []int) { + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{17} +} + +func (x *AvailableDatabaseVersion) GetMajorVersion() string { + if x != nil && x.MajorVersion != nil { + return *x.MajorVersion + } + return "" +} + +func (x *AvailableDatabaseVersion) GetName() string { + if x != nil && x.Name != nil { + return *x.Name + } + return "" +} + +func (x *AvailableDatabaseVersion) GetDisplayName() string { + if x != nil && x.DisplayName != nil { + return *x.DisplayName + } + return "" +} + // Database list response. type DatabasesListResponse struct { state protoimpl.MessageState @@ -3993,7 +4452,7 @@ type DatabasesListResponse struct { func (x *DatabasesListResponse) Reset() { *x = DatabasesListResponse{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[15] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4006,7 +4465,7 @@ func (x *DatabasesListResponse) String() string { func (*DatabasesListResponse) ProtoMessage() {} func (x *DatabasesListResponse) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[15] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4019,7 +4478,7 @@ func (x *DatabasesListResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use DatabasesListResponse.ProtoReflect.Descriptor instead. func (*DatabasesListResponse) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{15} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{18} } func (x *DatabasesListResponse) GetKind() string { @@ -4057,7 +4516,7 @@ type DemoteMasterConfiguration struct { func (x *DemoteMasterConfiguration) Reset() { *x = DemoteMasterConfiguration{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[16] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4070,7 +4529,7 @@ func (x *DemoteMasterConfiguration) String() string { func (*DemoteMasterConfiguration) ProtoMessage() {} func (x *DemoteMasterConfiguration) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[16] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4083,7 +4542,7 @@ func (x *DemoteMasterConfiguration) ProtoReflect() protoreflect.Message { // Deprecated: Use DemoteMasterConfiguration.ProtoReflect.Descriptor instead. func (*DemoteMasterConfiguration) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{16} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{19} } func (x *DemoteMasterConfiguration) GetKind() string { @@ -4129,7 +4588,7 @@ type DemoteMasterContext struct { func (x *DemoteMasterContext) Reset() { *x = DemoteMasterContext{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[17] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4142,7 +4601,7 @@ func (x *DemoteMasterContext) String() string { func (*DemoteMasterContext) ProtoMessage() {} func (x *DemoteMasterContext) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[17] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4155,7 +4614,7 @@ func (x *DemoteMasterContext) ProtoReflect() protoreflect.Message { // Deprecated: Use DemoteMasterContext.ProtoReflect.Descriptor instead. func (*DemoteMasterContext) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{17} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{20} } func (x *DemoteMasterContext) GetKind() string { @@ -4218,7 +4677,7 @@ type DemoteMasterMySqlReplicaConfiguration struct { func (x *DemoteMasterMySqlReplicaConfiguration) Reset() { *x = DemoteMasterMySqlReplicaConfiguration{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[18] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4231,7 +4690,7 @@ func (x *DemoteMasterMySqlReplicaConfiguration) String() string { func (*DemoteMasterMySqlReplicaConfiguration) ProtoMessage() {} func (x *DemoteMasterMySqlReplicaConfiguration) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[18] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4244,7 +4703,7 @@ func (x *DemoteMasterMySqlReplicaConfiguration) ProtoReflect() protoreflect.Mess // Deprecated: Use DemoteMasterMySqlReplicaConfiguration.ProtoReflect.Descriptor instead. func (*DemoteMasterMySqlReplicaConfiguration) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{18} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{21} } func (x *DemoteMasterMySqlReplicaConfiguration) GetKind() string { @@ -4306,7 +4765,7 @@ type DemoteContext struct { func (x *DemoteContext) Reset() { *x = DemoteContext{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[19] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4319,7 +4778,7 @@ func (x *DemoteContext) String() string { func (*DemoteContext) ProtoMessage() {} func (x *DemoteContext) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[19] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4332,7 +4791,7 @@ func (x *DemoteContext) ProtoReflect() protoreflect.Message { // Deprecated: Use DemoteContext.ProtoReflect.Descriptor instead. func (*DemoteContext) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{19} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{22} } func (x *DemoteContext) GetKind() string { @@ -4392,7 +4851,7 @@ type ExportContext struct { func (x *ExportContext) Reset() { *x = ExportContext{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[20] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4405,7 +4864,7 @@ func (x *ExportContext) String() string { func (*ExportContext) ProtoMessage() {} func (x *ExportContext) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[20] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4418,7 +4877,7 @@ func (x *ExportContext) ProtoReflect() protoreflect.Message { // Deprecated: Use ExportContext.ProtoReflect.Descriptor instead. func (*ExportContext) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{20} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{23} } func (x *ExportContext) GetUri() string { @@ -4493,7 +4952,7 @@ type FailoverContext struct { func (x *FailoverContext) Reset() { *x = FailoverContext{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[21] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4506,7 +4965,7 @@ func (x *FailoverContext) String() string { func (*FailoverContext) ProtoMessage() {} func (x *FailoverContext) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[21] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4519,7 +4978,7 @@ func (x *FailoverContext) ProtoReflect() protoreflect.Message { // Deprecated: Use FailoverContext.ProtoReflect.Descriptor instead. func (*FailoverContext) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{21} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{24} } func (x *FailoverContext) GetSettingsVersion() int64 { @@ -4581,7 +5040,7 @@ type Flag struct { func (x *Flag) Reset() { *x = Flag{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[22] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4594,7 +5053,7 @@ func (x *Flag) String() string { func (*Flag) ProtoMessage() {} func (x *Flag) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[22] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4607,7 +5066,7 @@ func (x *Flag) ProtoReflect() protoreflect.Message { // Deprecated: Use Flag.ProtoReflect.Descriptor instead. func (*Flag) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{22} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{25} } func (x *Flag) GetName() string { @@ -4695,7 +5154,7 @@ type FlagsListResponse struct { func (x *FlagsListResponse) Reset() { *x = FlagsListResponse{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[23] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4708,7 +5167,7 @@ func (x *FlagsListResponse) String() string { func (*FlagsListResponse) ProtoMessage() {} func (x *FlagsListResponse) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[23] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4721,7 +5180,7 @@ func (x *FlagsListResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use FlagsListResponse.ProtoReflect.Descriptor instead. func (*FlagsListResponse) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{23} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{26} } func (x *FlagsListResponse) GetKind() string { @@ -4767,12 +5226,14 @@ type ImportContext struct { ImportUser string `protobuf:"bytes,6,opt,name=import_user,json=importUser,proto3" json:"import_user,omitempty"` // Import parameters specific to SQL Server .BAK files BakImportOptions *ImportContext_SqlBakImportOptions `protobuf:"bytes,7,opt,name=bak_import_options,json=bakImportOptions,proto3" json:"bak_import_options,omitempty"` + // Optional. Options for importing data from SQL statements. + SqlImportOptions *ImportContext_SqlImportOptions `protobuf:"bytes,8,opt,name=sql_import_options,json=sqlImportOptions,proto3" json:"sql_import_options,omitempty"` } func (x *ImportContext) Reset() { *x = ImportContext{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[24] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4785,7 +5246,7 @@ func (x *ImportContext) String() string { func (*ImportContext) ProtoMessage() {} func (x *ImportContext) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[24] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4798,7 +5259,7 @@ func (x *ImportContext) ProtoReflect() protoreflect.Message { // Deprecated: Use ImportContext.ProtoReflect.Descriptor instead. func (*ImportContext) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{24} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{27} } func (x *ImportContext) GetUri() string { @@ -4850,6 +5311,13 @@ func (x *ImportContext) GetBakImportOptions() *ImportContext_SqlBakImportOptions return nil } +func (x *ImportContext) GetSqlImportOptions() *ImportContext_SqlImportOptions { + if x != nil { + return x.SqlImportOptions + } + return nil +} + // Database instance clone request. type InstancesCloneRequest struct { state protoimpl.MessageState @@ -4863,7 +5331,7 @@ type InstancesCloneRequest struct { func (x *InstancesCloneRequest) Reset() { *x = InstancesCloneRequest{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[25] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4876,7 +5344,7 @@ func (x *InstancesCloneRequest) String() string { func (*InstancesCloneRequest) ProtoMessage() {} func (x *InstancesCloneRequest) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[25] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4889,7 +5357,7 @@ func (x *InstancesCloneRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use InstancesCloneRequest.ProtoReflect.Descriptor instead. func (*InstancesCloneRequest) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{25} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{28} } func (x *InstancesCloneRequest) GetCloneContext() *CloneContext { @@ -4912,7 +5380,7 @@ type InstancesDemoteMasterRequest struct { func (x *InstancesDemoteMasterRequest) Reset() { *x = InstancesDemoteMasterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[26] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4925,7 +5393,7 @@ func (x *InstancesDemoteMasterRequest) String() string { func (*InstancesDemoteMasterRequest) ProtoMessage() {} func (x *InstancesDemoteMasterRequest) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[26] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4938,7 +5406,7 @@ func (x *InstancesDemoteMasterRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use InstancesDemoteMasterRequest.ProtoReflect.Descriptor instead. func (*InstancesDemoteMasterRequest) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{26} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{29} } func (x *InstancesDemoteMasterRequest) GetDemoteMasterContext() *DemoteMasterContext { @@ -4963,7 +5431,7 @@ type InstancesDemoteRequest struct { func (x *InstancesDemoteRequest) Reset() { *x = InstancesDemoteRequest{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[27] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4976,7 +5444,7 @@ func (x *InstancesDemoteRequest) String() string { func (*InstancesDemoteRequest) ProtoMessage() {} func (x *InstancesDemoteRequest) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[27] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4989,7 +5457,7 @@ func (x *InstancesDemoteRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use InstancesDemoteRequest.ProtoReflect.Descriptor instead. func (*InstancesDemoteRequest) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{27} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{30} } func (x *InstancesDemoteRequest) GetDemoteContext() *DemoteContext { @@ -5012,7 +5480,7 @@ type InstancesExportRequest struct { func (x *InstancesExportRequest) Reset() { *x = InstancesExportRequest{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[28] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5025,7 +5493,7 @@ func (x *InstancesExportRequest) String() string { func (*InstancesExportRequest) ProtoMessage() {} func (x *InstancesExportRequest) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[28] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5038,7 +5506,7 @@ func (x *InstancesExportRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use InstancesExportRequest.ProtoReflect.Descriptor instead. func (*InstancesExportRequest) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{28} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{31} } func (x *InstancesExportRequest) GetExportContext() *ExportContext { @@ -5061,7 +5529,7 @@ type InstancesFailoverRequest struct { func (x *InstancesFailoverRequest) Reset() { *x = InstancesFailoverRequest{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[29] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5074,7 +5542,7 @@ func (x *InstancesFailoverRequest) String() string { func (*InstancesFailoverRequest) ProtoMessage() {} func (x *InstancesFailoverRequest) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[29] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5087,7 +5555,7 @@ func (x *InstancesFailoverRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use InstancesFailoverRequest.ProtoReflect.Descriptor instead. func (*InstancesFailoverRequest) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{29} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{32} } func (x *InstancesFailoverRequest) GetFailoverContext() *FailoverContext { @@ -5110,7 +5578,7 @@ type InstancesImportRequest struct { func (x *InstancesImportRequest) Reset() { *x = InstancesImportRequest{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[30] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5123,7 +5591,7 @@ func (x *InstancesImportRequest) String() string { func (*InstancesImportRequest) ProtoMessage() {} func (x *InstancesImportRequest) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[30] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5136,7 +5604,7 @@ func (x *InstancesImportRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use InstancesImportRequest.ProtoReflect.Descriptor instead. func (*InstancesImportRequest) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{30} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{33} } func (x *InstancesImportRequest) GetImportContext() *ImportContext { @@ -5159,7 +5627,7 @@ type MySqlSyncConfig struct { func (x *MySqlSyncConfig) Reset() { *x = MySqlSyncConfig{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[31] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5172,7 +5640,7 @@ func (x *MySqlSyncConfig) String() string { func (*MySqlSyncConfig) ProtoMessage() {} func (x *MySqlSyncConfig) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[31] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5185,7 +5653,7 @@ func (x *MySqlSyncConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use MySqlSyncConfig.ProtoReflect.Descriptor instead. func (*MySqlSyncConfig) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{31} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{34} } func (x *MySqlSyncConfig) GetInitialSyncFlags() []*SyncFlags { @@ -5215,7 +5683,7 @@ type InstancesListResponse struct { func (x *InstancesListResponse) Reset() { *x = InstancesListResponse{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[32] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5228,7 +5696,7 @@ func (x *InstancesListResponse) String() string { func (*InstancesListResponse) ProtoMessage() {} func (x *InstancesListResponse) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[32] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5241,7 +5709,7 @@ func (x *InstancesListResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use InstancesListResponse.ProtoReflect.Descriptor instead. func (*InstancesListResponse) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{32} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{35} } func (x *InstancesListResponse) GetKind() string { @@ -5288,7 +5756,7 @@ type InstancesListServerCasResponse struct { func (x *InstancesListServerCasResponse) Reset() { *x = InstancesListServerCasResponse{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[33] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5301,7 +5769,7 @@ func (x *InstancesListServerCasResponse) String() string { func (*InstancesListServerCasResponse) ProtoMessage() {} func (x *InstancesListServerCasResponse) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[33] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5314,7 +5782,7 @@ func (x *InstancesListServerCasResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use InstancesListServerCasResponse.ProtoReflect.Descriptor instead. func (*InstancesListServerCasResponse) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{33} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{36} } func (x *InstancesListServerCasResponse) GetCerts() []*SslCert { @@ -5351,7 +5819,7 @@ type InstancesRestoreBackupRequest struct { func (x *InstancesRestoreBackupRequest) Reset() { *x = InstancesRestoreBackupRequest{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[34] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5364,7 +5832,7 @@ func (x *InstancesRestoreBackupRequest) String() string { func (*InstancesRestoreBackupRequest) ProtoMessage() {} func (x *InstancesRestoreBackupRequest) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[34] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5377,7 +5845,7 @@ func (x *InstancesRestoreBackupRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use InstancesRestoreBackupRequest.ProtoReflect.Descriptor instead. func (*InstancesRestoreBackupRequest) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{34} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{37} } func (x *InstancesRestoreBackupRequest) GetRestoreBackupContext() *RestoreBackupContext { @@ -5400,7 +5868,7 @@ type InstancesRotateServerCaRequest struct { func (x *InstancesRotateServerCaRequest) Reset() { *x = InstancesRotateServerCaRequest{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[35] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5413,7 +5881,7 @@ func (x *InstancesRotateServerCaRequest) String() string { func (*InstancesRotateServerCaRequest) ProtoMessage() {} func (x *InstancesRotateServerCaRequest) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[35] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5426,7 +5894,7 @@ func (x *InstancesRotateServerCaRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use InstancesRotateServerCaRequest.ProtoReflect.Descriptor instead. func (*InstancesRotateServerCaRequest) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{35} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{38} } func (x *InstancesRotateServerCaRequest) GetRotateServerCaContext() *RotateServerCaContext { @@ -5449,7 +5917,7 @@ type InstancesTruncateLogRequest struct { func (x *InstancesTruncateLogRequest) Reset() { *x = InstancesTruncateLogRequest{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[36] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5462,7 +5930,7 @@ func (x *InstancesTruncateLogRequest) String() string { func (*InstancesTruncateLogRequest) ProtoMessage() {} func (x *InstancesTruncateLogRequest) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[36] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5475,7 +5943,7 @@ func (x *InstancesTruncateLogRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use InstancesTruncateLogRequest.ProtoReflect.Descriptor instead. func (*InstancesTruncateLogRequest) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{36} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{39} } func (x *InstancesTruncateLogRequest) GetTruncateLogContext() *TruncateLogContext { @@ -5485,6 +5953,55 @@ func (x *InstancesTruncateLogRequest) GetTruncateLogContext() *TruncateLogContex return nil } +// Request to acquire an SSRS lease for an instance. +type InstancesAcquireSsrsLeaseRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Contains details about the acquire SSRS lease operation. + AcquireSsrsLeaseContext *AcquireSsrsLeaseContext `protobuf:"bytes,1,opt,name=acquire_ssrs_lease_context,json=acquireSsrsLeaseContext,proto3" json:"acquire_ssrs_lease_context,omitempty"` +} + +func (x *InstancesAcquireSsrsLeaseRequest) Reset() { + *x = InstancesAcquireSsrsLeaseRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[40] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *InstancesAcquireSsrsLeaseRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*InstancesAcquireSsrsLeaseRequest) ProtoMessage() {} + +func (x *InstancesAcquireSsrsLeaseRequest) ProtoReflect() protoreflect.Message { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_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 InstancesAcquireSsrsLeaseRequest.ProtoReflect.Descriptor instead. +func (*InstancesAcquireSsrsLeaseRequest) Descriptor() ([]byte, []int) { + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{40} +} + +func (x *InstancesAcquireSsrsLeaseRequest) GetAcquireSsrsLeaseContext() *AcquireSsrsLeaseContext { + if x != nil { + return x.AcquireSsrsLeaseContext + } + return nil +} + // Perform disk shrink context. type PerformDiskShrinkContext struct { state protoimpl.MessageState @@ -5498,7 +6015,7 @@ type PerformDiskShrinkContext struct { func (x *PerformDiskShrinkContext) Reset() { *x = PerformDiskShrinkContext{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[37] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5511,7 +6028,7 @@ func (x *PerformDiskShrinkContext) String() string { func (*PerformDiskShrinkContext) ProtoMessage() {} func (x *PerformDiskShrinkContext) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[37] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5524,7 +6041,7 @@ func (x *PerformDiskShrinkContext) ProtoReflect() protoreflect.Message { // Deprecated: Use PerformDiskShrinkContext.ProtoReflect.Descriptor instead. func (*PerformDiskShrinkContext) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{37} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{41} } func (x *PerformDiskShrinkContext) GetTargetSizeGb() int64 { @@ -5551,7 +6068,7 @@ type SqlInstancesGetDiskShrinkConfigResponse struct { func (x *SqlInstancesGetDiskShrinkConfigResponse) Reset() { *x = SqlInstancesGetDiskShrinkConfigResponse{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[38] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5564,7 +6081,7 @@ func (x *SqlInstancesGetDiskShrinkConfigResponse) String() string { func (*SqlInstancesGetDiskShrinkConfigResponse) ProtoMessage() {} func (x *SqlInstancesGetDiskShrinkConfigResponse) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[38] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5577,7 +6094,7 @@ func (x *SqlInstancesGetDiskShrinkConfigResponse) ProtoReflect() protoreflect.Me // Deprecated: Use SqlInstancesGetDiskShrinkConfigResponse.ProtoReflect.Descriptor instead. func (*SqlInstancesGetDiskShrinkConfigResponse) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{38} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{42} } func (x *SqlInstancesGetDiskShrinkConfigResponse) GetKind() string { @@ -5618,7 +6135,7 @@ type SqlInstancesVerifyExternalSyncSettingsResponse struct { func (x *SqlInstancesVerifyExternalSyncSettingsResponse) Reset() { *x = SqlInstancesVerifyExternalSyncSettingsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[39] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5631,7 +6148,7 @@ func (x *SqlInstancesVerifyExternalSyncSettingsResponse) String() string { func (*SqlInstancesVerifyExternalSyncSettingsResponse) ProtoMessage() {} func (x *SqlInstancesVerifyExternalSyncSettingsResponse) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[39] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5644,7 +6161,7 @@ func (x *SqlInstancesVerifyExternalSyncSettingsResponse) ProtoReflect() protoref // Deprecated: Use SqlInstancesVerifyExternalSyncSettingsResponse.ProtoReflect.Descriptor instead. func (*SqlInstancesVerifyExternalSyncSettingsResponse) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{39} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{43} } func (x *SqlInstancesVerifyExternalSyncSettingsResponse) GetKind() string { @@ -5686,7 +6203,7 @@ type SqlExternalSyncSettingError struct { func (x *SqlExternalSyncSettingError) Reset() { *x = SqlExternalSyncSettingError{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[40] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5699,7 +6216,7 @@ func (x *SqlExternalSyncSettingError) String() string { func (*SqlExternalSyncSettingError) ProtoMessage() {} func (x *SqlExternalSyncSettingError) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[40] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5712,7 +6229,7 @@ func (x *SqlExternalSyncSettingError) ProtoReflect() protoreflect.Message { // Deprecated: Use SqlExternalSyncSettingError.ProtoReflect.Descriptor instead. func (*SqlExternalSyncSettingError) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{40} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{44} } func (x *SqlExternalSyncSettingError) GetKind() string { @@ -5749,7 +6266,7 @@ type IpConfiguration struct { // `/projects/myProject/global/networks/default`. This setting can // be updated, but it cannot be removed after it is set. PrivateNetwork string `protobuf:"bytes,2,opt,name=private_network,json=privateNetwork,proto3" json:"private_network,omitempty"` - // Use `ssl_mode` instead for MySQL and PostgreSQL. SQL Server uses this flag. + // Use `ssl_mode` instead. // // Whether SSL/TLS connections over IP are enforced. // If set to false, then allow both non-SSL/non-TLS and SSL/TLS connections. @@ -5773,23 +6290,28 @@ type IpConfiguration struct { // Controls connectivity to private IP instances from Google services, // such as BigQuery. EnablePrivatePathForGoogleCloudServices *wrappers.BoolValue `protobuf:"bytes,7,opt,name=enable_private_path_for_google_cloud_services,json=enablePrivatePathForGoogleCloudServices,proto3" json:"enable_private_path_for_google_cloud_services,omitempty"` - // Specify how SSL/TLS is enforced in database connections. MySQL and - // PostgreSQL use the `ssl_mode` flag. If you must use the `require_ssl` flag - // for backward compatibility, then only the following value pairs are valid: + // Specify how SSL/TLS is enforced in database connections. If you must use + // the `require_ssl` flag for backward compatibility, then only the following + // value pairs are valid: + // + // For PostgreSQL and MySQL: // // * `ssl_mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED` and `require_ssl=false` // * `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=false` // * `ssl_mode=TRUSTED_CLIENT_CERTIFICATE_REQUIRED` and `require_ssl=true` // - // The value of `ssl_mode` gets priority over the value of `require_ssl`. For - // example, for the pair `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=false`, - // the `ssl_mode=ENCRYPTED_ONLY` means only accept SSL connections, while the - // `require_ssl=false` means accept both non-SSL and SSL connections. MySQL - // and PostgreSQL databases respect `ssl_mode` in this case and accept only - // SSL connections. + // For SQL Server: + // + // * `ssl_mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED` and `require_ssl=false` + // * `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=true` + // + // The value of `ssl_mode` has priority over the value of `require_ssl`. // - // SQL Server uses the `require_ssl` flag. You can set the value for this flag - // to `true` or `false`. + // For example, for the pair `ssl_mode=ENCRYPTED_ONLY` and + // `require_ssl=false`, `ssl_mode=ENCRYPTED_ONLY` means accept only SSL + // connections, while `require_ssl=false` means accept both non-SSL + // and SSL connections. In this case, MySQL and PostgreSQL databases respect + // `ssl_mode` and accepts only SSL connections. SslMode IpConfiguration_SslMode `protobuf:"varint,8,opt,name=ssl_mode,json=sslMode,proto3,enum=mockgcp.cloud.sql.v1beta4.IpConfiguration_SslMode" json:"ssl_mode,omitempty"` // PSC settings for this instance. PscConfig *PscConfig `protobuf:"bytes,9,opt,name=psc_config,json=pscConfig,proto3,oneof" json:"psc_config,omitempty"` @@ -5798,7 +6320,7 @@ type IpConfiguration struct { func (x *IpConfiguration) Reset() { *x = IpConfiguration{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[41] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5811,7 +6333,7 @@ func (x *IpConfiguration) String() string { func (*IpConfiguration) ProtoMessage() {} func (x *IpConfiguration) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[41] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5824,7 +6346,7 @@ func (x *IpConfiguration) ProtoReflect() protoreflect.Message { // Deprecated: Use IpConfiguration.ProtoReflect.Descriptor instead. func (*IpConfiguration) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{41} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{45} } func (x *IpConfiguration) GetIpv4Enabled() *wrappers.BoolValue { @@ -5903,7 +6425,7 @@ type PscConfig struct { func (x *PscConfig) Reset() { *x = PscConfig{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[42] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5916,7 +6438,7 @@ func (x *PscConfig) String() string { func (*PscConfig) ProtoMessage() {} func (x *PscConfig) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[42] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5929,7 +6451,7 @@ func (x *PscConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use PscConfig.ProtoReflect.Descriptor instead. func (*PscConfig) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{42} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{46} } func (x *PscConfig) GetPscEnabled() bool { @@ -5969,7 +6491,7 @@ type IpMapping struct { func (x *IpMapping) Reset() { *x = IpMapping{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[43] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5982,7 +6504,7 @@ func (x *IpMapping) String() string { func (*IpMapping) ProtoMessage() {} func (x *IpMapping) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[43] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5995,7 +6517,7 @@ func (x *IpMapping) ProtoReflect() protoreflect.Message { // Deprecated: Use IpMapping.ProtoReflect.Descriptor instead. func (*IpMapping) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{43} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{47} } func (x *IpMapping) GetType() SqlIpAddressType { @@ -6047,7 +6569,7 @@ type LocationPreference struct { func (x *LocationPreference) Reset() { *x = LocationPreference{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[44] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6060,7 +6582,7 @@ func (x *LocationPreference) String() string { func (*LocationPreference) ProtoMessage() {} func (x *LocationPreference) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[44] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6073,7 +6595,7 @@ func (x *LocationPreference) ProtoReflect() protoreflect.Message { // Deprecated: Use LocationPreference.ProtoReflect.Descriptor instead. func (*LocationPreference) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{44} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{48} } // Deprecated: Do not use. @@ -6127,7 +6649,7 @@ type MaintenanceWindow struct { func (x *MaintenanceWindow) Reset() { *x = MaintenanceWindow{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[45] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6140,7 +6662,7 @@ func (x *MaintenanceWindow) String() string { func (*MaintenanceWindow) ProtoMessage() {} func (x *MaintenanceWindow) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[45] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6153,7 +6675,7 @@ func (x *MaintenanceWindow) ProtoReflect() protoreflect.Message { // Deprecated: Use MaintenanceWindow.ProtoReflect.Descriptor instead. func (*MaintenanceWindow) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{45} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{49} } func (x *MaintenanceWindow) GetHour() *wrappers.Int32Value { @@ -6209,7 +6731,7 @@ type DenyMaintenancePeriod struct { func (x *DenyMaintenancePeriod) Reset() { *x = DenyMaintenancePeriod{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[46] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6222,7 +6744,7 @@ func (x *DenyMaintenancePeriod) String() string { func (*DenyMaintenancePeriod) ProtoMessage() {} func (x *DenyMaintenancePeriod) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[46] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6235,7 +6757,7 @@ func (x *DenyMaintenancePeriod) ProtoReflect() protoreflect.Message { // Deprecated: Use DenyMaintenancePeriod.ProtoReflect.Descriptor instead. func (*DenyMaintenancePeriod) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{46} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{50} } func (x *DenyMaintenancePeriod) GetStartDate() string { @@ -6286,7 +6808,7 @@ type InsightsConfig struct { func (x *InsightsConfig) Reset() { *x = InsightsConfig{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[47] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6299,7 +6821,7 @@ func (x *InsightsConfig) String() string { func (*InsightsConfig) ProtoMessage() {} func (x *InsightsConfig) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[47] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6312,7 +6834,7 @@ func (x *InsightsConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use InsightsConfig.ProtoReflect.Descriptor instead. func (*InsightsConfig) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{47} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{51} } func (x *InsightsConfig) GetQueryInsightsEnabled() bool { @@ -6390,7 +6912,7 @@ type MySqlReplicaConfiguration struct { func (x *MySqlReplicaConfiguration) Reset() { *x = MySqlReplicaConfiguration{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[48] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6403,7 +6925,7 @@ func (x *MySqlReplicaConfiguration) String() string { func (*MySqlReplicaConfiguration) ProtoMessage() {} func (x *MySqlReplicaConfiguration) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[48] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6416,7 +6938,7 @@ func (x *MySqlReplicaConfiguration) ProtoReflect() protoreflect.Message { // Deprecated: Use MySqlReplicaConfiguration.ProtoReflect.Descriptor instead. func (*MySqlReplicaConfiguration) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{48} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{52} } func (x *MySqlReplicaConfiguration) GetDumpFilePath() string { @@ -6526,7 +7048,7 @@ type OnPremisesConfiguration struct { func (x *OnPremisesConfiguration) Reset() { *x = OnPremisesConfiguration{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[49] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6539,7 +7061,7 @@ func (x *OnPremisesConfiguration) String() string { func (*OnPremisesConfiguration) ProtoMessage() {} func (x *OnPremisesConfiguration) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[49] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6552,7 +7074,7 @@ func (x *OnPremisesConfiguration) ProtoReflect() protoreflect.Message { // Deprecated: Use OnPremisesConfiguration.ProtoReflect.Descriptor instead. func (*OnPremisesConfiguration) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{49} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{53} } func (x *OnPremisesConfiguration) GetHostPort() string { @@ -6633,7 +7155,7 @@ type DiskEncryptionConfiguration struct { func (x *DiskEncryptionConfiguration) Reset() { *x = DiskEncryptionConfiguration{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[50] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6646,7 +7168,7 @@ func (x *DiskEncryptionConfiguration) String() string { func (*DiskEncryptionConfiguration) ProtoMessage() {} func (x *DiskEncryptionConfiguration) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[50] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6659,7 +7181,7 @@ func (x *DiskEncryptionConfiguration) ProtoReflect() protoreflect.Message { // Deprecated: Use DiskEncryptionConfiguration.ProtoReflect.Descriptor instead. func (*DiskEncryptionConfiguration) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{50} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{54} } func (x *DiskEncryptionConfiguration) GetKmsKeyName() string { @@ -6691,7 +7213,7 @@ type DiskEncryptionStatus struct { func (x *DiskEncryptionStatus) Reset() { *x = DiskEncryptionStatus{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[51] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6704,7 +7226,7 @@ func (x *DiskEncryptionStatus) String() string { func (*DiskEncryptionStatus) ProtoMessage() {} func (x *DiskEncryptionStatus) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[51] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6717,7 +7239,7 @@ func (x *DiskEncryptionStatus) ProtoReflect() protoreflect.Message { // Deprecated: Use DiskEncryptionStatus.ProtoReflect.Descriptor instead. func (*DiskEncryptionStatus) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{51} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{55} } func (x *DiskEncryptionStatus) GetKmsKeyVersionName() string { @@ -6796,12 +7318,14 @@ type Operation struct { SelfLink string `protobuf:"bytes,14,opt,name=self_link,json=selfLink,proto3" json:"self_link,omitempty"` // The project ID of the target instance related to this operation. TargetProject string `protobuf:"bytes,15,opt,name=target_project,json=targetProject,proto3" json:"target_project,omitempty"` + // The context for acquire SSRS lease operation, if applicable. + AcquireSsrsLeaseContext *AcquireSsrsLeaseContext `protobuf:"bytes,20,opt,name=acquire_ssrs_lease_context,json=acquireSsrsLeaseContext,proto3" json:"acquire_ssrs_lease_context,omitempty"` } func (x *Operation) Reset() { *x = Operation{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[52] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6814,7 +7338,7 @@ func (x *Operation) String() string { func (*Operation) ProtoMessage() {} func (x *Operation) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[52] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6827,7 +7351,7 @@ func (x *Operation) ProtoReflect() protoreflect.Message { // Deprecated: Use Operation.ProtoReflect.Descriptor instead. func (*Operation) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{52} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{56} } func (x *Operation) GetKind() string { @@ -6949,6 +7473,13 @@ func (x *Operation) GetTargetProject() string { return "" } +func (x *Operation) GetAcquireSsrsLeaseContext() *AcquireSsrsLeaseContext { + if x != nil { + return x.AcquireSsrsLeaseContext + } + return nil +} + // Database instance operation error. type OperationError struct { state protoimpl.MessageState @@ -6966,7 +7497,7 @@ type OperationError struct { func (x *OperationError) Reset() { *x = OperationError{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[53] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6979,7 +7510,7 @@ func (x *OperationError) String() string { func (*OperationError) ProtoMessage() {} func (x *OperationError) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[53] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6992,7 +7523,7 @@ func (x *OperationError) ProtoReflect() protoreflect.Message { // Deprecated: Use OperationError.ProtoReflect.Descriptor instead. func (*OperationError) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{53} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{57} } func (x *OperationError) GetKind() string { @@ -7031,7 +7562,7 @@ type OperationErrors struct { func (x *OperationErrors) Reset() { *x = OperationErrors{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[54] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7044,7 +7575,7 @@ func (x *OperationErrors) String() string { func (*OperationErrors) ProtoMessage() {} func (x *OperationErrors) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[54] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7057,7 +7588,7 @@ func (x *OperationErrors) ProtoReflect() protoreflect.Message { // Deprecated: Use OperationErrors.ProtoReflect.Descriptor instead. func (*OperationErrors) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{54} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{58} } func (x *OperationErrors) GetKind() string { @@ -7103,7 +7634,7 @@ type PasswordValidationPolicy struct { func (x *PasswordValidationPolicy) Reset() { *x = PasswordValidationPolicy{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[55] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7116,7 +7647,7 @@ func (x *PasswordValidationPolicy) String() string { func (*PasswordValidationPolicy) ProtoMessage() {} func (x *PasswordValidationPolicy) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[55] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7129,7 +7660,7 @@ func (x *PasswordValidationPolicy) ProtoReflect() protoreflect.Message { // Deprecated: Use PasswordValidationPolicy.ProtoReflect.Descriptor instead. func (*PasswordValidationPolicy) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{55} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{59} } func (x *PasswordValidationPolicy) GetMinLength() *wrappers.Int32Value { @@ -7200,7 +7731,7 @@ type OperationsListResponse struct { func (x *OperationsListResponse) Reset() { *x = OperationsListResponse{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[56] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7213,7 +7744,7 @@ func (x *OperationsListResponse) String() string { func (*OperationsListResponse) ProtoMessage() {} func (x *OperationsListResponse) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[56] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7226,7 +7757,7 @@ func (x *OperationsListResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use OperationsListResponse.ProtoReflect.Descriptor instead. func (*OperationsListResponse) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{56} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{60} } func (x *OperationsListResponse) GetKind() string { @@ -7280,7 +7811,7 @@ type ReplicaConfiguration struct { func (x *ReplicaConfiguration) Reset() { *x = ReplicaConfiguration{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[57] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7293,7 +7824,7 @@ func (x *ReplicaConfiguration) String() string { func (*ReplicaConfiguration) ProtoMessage() {} func (x *ReplicaConfiguration) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[57] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7306,7 +7837,7 @@ func (x *ReplicaConfiguration) ProtoReflect() protoreflect.Message { // Deprecated: Use ReplicaConfiguration.ProtoReflect.Descriptor instead. func (*ReplicaConfiguration) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{57} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{61} } func (x *ReplicaConfiguration) GetKind() string { @@ -7357,7 +7888,7 @@ type RestoreBackupContext struct { func (x *RestoreBackupContext) Reset() { *x = RestoreBackupContext{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[58] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7370,7 +7901,7 @@ func (x *RestoreBackupContext) String() string { func (*RestoreBackupContext) ProtoMessage() {} func (x *RestoreBackupContext) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[58] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7383,7 +7914,7 @@ func (x *RestoreBackupContext) ProtoReflect() protoreflect.Message { // Deprecated: Use RestoreBackupContext.ProtoReflect.Descriptor instead. func (*RestoreBackupContext) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{58} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{62} } func (x *RestoreBackupContext) GetKind() string { @@ -7430,7 +7961,7 @@ type RotateServerCaContext struct { func (x *RotateServerCaContext) Reset() { *x = RotateServerCaContext{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[59] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7443,7 +7974,7 @@ func (x *RotateServerCaContext) String() string { func (*RotateServerCaContext) ProtoMessage() {} func (x *RotateServerCaContext) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[59] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7456,7 +7987,7 @@ func (x *RotateServerCaContext) ProtoReflect() protoreflect.Message { // Deprecated: Use RotateServerCaContext.ProtoReflect.Descriptor instead. func (*RotateServerCaContext) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{59} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{63} } func (x *RotateServerCaContext) GetKind() string { @@ -7486,7 +8017,7 @@ type DataCacheConfig struct { func (x *DataCacheConfig) Reset() { *x = DataCacheConfig{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[60] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7499,7 +8030,7 @@ func (x *DataCacheConfig) String() string { func (*DataCacheConfig) ProtoMessage() {} func (x *DataCacheConfig) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[60] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7512,7 +8043,7 @@ func (x *DataCacheConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use DataCacheConfig.ProtoReflect.Descriptor instead. func (*DataCacheConfig) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{60} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{64} } func (x *DataCacheConfig) GetDataCacheEnabled() bool { @@ -7637,17 +8168,26 @@ type Settings struct { DeletionProtectionEnabled *wrappers.BoolValue `protobuf:"bytes,33,opt,name=deletion_protection_enabled,json=deletionProtectionEnabled,proto3" json:"deletion_protection_enabled,omitempty"` // Server timezone, relevant only for Cloud SQL for SQL Server. TimeZone string `protobuf:"bytes,34,opt,name=time_zone,json=timeZone,proto3" json:"time_zone,omitempty"` - // Specifies advance machine configuration for the instance - // relevant only for SQL Server. + // Specifies advanced machine configuration for the instances relevant only + // for SQL Server. AdvancedMachineFeatures *AdvancedMachineFeatures `protobuf:"bytes,35,opt,name=advanced_machine_features,json=advancedMachineFeatures,proto3" json:"advanced_machine_features,omitempty"` // Configuration for data cache. DataCacheConfig *DataCacheConfig `protobuf:"bytes,37,opt,name=data_cache_config,json=dataCacheConfig,proto3" json:"data_cache_config,omitempty"` + // Optional. When this parameter is set to true, Cloud SQL instances can + // connect to Vertex AI to pass requests for real-time predictions and + // insights to the AI. The default value is false. This applies only to Cloud + // SQL for PostgreSQL instances. + EnableGoogleMlIntegration *wrappers.BoolValue `protobuf:"bytes,40,opt,name=enable_google_ml_integration,json=enableGoogleMlIntegration,proto3" json:"enable_google_ml_integration,omitempty"` + // Optional. By default, Cloud SQL instances have schema extraction disabled + // for Dataplex. When this parameter is set to true, schema extraction for + // Dataplex on Cloud SQL instances is activated. + EnableDataplexIntegration *wrappers.BoolValue `protobuf:"bytes,41,opt,name=enable_dataplex_integration,json=enableDataplexIntegration,proto3" json:"enable_dataplex_integration,omitempty"` } func (x *Settings) Reset() { *x = Settings{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[61] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7660,7 +8200,7 @@ func (x *Settings) String() string { func (*Settings) ProtoMessage() {} func (x *Settings) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[61] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7673,7 +8213,7 @@ func (x *Settings) ProtoReflect() protoreflect.Message { // Deprecated: Use Settings.ProtoReflect.Descriptor instead. func (*Settings) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{61} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{65} } func (x *Settings) GetSettingsVersion() *wrappers.Int64Value { @@ -7903,6 +8443,20 @@ func (x *Settings) GetDataCacheConfig() *DataCacheConfig { return nil } +func (x *Settings) GetEnableGoogleMlIntegration() *wrappers.BoolValue { + if x != nil { + return x.EnableGoogleMlIntegration + } + return nil +} + +func (x *Settings) GetEnableDataplexIntegration() *wrappers.BoolValue { + if x != nil { + return x.EnableDataplexIntegration + } + return nil +} + // Specifies options for controlling advanced machine features. type AdvancedMachineFeatures struct { state protoimpl.MessageState @@ -7916,7 +8470,7 @@ type AdvancedMachineFeatures struct { func (x *AdvancedMachineFeatures) Reset() { *x = AdvancedMachineFeatures{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[62] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7929,7 +8483,7 @@ func (x *AdvancedMachineFeatures) String() string { func (*AdvancedMachineFeatures) ProtoMessage() {} func (x *AdvancedMachineFeatures) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[62] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7942,7 +8496,7 @@ func (x *AdvancedMachineFeatures) ProtoReflect() protoreflect.Message { // Deprecated: Use AdvancedMachineFeatures.ProtoReflect.Descriptor instead. func (*AdvancedMachineFeatures) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{62} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{66} } func (x *AdvancedMachineFeatures) GetThreadsPerCore() int32 { @@ -7985,7 +8539,7 @@ type SslCert struct { func (x *SslCert) Reset() { *x = SslCert{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[63] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7998,7 +8552,7 @@ func (x *SslCert) String() string { func (*SslCert) ProtoMessage() {} func (x *SslCert) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[63] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8011,7 +8565,7 @@ func (x *SslCert) ProtoReflect() protoreflect.Message { // Deprecated: Use SslCert.ProtoReflect.Descriptor instead. func (*SslCert) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{63} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{67} } func (x *SslCert) GetKind() string { @@ -8093,7 +8647,7 @@ type SslCertDetail struct { func (x *SslCertDetail) Reset() { *x = SslCertDetail{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[64] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8106,7 +8660,7 @@ func (x *SslCertDetail) String() string { func (*SslCertDetail) ProtoMessage() {} func (x *SslCertDetail) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[64] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8119,7 +8673,7 @@ func (x *SslCertDetail) ProtoReflect() protoreflect.Message { // Deprecated: Use SslCertDetail.ProtoReflect.Descriptor instead. func (*SslCertDetail) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{64} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{68} } func (x *SslCertDetail) GetCertInfo() *SslCert { @@ -8151,7 +8705,7 @@ type SslCertsCreateEphemeralRequest struct { func (x *SslCertsCreateEphemeralRequest) Reset() { *x = SslCertsCreateEphemeralRequest{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[65] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8164,7 +8718,7 @@ func (x *SslCertsCreateEphemeralRequest) String() string { func (*SslCertsCreateEphemeralRequest) ProtoMessage() {} func (x *SslCertsCreateEphemeralRequest) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[65] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8177,7 +8731,7 @@ func (x *SslCertsCreateEphemeralRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use SslCertsCreateEphemeralRequest.ProtoReflect.Descriptor instead. func (*SslCertsCreateEphemeralRequest) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{65} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{69} } func (x *SslCertsCreateEphemeralRequest) GetPublicKey() string { @@ -8208,7 +8762,7 @@ type SslCertsInsertRequest struct { func (x *SslCertsInsertRequest) Reset() { *x = SslCertsInsertRequest{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[66] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8221,7 +8775,7 @@ func (x *SslCertsInsertRequest) String() string { func (*SslCertsInsertRequest) ProtoMessage() {} func (x *SslCertsInsertRequest) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[66] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8234,7 +8788,7 @@ func (x *SslCertsInsertRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use SslCertsInsertRequest.ProtoReflect.Descriptor instead. func (*SslCertsInsertRequest) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{66} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{70} } func (x *SslCertsInsertRequest) GetCommonName() string { @@ -8257,7 +8811,7 @@ type SqlInstancesRescheduleMaintenanceRequestBody struct { func (x *SqlInstancesRescheduleMaintenanceRequestBody) Reset() { *x = SqlInstancesRescheduleMaintenanceRequestBody{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[67] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8270,7 +8824,7 @@ func (x *SqlInstancesRescheduleMaintenanceRequestBody) String() string { func (*SqlInstancesRescheduleMaintenanceRequestBody) ProtoMessage() {} func (x *SqlInstancesRescheduleMaintenanceRequestBody) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[67] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8283,7 +8837,7 @@ func (x *SqlInstancesRescheduleMaintenanceRequestBody) ProtoReflect() protorefle // Deprecated: Use SqlInstancesRescheduleMaintenanceRequestBody.ProtoReflect.Descriptor instead. func (*SqlInstancesRescheduleMaintenanceRequestBody) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{67} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{71} } func (x *SqlInstancesRescheduleMaintenanceRequestBody) GetReschedule() *SqlInstancesRescheduleMaintenanceRequestBody_Reschedule { @@ -8314,7 +8868,7 @@ type SslCertsInsertResponse struct { func (x *SslCertsInsertResponse) Reset() { *x = SslCertsInsertResponse{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[68] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8327,7 +8881,7 @@ func (x *SslCertsInsertResponse) String() string { func (*SslCertsInsertResponse) ProtoMessage() {} func (x *SslCertsInsertResponse) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[68] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8340,7 +8894,7 @@ func (x *SslCertsInsertResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use SslCertsInsertResponse.ProtoReflect.Descriptor instead. func (*SslCertsInsertResponse) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{68} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{72} } func (x *SslCertsInsertResponse) GetKind() string { @@ -8386,7 +8940,7 @@ type SslCertsListResponse struct { func (x *SslCertsListResponse) Reset() { *x = SslCertsListResponse{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[69] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8399,7 +8953,7 @@ func (x *SslCertsListResponse) String() string { func (*SslCertsListResponse) ProtoMessage() {} func (x *SslCertsListResponse) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[69] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8412,7 +8966,7 @@ func (x *SslCertsListResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use SslCertsListResponse.ProtoReflect.Descriptor instead. func (*SslCertsListResponse) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{69} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{73} } func (x *SslCertsListResponse) GetKind() string { @@ -8445,7 +8999,7 @@ type TruncateLogContext struct { func (x *TruncateLogContext) Reset() { *x = TruncateLogContext{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[70] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8458,7 +9012,7 @@ func (x *TruncateLogContext) String() string { func (*TruncateLogContext) ProtoMessage() {} func (x *TruncateLogContext) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[70] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8471,7 +9025,7 @@ func (x *TruncateLogContext) ProtoReflect() protoreflect.Message { // Deprecated: Use TruncateLogContext.ProtoReflect.Descriptor instead. func (*TruncateLogContext) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{70} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{74} } func (x *TruncateLogContext) GetKind() string { @@ -8503,7 +9057,7 @@ type SqlActiveDirectoryConfig struct { func (x *SqlActiveDirectoryConfig) Reset() { *x = SqlActiveDirectoryConfig{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[71] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8516,7 +9070,7 @@ func (x *SqlActiveDirectoryConfig) String() string { func (*SqlActiveDirectoryConfig) ProtoMessage() {} func (x *SqlActiveDirectoryConfig) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[71] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8529,7 +9083,7 @@ func (x *SqlActiveDirectoryConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use SqlActiveDirectoryConfig.ProtoReflect.Descriptor instead. func (*SqlActiveDirectoryConfig) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{71} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{75} } func (x *SqlActiveDirectoryConfig) GetKind() string { @@ -8565,7 +9119,7 @@ type SqlServerAuditConfig struct { func (x *SqlServerAuditConfig) Reset() { *x = SqlServerAuditConfig{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[72] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8578,7 +9132,7 @@ func (x *SqlServerAuditConfig) String() string { func (*SqlServerAuditConfig) ProtoMessage() {} func (x *SqlServerAuditConfig) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[72] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8591,7 +9145,7 @@ func (x *SqlServerAuditConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use SqlServerAuditConfig.ProtoReflect.Descriptor instead. func (*SqlServerAuditConfig) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{72} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{76} } func (x *SqlServerAuditConfig) GetKind() string { @@ -8622,6 +9176,84 @@ func (x *SqlServerAuditConfig) GetUploadInterval() *duration.Duration { return nil } +// Acquire SSRS lease context. +type AcquireSsrsLeaseContext struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // The username to be used as the setup login to connect to the database + // server for SSRS setup. + SetupLogin *string `protobuf:"bytes,1,opt,name=setup_login,json=setupLogin,proto3,oneof" json:"setup_login,omitempty"` + // The username to be used as the service login to connect to the report + // database for SSRS setup. + ServiceLogin *string `protobuf:"bytes,2,opt,name=service_login,json=serviceLogin,proto3,oneof" json:"service_login,omitempty"` + // The report database to be used for the SSRS setup. + ReportDatabase *string `protobuf:"bytes,3,opt,name=report_database,json=reportDatabase,proto3,oneof" json:"report_database,omitempty"` + // Lease duration needed for the SSRS setup. + Duration *duration.Duration `protobuf:"bytes,4,opt,name=duration,proto3,oneof" json:"duration,omitempty"` +} + +func (x *AcquireSsrsLeaseContext) Reset() { + *x = AcquireSsrsLeaseContext{} + if protoimpl.UnsafeEnabled { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[77] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AcquireSsrsLeaseContext) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AcquireSsrsLeaseContext) ProtoMessage() {} + +func (x *AcquireSsrsLeaseContext) ProtoReflect() protoreflect.Message { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[77] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AcquireSsrsLeaseContext.ProtoReflect.Descriptor instead. +func (*AcquireSsrsLeaseContext) Descriptor() ([]byte, []int) { + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{77} +} + +func (x *AcquireSsrsLeaseContext) GetSetupLogin() string { + if x != nil && x.SetupLogin != nil { + return *x.SetupLogin + } + return "" +} + +func (x *AcquireSsrsLeaseContext) GetServiceLogin() string { + if x != nil && x.ServiceLogin != nil { + return *x.ServiceLogin + } + return "" +} + +func (x *AcquireSsrsLeaseContext) GetReportDatabase() string { + if x != nil && x.ReportDatabase != nil { + return *x.ReportDatabase + } + return "" +} + +func (x *AcquireSsrsLeaseContext) GetDuration() *duration.Duration { + if x != nil { + return x.Duration + } + return nil +} + type DatabaseInstance_SqlFailoverReplica struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -8640,7 +9272,7 @@ type DatabaseInstance_SqlFailoverReplica struct { func (x *DatabaseInstance_SqlFailoverReplica) Reset() { *x = DatabaseInstance_SqlFailoverReplica{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[73] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8653,7 +9285,7 @@ func (x *DatabaseInstance_SqlFailoverReplica) String() string { func (*DatabaseInstance_SqlFailoverReplica) ProtoMessage() {} func (x *DatabaseInstance_SqlFailoverReplica) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[73] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8702,7 +9334,7 @@ type DatabaseInstance_SqlScheduledMaintenance struct { func (x *DatabaseInstance_SqlScheduledMaintenance) Reset() { *x = DatabaseInstance_SqlScheduledMaintenance{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[74] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8715,7 +9347,7 @@ func (x *DatabaseInstance_SqlScheduledMaintenance) String() string { func (*DatabaseInstance_SqlScheduledMaintenance) ProtoMessage() {} func (x *DatabaseInstance_SqlScheduledMaintenance) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[74] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8786,7 +9418,7 @@ type DatabaseInstance_SqlOutOfDiskReport struct { func (x *DatabaseInstance_SqlOutOfDiskReport) Reset() { *x = DatabaseInstance_SqlOutOfDiskReport{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[75] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8799,7 +9431,7 @@ func (x *DatabaseInstance_SqlOutOfDiskReport) String() string { func (*DatabaseInstance_SqlOutOfDiskReport) ProtoMessage() {} func (x *DatabaseInstance_SqlOutOfDiskReport) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[75] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8852,7 +9484,7 @@ type ExportContext_SqlCsvExportOptions struct { func (x *ExportContext_SqlCsvExportOptions) Reset() { *x = ExportContext_SqlCsvExportOptions{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[76] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8865,7 +9497,7 @@ func (x *ExportContext_SqlCsvExportOptions) String() string { func (*ExportContext_SqlCsvExportOptions) ProtoMessage() {} func (x *ExportContext_SqlCsvExportOptions) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[76] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8878,7 +9510,7 @@ func (x *ExportContext_SqlCsvExportOptions) ProtoReflect() protoreflect.Message // Deprecated: Use ExportContext_SqlCsvExportOptions.ProtoReflect.Descriptor instead. func (*ExportContext_SqlCsvExportOptions) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{20, 0} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{23, 0} } func (x *ExportContext_SqlCsvExportOptions) GetSelectQuery() string { @@ -8937,7 +9569,7 @@ type ExportContext_SqlExportOptions struct { func (x *ExportContext_SqlExportOptions) Reset() { *x = ExportContext_SqlExportOptions{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[77] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8950,7 +9582,7 @@ func (x *ExportContext_SqlExportOptions) String() string { func (*ExportContext_SqlExportOptions) ProtoMessage() {} func (x *ExportContext_SqlExportOptions) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[77] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8963,7 +9595,7 @@ func (x *ExportContext_SqlExportOptions) ProtoReflect() protoreflect.Message { // Deprecated: Use ExportContext_SqlExportOptions.ProtoReflect.Descriptor instead. func (*ExportContext_SqlExportOptions) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{20, 1} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{23, 1} } func (x *ExportContext_SqlExportOptions) GetTables() []string { @@ -9027,7 +9659,7 @@ type ExportContext_SqlBakExportOptions struct { func (x *ExportContext_SqlBakExportOptions) Reset() { *x = ExportContext_SqlBakExportOptions{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[78] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9040,7 +9672,7 @@ func (x *ExportContext_SqlBakExportOptions) String() string { func (*ExportContext_SqlBakExportOptions) ProtoMessage() {} func (x *ExportContext_SqlBakExportOptions) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[78] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9053,7 +9685,7 @@ func (x *ExportContext_SqlBakExportOptions) ProtoReflect() protoreflect.Message // Deprecated: Use ExportContext_SqlBakExportOptions.ProtoReflect.Descriptor instead. func (*ExportContext_SqlBakExportOptions) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{20, 2} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{23, 2} } func (x *ExportContext_SqlBakExportOptions) GetStriped() *wrappers.BoolValue { @@ -9110,7 +9742,7 @@ type ExportContext_SqlExportOptions_MysqlExportOptions struct { func (x *ExportContext_SqlExportOptions_MysqlExportOptions) Reset() { *x = ExportContext_SqlExportOptions_MysqlExportOptions{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[79] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9123,7 +9755,7 @@ func (x *ExportContext_SqlExportOptions_MysqlExportOptions) String() string { func (*ExportContext_SqlExportOptions_MysqlExportOptions) ProtoMessage() {} func (x *ExportContext_SqlExportOptions_MysqlExportOptions) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[79] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9136,7 +9768,7 @@ func (x *ExportContext_SqlExportOptions_MysqlExportOptions) ProtoReflect() proto // Deprecated: Use ExportContext_SqlExportOptions_MysqlExportOptions.ProtoReflect.Descriptor instead. func (*ExportContext_SqlExportOptions_MysqlExportOptions) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{20, 1, 0} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{23, 1, 0} } func (x *ExportContext_SqlExportOptions_MysqlExportOptions) GetMasterData() *wrappers.Int32Value { @@ -9146,6 +9778,63 @@ func (x *ExportContext_SqlExportOptions_MysqlExportOptions) GetMasterData() *wra return nil } +type ImportContext_SqlImportOptions struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Optional. The number of threads to use for parallel import. + Threads *wrappers.Int32Value `protobuf:"bytes,1,opt,name=threads,proto3" json:"threads,omitempty"` + // Optional. Whether or not the import should be parallel. + Parallel *wrappers.BoolValue `protobuf:"bytes,2,opt,name=parallel,proto3" json:"parallel,omitempty"` +} + +func (x *ImportContext_SqlImportOptions) Reset() { + *x = ImportContext_SqlImportOptions{} + if protoimpl.UnsafeEnabled { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[85] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ImportContext_SqlImportOptions) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ImportContext_SqlImportOptions) ProtoMessage() {} + +func (x *ImportContext_SqlImportOptions) ProtoReflect() protoreflect.Message { + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[85] + 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 ImportContext_SqlImportOptions.ProtoReflect.Descriptor instead. +func (*ImportContext_SqlImportOptions) Descriptor() ([]byte, []int) { + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{27, 0} +} + +func (x *ImportContext_SqlImportOptions) GetThreads() *wrappers.Int32Value { + if x != nil { + return x.Threads + } + return nil +} + +func (x *ImportContext_SqlImportOptions) GetParallel() *wrappers.BoolValue { + if x != nil { + return x.Parallel + } + return nil +} + type ImportContext_SqlCsvImportOptions struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -9172,7 +9861,7 @@ type ImportContext_SqlCsvImportOptions struct { func (x *ImportContext_SqlCsvImportOptions) Reset() { *x = ImportContext_SqlCsvImportOptions{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[80] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9185,7 +9874,7 @@ func (x *ImportContext_SqlCsvImportOptions) String() string { func (*ImportContext_SqlCsvImportOptions) ProtoMessage() {} func (x *ImportContext_SqlCsvImportOptions) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[80] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9198,7 +9887,7 @@ func (x *ImportContext_SqlCsvImportOptions) ProtoReflect() protoreflect.Message // Deprecated: Use ImportContext_SqlCsvImportOptions.ProtoReflect.Descriptor instead. func (*ImportContext_SqlCsvImportOptions) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{24, 0} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{27, 1} } func (x *ImportContext_SqlCsvImportOptions) GetTable() string { @@ -9277,7 +9966,7 @@ type ImportContext_SqlBakImportOptions struct { func (x *ImportContext_SqlBakImportOptions) Reset() { *x = ImportContext_SqlBakImportOptions{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[81] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9290,7 +9979,7 @@ func (x *ImportContext_SqlBakImportOptions) String() string { func (*ImportContext_SqlBakImportOptions) ProtoMessage() {} func (x *ImportContext_SqlBakImportOptions) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[81] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9303,7 +9992,7 @@ func (x *ImportContext_SqlBakImportOptions) ProtoReflect() protoreflect.Message // Deprecated: Use ImportContext_SqlBakImportOptions.ProtoReflect.Descriptor instead. func (*ImportContext_SqlBakImportOptions) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{24, 1} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{27, 2} } func (x *ImportContext_SqlBakImportOptions) GetEncryptionOptions() *ImportContext_SqlBakImportOptions_EncryptionOptions { @@ -9375,7 +10064,7 @@ type ImportContext_SqlBakImportOptions_EncryptionOptions struct { func (x *ImportContext_SqlBakImportOptions_EncryptionOptions) Reset() { *x = ImportContext_SqlBakImportOptions_EncryptionOptions{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[82] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9388,7 +10077,7 @@ func (x *ImportContext_SqlBakImportOptions_EncryptionOptions) String() string { func (*ImportContext_SqlBakImportOptions_EncryptionOptions) ProtoMessage() {} func (x *ImportContext_SqlBakImportOptions_EncryptionOptions) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[82] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9401,7 +10090,7 @@ func (x *ImportContext_SqlBakImportOptions_EncryptionOptions) ProtoReflect() pro // Deprecated: Use ImportContext_SqlBakImportOptions_EncryptionOptions.ProtoReflect.Descriptor instead. func (*ImportContext_SqlBakImportOptions_EncryptionOptions) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{24, 1, 0} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{27, 2, 0} } func (x *ImportContext_SqlBakImportOptions_EncryptionOptions) GetCertPath() string { @@ -9442,7 +10131,7 @@ type SqlInstancesRescheduleMaintenanceRequestBody_Reschedule struct { func (x *SqlInstancesRescheduleMaintenanceRequestBody_Reschedule) Reset() { *x = SqlInstancesRescheduleMaintenanceRequestBody_Reschedule{} if protoimpl.UnsafeEnabled { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[84] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9455,7 +10144,7 @@ func (x *SqlInstancesRescheduleMaintenanceRequestBody_Reschedule) String() strin func (*SqlInstancesRescheduleMaintenanceRequestBody_Reschedule) ProtoMessage() {} func (x *SqlInstancesRescheduleMaintenanceRequestBody_Reschedule) ProtoReflect() protoreflect.Message { - mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[84] + mi := &file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9468,7 +10157,7 @@ func (x *SqlInstancesRescheduleMaintenanceRequestBody_Reschedule) ProtoReflect() // Deprecated: Use SqlInstancesRescheduleMaintenanceRequestBody_Reschedule.ProtoReflect.Descriptor instead. func (*SqlInstancesRescheduleMaintenanceRequestBody_Reschedule) Descriptor() ([]byte, []int) { - return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{67, 0} + return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP(), []int{71, 0} } func (x *SqlInstancesRescheduleMaintenanceRequestBody_Reschedule) GetRescheduleType() SqlInstancesRescheduleMaintenanceRequestBody_RescheduleType { @@ -9546,7 +10235,7 @@ var file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDesc = []byte{ 0x0a, 0x0d, 0x52, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x6e, 0x69, 0x74, 0x12, 0x1e, 0x0a, 0x1a, 0x52, 0x45, 0x54, 0x45, 0x4e, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, - 0x09, 0x0a, 0x05, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x01, 0x22, 0xfd, 0x04, 0x0a, 0x13, 0x42, + 0x09, 0x0a, 0x05, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x01, 0x22, 0xee, 0x07, 0x0a, 0x13, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, @@ -9586,406 +10275,519 @@ var file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDesc = []byte{ 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x17, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, - 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x22, 0xb5, 0x07, 0x0a, 0x09, 0x42, - 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x45, 0x0a, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x6d, - 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x63, 0x6b, - 0x75, 0x70, 0x52, 0x75, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x3f, 0x0a, 0x0d, 0x65, 0x6e, 0x71, 0x75, 0x65, 0x75, 0x65, 0x64, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0c, 0x65, 0x6e, 0x71, 0x75, 0x65, 0x75, 0x65, 0x64, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x02, 0x69, 0x64, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, - 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x35, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x65, - 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3f, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, - 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, - 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x3f, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, - 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x54, 0x79, - 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x11, 0x77, 0x69, - 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x0a, 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, 0x52, 0x0f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1b, - 0x0a, 0x09, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x66, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x6c, - 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, - 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x7a, 0x0a, 0x1d, 0x64, 0x69, 0x73, 0x6b, 0x5f, - 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, - 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, - 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x45, - 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x1b, 0x64, 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x63, 0x72, - 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x65, 0x0a, 0x16, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x65, 0x6e, 0x63, 0x72, - 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x11, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, + 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x9c, 0x01, 0x0a, 0x1f, 0x74, + 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6c, 0x6f, 0x67, + 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x4b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x4c, 0x6f, 0x67, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x00, 0x52, 0x1c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x67, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x22, 0xab, 0x01, 0x0a, 0x1c, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x67, 0x53, 0x74, + 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x2f, 0x0a, 0x2b, 0x54, 0x52, + 0x41, 0x4e, 0x53, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x4c, 0x4f, 0x47, 0x5f, + 0x53, 0x54, 0x4f, 0x52, 0x41, 0x47, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, + 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x44, + 0x49, 0x53, 0x4b, 0x10, 0x01, 0x12, 0x1e, 0x0a, 0x1a, 0x53, 0x57, 0x49, 0x54, 0x43, 0x48, 0x49, + 0x4e, 0x47, 0x5f, 0x54, 0x4f, 0x5f, 0x43, 0x4c, 0x4f, 0x55, 0x44, 0x5f, 0x53, 0x54, 0x4f, 0x52, + 0x41, 0x47, 0x45, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x57, 0x49, 0x54, 0x43, 0x48, 0x45, + 0x44, 0x5f, 0x54, 0x4f, 0x5f, 0x43, 0x4c, 0x4f, 0x55, 0x44, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x41, + 0x47, 0x45, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x43, 0x4c, 0x4f, 0x55, 0x44, 0x5f, 0x53, 0x54, + 0x4f, 0x52, 0x41, 0x47, 0x45, 0x10, 0x04, 0x42, 0x22, 0x0a, 0x20, 0x5f, 0x74, 0x72, 0x61, 0x6e, + 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x73, 0x74, + 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0xb5, 0x07, 0x0a, 0x09, + 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x45, 0x0a, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, + 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, + 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x63, + 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x3f, 0x0a, 0x0d, 0x65, 0x6e, 0x71, 0x75, 0x65, 0x75, 0x65, 0x64, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0c, 0x65, 0x6e, 0x71, 0x75, 0x65, 0x75, 0x65, + 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x35, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, + 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3f, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, + 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, + 0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x3f, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, + 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x54, + 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x11, 0x77, + 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x0a, 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, 0x52, 0x0f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, + 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x66, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x1a, 0x0a, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x7a, 0x0a, 0x1d, 0x64, 0x69, 0x73, 0x6b, + 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x36, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x69, 0x73, 0x6b, + 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x1b, 0x64, 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x63, + 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x65, 0x0a, 0x16, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x65, 0x6e, 0x63, + 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x11, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x14, 0x64, 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x63, 0x72, 0x79, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x49, 0x0a, 0x0b, 0x62, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, + 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x0a, 0x62, 0x61, 0x63, 0x6b, + 0x75, 0x70, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x7a, + 0x6f, 0x6e, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x69, 0x6d, 0x65, 0x5a, + 0x6f, 0x6e, 0x65, 0x22, 0x90, 0x01, 0x0a, 0x16, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, + 0x6e, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, + 0x6e, 0x64, 0x12, 0x3a, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x42, 0x61, + 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x26, + 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, + 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x7c, 0x0a, 0x11, 0x42, 0x69, 0x6e, 0x4c, 0x6f, 0x67, + 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x11, 0x62, + 0x69, 0x6e, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x46, 0x69, + 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x69, 0x6e, 0x5f, 0x6c, 0x6f, + 0x67, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0e, 0x62, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x6b, 0x69, 0x6e, 0x64, 0x22, 0x40, 0x0a, 0x0d, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, + 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xa2, 0x04, 0x0a, 0x0c, 0x43, 0x6c, 0x6f, 0x6e, 0x65, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, + 0x69, 0x74, 0x72, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x6d, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x70, 0x69, 0x74, 0x72, 0x54, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x4d, 0x73, 0x12, 0x3a, 0x0a, 0x19, 0x64, 0x65, 0x73, 0x74, 0x69, + 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x64, 0x65, 0x73, 0x74, + 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x5c, 0x0a, 0x13, 0x62, 0x69, 0x6e, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x63, + 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x2c, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x42, 0x69, 0x6e, + 0x4c, 0x6f, 0x67, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x73, 0x52, 0x11, + 0x62, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, + 0x73, 0x12, 0x3e, 0x0a, 0x0d, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x6e, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, + 0x70, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, + 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x64, 0x49, 0x70, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, + 0x25, 0x0a, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, + 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, + 0x72, 0x65, 0x64, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, + 0xe0, 0x41, 0x01, 0x48, 0x00, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, + 0x5a, 0x6f, 0x6e, 0x65, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x18, 0x70, 0x72, 0x65, 0x66, 0x65, + 0x72, 0x72, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x7a, + 0x6f, 0x6e, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x01, + 0x52, 0x16, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, + 0x64, 0x61, 0x72, 0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x88, 0x01, 0x01, 0x42, 0x11, 0x0a, 0x0f, 0x5f, + 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x42, 0x1b, + 0x0a, 0x19, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x63, + 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x22, 0xda, 0x02, 0x0a, 0x08, + 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6c, 0x66, + 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x6c, + 0x66, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, + 0x73, 0x0a, 0x1a, 0x73, 0x71, 0x6c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, + 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, - 0x44, 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x14, 0x64, 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x49, 0x0a, 0x0b, 0x62, 0x61, - 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, - 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x42, - 0x61, 0x63, 0x6b, 0x75, 0x70, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x0a, 0x62, 0x61, 0x63, 0x6b, 0x75, - 0x70, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x7a, 0x6f, - 0x6e, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x69, 0x6d, 0x65, 0x5a, 0x6f, - 0x6e, 0x65, 0x22, 0x90, 0x01, 0x0a, 0x16, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, - 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, - 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, - 0x64, 0x12, 0x3a, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x42, 0x61, 0x63, - 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x26, 0x0a, - 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x7c, 0x0a, 0x11, 0x42, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x43, - 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x11, 0x62, 0x69, - 0x6e, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x46, 0x69, 0x6c, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x69, 0x6e, 0x5f, 0x6c, 0x6f, 0x67, - 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0e, 0x62, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, - 0x69, 0x6e, 0x64, 0x22, 0x40, 0x0a, 0x0d, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, - 0x74, 0x65, 0x78, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, - 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xc1, 0x03, 0x0a, 0x0c, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x43, - 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x69, - 0x74, 0x72, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x6d, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x70, 0x69, 0x74, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x4d, 0x73, 0x12, 0x3a, 0x0a, 0x19, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x64, 0x65, 0x73, 0x74, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x5c, 0x0a, 0x13, 0x62, 0x69, 0x6e, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x63, 0x6f, - 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2c, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, - 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x42, 0x69, 0x6e, 0x4c, - 0x6f, 0x67, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x73, 0x52, 0x11, 0x62, - 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x73, - 0x12, 0x3e, 0x0a, 0x0d, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x52, 0x0b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x6e, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x70, - 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, 0x6c, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x64, 0x49, 0x70, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x25, - 0x0a, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, - 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, - 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, - 0x65, 0x64, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, - 0x41, 0x01, 0x48, 0x00, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x5a, - 0x6f, 0x6e, 0x65, 0x88, 0x01, 0x01, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x65, - 0x72, 0x72, 0x65, 0x64, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x22, 0xda, 0x02, 0x0a, 0x08, 0x44, 0x61, - 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, - 0x61, 0x72, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x68, 0x61, - 0x72, 0x73, 0x65, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x6c, - 0x69, 0x6e, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x66, 0x4c, - 0x69, 0x6e, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x73, 0x0a, - 0x1a, 0x73, 0x71, 0x6c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, - 0x61, 0x73, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, - 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, - 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x48, 0x00, 0x52, 0x18, 0x73, 0x71, 0x6c, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x64, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x72, 0x0a, 0x18, 0x53, 0x71, 0x6c, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x12, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, - 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x63, - 0x6f, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x39, 0x0a, 0x0d, 0x44, 0x61, - 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x35, 0x0a, 0x09, 0x53, 0x79, 0x6e, 0x63, 0x46, 0x6c, 0x61, - 0x67, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x59, 0x0a, 0x11, - 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, - 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, - 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0xf8, 0x1e, 0x0a, 0x10, 0x44, 0x61, 0x74, 0x61, - 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, - 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, - 0x12, 0x52, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x3c, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x53, 0x71, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, + 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x48, 0x00, 0x52, 0x18, 0x73, 0x71, 0x6c, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, + 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x72, 0x0a, 0x18, 0x53, 0x71, 0x6c, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x73, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x12, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x79, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, + 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x39, 0x0a, 0x0d, + 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x35, 0x0a, 0x09, 0x53, 0x79, 0x6e, 0x63, 0x46, + 0x6c, 0x61, 0x67, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x59, + 0x0a, 0x11, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, + 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, + 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, + 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0xde, 0x21, 0x0a, 0x10, 0x44, 0x61, + 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, + 0x6e, 0x64, 0x12, 0x52, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x3c, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, + 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x53, + 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, + 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x58, 0x0a, 0x10, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, + 0x73, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x2d, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, + 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, + 0x0f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x3f, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, + 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x08, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, + 0x73, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x69, 0x0a, 0x10, 0x66, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, + 0x72, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x3e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x53, 0x71, 0x6c, - 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, - 0x74, 0x61, 0x74, 0x65, 0x12, 0x58, 0x0a, 0x10, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, - 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, - 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, - 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x44, 0x61, - 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x64, - 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3f, - 0x0a, 0x08, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x23, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x65, 0x74, - 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x08, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, - 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, - 0x74, 0x61, 0x67, 0x12, 0x69, 0x0a, 0x10, 0x66, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x5f, - 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, + 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, + 0x0f, 0x66, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x12, 0x30, 0x0a, 0x14, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, + 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x43, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x64, + 0x69, 0x73, 0x6b, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, + 0x0b, 0x6d, 0x61, 0x78, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x4b, 0x0a, 0x11, + 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x73, 0x69, 0x7a, + 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, + 0x74, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x69, 0x70, 0x5f, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, 0x70, 0x4d, 0x61, + 0x70, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x0b, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x65, 0x73, 0x12, 0x48, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x5f, + 0x63, 0x65, 0x72, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, 0x6f, 0x63, + 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x0c, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x43, 0x65, 0x72, 0x74, 0x12, 0x4f, 0x0a, 0x0d, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, + 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, + 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x25, 0x0a, 0x0c, 0x69, 0x70, 0x76, 0x36, 0x5f, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, + 0x01, 0x52, 0x0b, 0x69, 0x70, 0x76, 0x36, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x41, + 0x0a, 0x1d, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, + 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x12, 0x6e, 0x0a, 0x19, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x73, 0x65, 0x73, + 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x4f, 0x6e, 0x50, 0x72, 0x65, 0x6d, 0x69, 0x73, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x17, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x6d, + 0x69, 0x73, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x64, 0x0a, 0x15, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x2f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x52, 0x65, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x14, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4c, 0x0a, 0x0c, 0x62, 0x61, 0x63, 0x6b, 0x65, + 0x6e, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, - 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, - 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x53, 0x71, 0x6c, 0x46, 0x61, - 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x0f, 0x66, - 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, 0x30, - 0x0a, 0x14, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x6d, 0x61, - 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, - 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x43, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x69, 0x73, - 0x6b, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, - 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0b, 0x6d, - 0x61, 0x78, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x4b, 0x0a, 0x11, 0x63, 0x75, - 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x44, - 0x69, 0x73, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x69, 0x70, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, + 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x63, + 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, + 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x6c, 0x69, + 0x6e, 0x6b, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x66, 0x4c, 0x69, + 0x6e, 0x6b, 0x12, 0x5b, 0x0a, 0x11, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x15, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, - 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, 0x70, 0x4d, 0x61, 0x70, 0x70, - 0x69, 0x6e, 0x67, 0x52, 0x0b, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, - 0x12, 0x48, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x5f, 0x63, 0x65, - 0x72, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, - 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x0c, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x43, 0x65, 0x72, 0x74, 0x12, 0x4f, 0x0a, 0x0d, 0x69, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x2a, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, - 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, - 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x69, - 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x25, 0x0a, 0x0c, 0x69, 0x70, 0x76, 0x36, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, - 0x0b, 0x69, 0x70, 0x76, 0x36, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x41, 0x0a, 0x1d, - 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, - 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x10, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x1a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x6e, 0x0a, 0x19, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x73, 0x65, 0x73, 0x5f, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, - 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, - 0x6e, 0x50, 0x72, 0x65, 0x6d, 0x69, 0x73, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x17, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x6d, 0x69, 0x73, - 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x64, 0x0a, 0x15, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, - 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, - 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x14, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4c, 0x0a, 0x0c, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x6d, 0x6f, - 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x65, - 0x6e, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, - 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x66, 0x4c, 0x69, 0x6e, 0x6b, - 0x12, 0x5b, 0x0a, 0x11, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x72, - 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x15, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x6d, 0x6f, - 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x53, 0x75, 0x73, 0x70, 0x65, - 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x10, 0x73, 0x75, 0x73, - 0x70, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x27, 0x0a, - 0x0f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x17, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, - 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, - 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x63, 0x65, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x19, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x63, 0x65, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x2c, 0x0a, - 0x12, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x67, 0x63, 0x65, 0x5f, 0x7a, - 0x6f, 0x6e, 0x65, 0x18, 0x22, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x65, 0x63, 0x6f, 0x6e, - 0x64, 0x61, 0x72, 0x79, 0x47, 0x63, 0x65, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x7a, 0x0a, 0x1d, 0x64, - 0x69, 0x73, 0x6b, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x1a, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, - 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, - 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x1b, 0x64, 0x69, 0x73, 0x6b, - 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x65, 0x0a, 0x16, 0x64, 0x69, 0x73, 0x6b, 0x5f, - 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, - 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x34, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x14, 0x64, 0x69, 0x73, 0x6b, 0x45, 0x6e, - 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, - 0x0a, 0x0d, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, - 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x6f, 0x6f, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, - 0x6f, 0x72, 0x64, 0x12, 0x78, 0x0a, 0x15, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, - 0x5f, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x1e, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, + 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x53, 0x75, 0x73, + 0x70, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x10, 0x73, + 0x75, 0x73, 0x70, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, + 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, + 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x63, 0x65, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, + 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x63, 0x65, 0x5a, 0x6f, 0x6e, 0x65, 0x12, + 0x2c, 0x0a, 0x12, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x67, 0x63, 0x65, + 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x22, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x65, 0x63, + 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x47, 0x63, 0x65, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x7a, 0x0a, + 0x1d, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x1a, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x1b, 0x64, 0x69, + 0x73, 0x6b, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x65, 0x0a, 0x16, 0x64, 0x69, 0x73, + 0x6b, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x14, 0x64, 0x69, 0x73, 0x6b, + 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, + 0x64, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x6f, 0x6f, 0x74, 0x50, 0x61, 0x73, + 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x78, 0x0a, 0x15, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, + 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x1e, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x2e, 0x53, 0x71, 0x6c, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x4d, 0x61, + 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x14, 0x73, 0x63, 0x68, 0x65, 0x64, + 0x75, 0x6c, 0x65, 0x64, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x12, + 0x3f, 0x0a, 0x0d, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x69, 0x65, 0x73, 0x5f, 0x70, 0x7a, 0x73, + 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x52, 0x0c, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x69, 0x65, 0x73, 0x50, 0x7a, 0x73, + 0x12, 0x41, 0x0a, 0x1a, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x28, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x18, 0x64, 0x61, 0x74, 0x61, 0x62, + 0x61, 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x70, 0x0a, 0x12, 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x66, 0x5f, 0x64, 0x69, + 0x73, 0x6b, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x3e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, + 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x53, 0x71, 0x6c, + 0x4f, 0x75, 0x74, 0x4f, 0x66, 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x48, + 0x00, 0x52, 0x0f, 0x6f, 0x75, 0x74, 0x4f, 0x66, 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x49, 0x0a, 0x1e, 0x61, 0x76, 0x61, 0x69, 0x6c, + 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, + 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x29, 0x20, 0x03, 0x28, 0x09, 0x42, + 0x03, 0xe0, 0x41, 0x03, 0x52, 0x1c, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4d, + 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x2f, 0x0a, 0x13, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, + 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x12, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x56, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x7a, 0x0a, 0x1c, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x61, 0x62, 0x6c, + 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x18, 0x2d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x03, + 0xe0, 0x41, 0x03, 0x52, 0x1a, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x44, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x81, 0x01, 0x0a, 0x18, 0x73, 0x71, 0x6c, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, + 0x61, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x2f, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x42, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, - 0x53, 0x71, 0x6c, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x4d, 0x61, 0x69, 0x6e, - 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x14, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, - 0x65, 0x64, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x3f, 0x0a, - 0x0d, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x69, 0x65, 0x73, 0x5f, 0x70, 0x7a, 0x73, 0x18, 0x23, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x52, 0x0c, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x69, 0x65, 0x73, 0x50, 0x7a, 0x73, 0x12, 0x41, - 0x0a, 0x1a, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, - 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x28, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x18, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, - 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x12, 0x70, 0x0a, 0x12, 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x66, 0x5f, 0x64, 0x69, 0x73, 0x6b, - 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, - 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, - 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, - 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x53, 0x71, 0x6c, 0x4f, 0x75, - 0x74, 0x4f, 0x66, 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x48, 0x00, 0x52, - 0x0f, 0x6f, 0x75, 0x74, 0x4f, 0x66, 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x88, 0x01, 0x01, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, - 0x6d, 0x65, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x49, 0x0a, 0x1e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, - 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x29, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, - 0x41, 0x03, 0x52, 0x1c, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x61, 0x69, - 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, - 0x12, 0x2f, 0x0a, 0x13, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x5f, - 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x6d, - 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x12, 0x81, 0x01, 0x0a, 0x18, 0x73, 0x71, 0x6c, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x2f, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x42, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x53, 0x71, 0x6c, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x72, 0x63, 0x68, 0x69, 0x74, + 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x48, 0x01, 0x52, 0x16, 0x73, 0x71, 0x6c, 0x4e, 0x65, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, + 0x88, 0x01, 0x01, 0x12, 0x47, 0x0a, 0x1b, 0x70, 0x73, 0x63, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x69, + 0x6e, 0x6b, 0x18, 0x30, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x02, 0x52, + 0x18, 0x70, 0x73, 0x63, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x74, 0x74, 0x61, 0x63, + 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x6e, 0x6b, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x08, + 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x31, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, + 0xe0, 0x41, 0x03, 0x48, 0x03, 0x52, 0x07, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x88, 0x01, + 0x01, 0x12, 0x34, 0x0a, 0x10, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x64, 0x6e, 0x73, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x33, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x18, 0x01, 0xe0, + 0x41, 0x03, 0x48, 0x04, 0x52, 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x44, 0x6e, 0x73, + 0x4e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x0e, 0x77, 0x72, 0x69, 0x74, 0x65, + 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x34, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x03, 0xe0, 0x41, 0x03, 0x48, 0x05, 0x52, 0x0d, 0x77, 0x72, 0x69, 0x74, 0x65, 0x45, 0x6e, 0x64, + 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x63, 0x0a, 0x13, 0x72, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, + 0x36, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x75, + 0x73, 0x74, 0x65, 0x72, 0x48, 0x06, 0x52, 0x12, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x59, 0x0a, + 0x0d, 0x67, 0x65, 0x6d, 0x69, 0x6e, 0x69, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x37, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x47, 0x65, 0x6d, 0x69, 0x6e, 0x69, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x07, 0x52, 0x0c, 0x67, 0x65, 0x6d, 0x69, 0x6e, 0x69, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x88, 0x01, 0x01, 0x1a, 0x62, 0x0a, 0x12, 0x53, 0x71, 0x6c, 0x46, + 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 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, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x52, 0x09, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x1a, 0x8e, 0x02, 0x0a, + 0x17, 0x53, 0x71, 0x6c, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x4d, 0x61, 0x69, + 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x39, 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, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x09, 0x63, 0x61, 0x6e, 0x5f, 0x64, 0x65, 0x66, 0x65, 0x72, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x63, 0x61, 0x6e, 0x44, + 0x65, 0x66, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x61, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x63, + 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x63, 0x61, + 0x6e, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x55, 0x0a, 0x16, 0x73, + 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x48, 0x00, 0x52, 0x14, 0x73, 0x63, 0x68, 0x65, 0x64, + 0x75, 0x6c, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x88, + 0x01, 0x01, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x5f, + 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x1a, 0x90, 0x03, + 0x0a, 0x12, 0x53, 0x71, 0x6c, 0x4f, 0x75, 0x74, 0x4f, 0x66, 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x12, 0x87, 0x01, 0x0a, 0x15, 0x73, 0x71, 0x6c, 0x5f, 0x6f, 0x75, 0x74, + 0x5f, 0x6f, 0x66, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x50, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x2e, 0x53, 0x71, 0x6c, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x72, 0x63, 0x68, - 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x48, 0x01, 0x52, 0x16, 0x73, 0x71, 0x6c, 0x4e, - 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, - 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x47, 0x0a, 0x1b, 0x70, 0x73, 0x63, 0x5f, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, - 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x30, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, - 0x02, 0x52, 0x18, 0x70, 0x73, 0x63, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x74, 0x74, - 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x6e, 0x6b, 0x88, 0x01, 0x01, 0x12, 0x23, - 0x0a, 0x08, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x31, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x03, 0x52, 0x07, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, - 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x10, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x64, - 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x33, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x18, - 0x01, 0xe0, 0x41, 0x03, 0x48, 0x04, 0x52, 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x44, - 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x0e, 0x77, 0x72, 0x69, - 0x74, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x34, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x05, 0x52, 0x0d, 0x77, 0x72, 0x69, 0x74, 0x65, 0x45, - 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x1a, 0x62, 0x0a, 0x12, 0x53, 0x71, - 0x6c, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, - 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, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x52, 0x09, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x1a, 0x8e, - 0x02, 0x0a, 0x17, 0x53, 0x71, 0x6c, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x4d, - 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x39, 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, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, - 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x09, 0x63, 0x61, 0x6e, 0x5f, 0x64, 0x65, 0x66, - 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x63, 0x61, - 0x6e, 0x44, 0x65, 0x66, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x61, 0x6e, 0x5f, 0x72, 0x65, - 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, - 0x63, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x55, 0x0a, - 0x16, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, - 0x6e, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x48, 0x00, 0x52, 0x14, 0x73, 0x63, 0x68, - 0x65, 0x64, 0x75, 0x6c, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x54, 0x69, 0x6d, - 0x65, 0x88, 0x01, 0x01, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, - 0x65, 0x5f, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x1a, - 0x90, 0x03, 0x0a, 0x12, 0x53, 0x71, 0x6c, 0x4f, 0x75, 0x74, 0x4f, 0x66, 0x44, 0x69, 0x73, 0x6b, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x87, 0x01, 0x0a, 0x15, 0x73, 0x71, 0x6c, 0x5f, 0x6f, - 0x75, 0x74, 0x5f, 0x6f, 0x66, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x50, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, - 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x2e, 0x53, 0x71, 0x6c, 0x4f, 0x75, 0x74, 0x4f, 0x66, 0x44, 0x69, 0x73, 0x6b, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x53, 0x71, 0x6c, 0x4f, 0x75, 0x74, 0x4f, 0x66, 0x44, - 0x69, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x11, 0x73, 0x71, 0x6c, 0x4f, - 0x75, 0x74, 0x4f, 0x66, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, - 0x12, 0x52, 0x0a, 0x24, 0x73, 0x71, 0x6c, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, - 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x48, 0x01, - 0x52, 0x1f, 0x73, 0x71, 0x6c, 0x4d, 0x69, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x64, 0x65, 0x64, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x47, - 0x62, 0x88, 0x01, 0x01, 0x22, 0x59, 0x0a, 0x11, 0x53, 0x71, 0x6c, 0x4f, 0x75, 0x74, 0x4f, 0x66, - 0x44, 0x69, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x21, 0x53, 0x51, 0x4c, - 0x5f, 0x4f, 0x55, 0x54, 0x5f, 0x4f, 0x46, 0x5f, 0x44, 0x49, 0x53, 0x4b, 0x5f, 0x53, 0x54, 0x41, - 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, - 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, - 0x53, 0x4f, 0x46, 0x54, 0x5f, 0x53, 0x48, 0x55, 0x54, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x02, 0x42, - 0x18, 0x0a, 0x16, 0x5f, 0x73, 0x71, 0x6c, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x66, 0x5f, 0x64, - 0x69, 0x73, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x42, 0x27, 0x0a, 0x25, 0x5f, 0x73, 0x71, - 0x6c, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, - 0x64, 0x5f, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, - 0x67, 0x62, 0x22, 0xb4, 0x01, 0x0a, 0x10, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, - 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x53, 0x51, 0x4c, 0x5f, 0x49, - 0x4e, 0x53, 0x54, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, - 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x52, - 0x55, 0x4e, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x55, 0x53, - 0x50, 0x45, 0x4e, 0x44, 0x45, 0x44, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x45, 0x4e, 0x44, - 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, - 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x04, - 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x10, - 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x06, 0x12, 0x1a, 0x0a, - 0x12, 0x4f, 0x4e, 0x4c, 0x49, 0x4e, 0x45, 0x5f, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, - 0x4e, 0x43, 0x45, 0x10, 0x07, 0x1a, 0x02, 0x08, 0x01, 0x22, 0x7e, 0x0a, 0x16, 0x53, 0x71, 0x6c, - 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, - 0x75, 0x72, 0x65, 0x12, 0x28, 0x0a, 0x24, 0x53, 0x51, 0x4c, 0x5f, 0x4e, 0x45, 0x54, 0x57, 0x4f, - 0x52, 0x4b, 0x5f, 0x41, 0x52, 0x43, 0x48, 0x49, 0x54, 0x45, 0x43, 0x54, 0x55, 0x52, 0x45, 0x5f, - 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, - 0x18, 0x4e, 0x45, 0x57, 0x5f, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x41, 0x52, 0x43, - 0x48, 0x49, 0x54, 0x45, 0x43, 0x54, 0x55, 0x52, 0x45, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x4f, - 0x4c, 0x44, 0x5f, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x41, 0x52, 0x43, 0x48, 0x49, - 0x54, 0x45, 0x43, 0x54, 0x55, 0x52, 0x45, 0x10, 0x02, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x6f, 0x75, - 0x74, 0x5f, 0x6f, 0x66, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x73, 0x71, 0x6c, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, - 0x5f, 0x61, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x42, 0x1e, 0x0a, - 0x1c, 0x5f, 0x70, 0x73, 0x63, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x74, - 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x42, 0x0b, 0x0a, - 0x09, 0x5f, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, - 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, - 0x11, 0x0a, 0x0f, 0x5f, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, - 0x6e, 0x74, 0x22, 0x66, 0x0a, 0x15, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x4c, + 0x65, 0x2e, 0x53, 0x71, 0x6c, 0x4f, 0x75, 0x74, 0x4f, 0x66, 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x53, 0x71, 0x6c, 0x4f, 0x75, 0x74, 0x4f, 0x66, 0x44, 0x69, 0x73, + 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x11, 0x73, 0x71, 0x6c, 0x4f, 0x75, 0x74, + 0x4f, 0x66, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x52, + 0x0a, 0x24, 0x73, 0x71, 0x6c, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x73, + 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x48, 0x01, 0x52, 0x1f, + 0x73, 0x71, 0x6c, 0x4d, 0x69, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, + 0x64, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x47, 0x62, 0x88, + 0x01, 0x01, 0x22, 0x59, 0x0a, 0x11, 0x53, 0x71, 0x6c, 0x4f, 0x75, 0x74, 0x4f, 0x66, 0x44, 0x69, + 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x21, 0x53, 0x51, 0x4c, 0x5f, 0x4f, + 0x55, 0x54, 0x5f, 0x4f, 0x46, 0x5f, 0x44, 0x49, 0x53, 0x4b, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, + 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, + 0x0a, 0x06, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x4f, + 0x46, 0x54, 0x5f, 0x53, 0x48, 0x55, 0x54, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x02, 0x42, 0x18, 0x0a, + 0x16, 0x5f, 0x73, 0x71, 0x6c, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x66, 0x5f, 0x64, 0x69, 0x73, + 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x42, 0x27, 0x0a, 0x25, 0x5f, 0x73, 0x71, 0x6c, 0x5f, + 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, + 0x69, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x62, + 0x22, 0xb4, 0x01, 0x0a, 0x10, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x53, 0x51, 0x4c, 0x5f, 0x49, 0x4e, 0x53, + 0x54, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, + 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x55, 0x4e, + 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x55, 0x53, 0x50, 0x45, + 0x4e, 0x44, 0x45, 0x44, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, + 0x47, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x45, + 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x04, 0x12, 0x0f, + 0x0a, 0x0b, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x10, 0x05, 0x12, + 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x06, 0x12, 0x1a, 0x0a, 0x12, 0x4f, + 0x4e, 0x4c, 0x49, 0x4e, 0x45, 0x5f, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, + 0x45, 0x10, 0x07, 0x1a, 0x02, 0x08, 0x01, 0x22, 0x7e, 0x0a, 0x16, 0x53, 0x71, 0x6c, 0x4e, 0x65, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, + 0x65, 0x12, 0x28, 0x0a, 0x24, 0x53, 0x51, 0x4c, 0x5f, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, + 0x5f, 0x41, 0x52, 0x43, 0x48, 0x49, 0x54, 0x45, 0x43, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x55, 0x4e, + 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x4e, + 0x45, 0x57, 0x5f, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x41, 0x52, 0x43, 0x48, 0x49, + 0x54, 0x45, 0x43, 0x54, 0x55, 0x52, 0x45, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x4f, 0x4c, 0x44, + 0x5f, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x41, 0x52, 0x43, 0x48, 0x49, 0x54, 0x45, + 0x43, 0x54, 0x55, 0x52, 0x45, 0x10, 0x02, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x6f, 0x75, 0x74, 0x5f, + 0x6f, 0x66, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x1b, + 0x0a, 0x19, 0x5f, 0x73, 0x71, 0x6c, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x61, + 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, + 0x70, 0x73, 0x63, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x74, 0x74, 0x61, + 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x42, 0x0b, 0x0a, 0x09, 0x5f, + 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x72, 0x69, + 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x11, 0x0a, + 0x0f, 0x5f, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x67, 0x65, 0x6d, + 0x69, 0x6e, 0x69, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xa3, 0x04, 0x0a, 0x14, 0x47, + 0x65, 0x6d, 0x69, 0x6e, 0x69, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x12, 0x24, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x00, 0x52, 0x08, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x45, 0x0a, 0x1a, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x5f, 0x76, 0x61, 0x63, 0x75, 0x75, 0x6d, 0x5f, 0x6d, 0x67, 0x6d, 0x74, 0x5f, + 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, + 0x41, 0x03, 0x48, 0x01, 0x52, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x56, 0x61, 0x63, 0x75, + 0x75, 0x6d, 0x4d, 0x67, 0x6d, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x88, 0x01, 0x01, + 0x12, 0x45, 0x0a, 0x1a, 0x6f, 0x6f, 0x6d, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, + 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x02, 0x52, 0x17, 0x6f, 0x6f, 0x6d, + 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x45, 0x6e, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x03, 0x52, 0x12, 0x61, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x15, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x61, 0x64, 0x76, + 0x69, 0x73, 0x6f, 0x72, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x04, 0x52, 0x13, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x41, 0x64, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x88, 0x01, + 0x01, 0x12, 0x42, 0x0a, 0x18, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x05, 0x52, 0x16, 0x66, 0x6c, 0x61, 0x67, + 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x45, 0x6e, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x64, 0x42, 0x1d, 0x0a, 0x1b, 0x5f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5f, 0x76, 0x61, + 0x63, 0x75, 0x75, 0x6d, 0x5f, 0x6d, 0x67, 0x6d, 0x74, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x42, 0x1d, 0x0a, 0x1b, 0x5f, 0x6f, 0x6f, 0x6d, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x5f, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x5f, 0x61, 0x64, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x5f, 0x65, 0x6e, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x72, 0x65, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x22, 0xfb, 0x01, 0x0a, 0x12, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x36, 0x0a, 0x12, 0x70, 0x73, 0x61, 0x5f, 0x77, + 0x72, 0x69, 0x74, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x00, 0x52, 0x10, 0x70, 0x73, 0x61, 0x57, + 0x72, 0x69, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, + 0x41, 0x0a, 0x18, 0x66, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x64, 0x72, 0x5f, 0x72, + 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x01, 0x52, 0x15, 0x66, 0x61, 0x69, 0x6c, 0x6f, 0x76, + 0x65, 0x72, 0x44, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x88, + 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0a, 0x64, 0x72, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x02, 0x52, 0x09, 0x64, + 0x72, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x88, 0x01, 0x01, 0x42, 0x15, 0x0a, 0x13, 0x5f, + 0x70, 0x73, 0x61, 0x5f, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x5f, + 0x64, 0x72, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, + 0x0d, 0x0a, 0x0b, 0x5f, 0x64, 0x72, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x22, 0xb1, + 0x01, 0x0a, 0x18, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, + 0x62, 0x61, 0x73, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x0d, 0x6d, + 0x61, 0x6a, 0x6f, 0x72, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x48, 0x00, 0x52, 0x0c, 0x6d, 0x61, 0x6a, 0x6f, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, + 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, + 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6d, 0x61, 0x6a, 0x6f, 0x72, + 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x22, 0x66, 0x0a, 0x15, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x39, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, @@ -10187,7 +10989,7 @@ var file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDesc = []byte{ 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x46, 0x6c, 0x61, 0x67, 0x52, 0x05, 0x69, 0x74, 0x65, - 0x6d, 0x73, 0x22, 0xe8, 0x09, 0x0a, 0x0d, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, + 0x6d, 0x73, 0x22, 0xe4, 0x0b, 0x0a, 0x0d, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, @@ -10212,994 +11014,1075 @@ var file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDesc = []byte{ 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x6b, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x10, 0x62, 0x61, 0x6b, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xfb, 0x01, 0x0a, 0x13, 0x53, 0x71, 0x6c, 0x43, 0x73, 0x76, 0x49, - 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x05, - 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x61, 0x62, - 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x29, 0x0a, 0x10, - 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x43, 0x68, - 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x71, 0x75, 0x6f, 0x74, 0x65, - 0x5f, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0e, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, - 0x12, 0x30, 0x0a, 0x14, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x5f, 0x74, 0x65, 0x72, 0x6d, 0x69, - 0x6e, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, - 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, - 0x42, 0x79, 0x12, 0x2e, 0x0a, 0x13, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x5f, 0x74, 0x65, 0x72, 0x6d, - 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x11, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, - 0x42, 0x79, 0x1a, 0xd8, 0x04, 0x0a, 0x13, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x6b, 0x49, 0x6d, 0x70, - 0x6f, 0x72, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x7d, 0x0a, 0x12, 0x65, 0x6e, - 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, - 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x34, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, - 0x2e, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x6b, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x11, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x34, 0x0a, 0x07, 0x73, 0x74, 0x72, - 0x69, 0x70, 0x65, 0x64, 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, 0x42, 0x6f, 0x6f, - 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x73, 0x74, 0x72, 0x69, 0x70, 0x65, 0x64, 0x12, - 0x3b, 0x0a, 0x0b, 0x6e, 0x6f, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x52, 0x0a, 0x6e, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x12, 0x3f, 0x0a, 0x0d, - 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, - 0x0c, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x3d, 0x0a, - 0x08, 0x62, 0x61, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x22, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, - 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x42, 0x61, 0x6b, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x07, 0x62, 0x61, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x38, 0x0a, 0x07, - 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, - 0x73, 0x74, 0x6f, 0x70, 0x41, 0x74, 0x12, 0x25, 0x0a, 0x0c, 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x61, - 0x74, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, - 0x01, 0x52, 0x0a, 0x73, 0x74, 0x6f, 0x70, 0x41, 0x74, 0x4d, 0x61, 0x72, 0x6b, 0x1a, 0x6e, 0x0a, - 0x11, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x65, 0x72, 0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x65, 0x72, 0x74, 0x50, 0x61, 0x74, 0x68, 0x12, - 0x19, 0x0a, 0x08, 0x70, 0x76, 0x6b, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x70, 0x76, 0x6b, 0x50, 0x61, 0x74, 0x68, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x76, - 0x6b, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x70, 0x76, 0x6b, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x65, 0x0a, - 0x15, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4c, 0x0a, 0x0d, 0x63, 0x6c, 0x6f, 0x6e, 0x65, 0x5f, - 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, - 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, - 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x43, - 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0c, 0x63, 0x6c, 0x6f, 0x6e, 0x65, 0x43, 0x6f, 0x6e, - 0x74, 0x65, 0x78, 0x74, 0x22, 0x82, 0x01, 0x0a, 0x1c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x73, 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x62, 0x0a, 0x15, 0x64, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, - 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, - 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, - 0x2e, 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, - 0x74, 0x65, 0x78, 0x74, 0x52, 0x13, 0x64, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, - 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x6e, 0x0a, 0x16, 0x49, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x54, 0x0a, 0x0e, 0x64, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x6f, - 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, - 0x6e, 0x74, 0x65, 0x78, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d, 0x64, 0x65, 0x6d, 0x6f, - 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x69, 0x0a, 0x16, 0x49, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x6f, + 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x6c, 0x0a, 0x12, 0x73, 0x71, 0x6c, 0x5f, 0x69, 0x6d, 0x70, 0x6f, + 0x72, 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x39, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, 0x6d, 0x70, + 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6d, + 0x70, 0x6f, 0x72, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x01, + 0x52, 0x10, 0x73, 0x71, 0x6c, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x1a, 0x8b, 0x01, 0x0a, 0x10, 0x53, 0x71, 0x6c, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, + 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3a, 0x0a, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, + 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x07, 0x74, 0x68, 0x72, 0x65, + 0x61, 0x64, 0x73, 0x12, 0x3b, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 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, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, + 0x1a, 0xfb, 0x01, 0x0a, 0x13, 0x53, 0x71, 0x6c, 0x43, 0x73, 0x76, 0x49, 0x6d, 0x70, 0x6f, 0x72, + 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x73, 0x63, 0x61, + 0x70, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0f, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, + 0x74, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x68, 0x61, + 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x71, 0x75, + 0x6f, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x12, 0x30, 0x0a, 0x14, + 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x5f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, + 0x64, 0x5f, 0x62, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x66, 0x69, 0x65, 0x6c, + 0x64, 0x73, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x2e, + 0x0a, 0x13, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x5f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, + 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6c, 0x69, 0x6e, + 0x65, 0x73, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x1a, 0xd8, + 0x04, 0x0a, 0x13, 0x53, 0x71, 0x6c, 0x42, 0x61, 0x6b, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x7d, 0x0a, 0x12, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x4e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, + 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x53, 0x71, 0x6c, + 0x42, 0x61, 0x6b, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x52, 0x11, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x34, 0x0a, 0x07, 0x73, 0x74, 0x72, 0x69, 0x70, 0x65, 0x64, + 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, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x52, 0x07, 0x73, 0x74, 0x72, 0x69, 0x70, 0x65, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x6e, + 0x6f, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0a, 0x6e, 0x6f, + 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x12, 0x3f, 0x0a, 0x0d, 0x72, 0x65, 0x63, 0x6f, + 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x63, + 0x6f, 0x76, 0x65, 0x72, 0x79, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x3d, 0x0a, 0x08, 0x62, 0x61, 0x6b, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, - 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0d, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, - 0x74, 0x65, 0x78, 0x74, 0x22, 0x71, 0x0a, 0x18, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x73, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x55, 0x0a, 0x10, 0x66, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, - 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6d, 0x6f, 0x63, - 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x43, - 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0f, 0x66, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, - 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x69, 0x0a, 0x16, 0x49, 0x6e, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x73, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x4f, 0x0a, 0x0e, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, - 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, - 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, - 0x65, 0x78, 0x74, 0x52, 0x0d, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x78, 0x74, 0x22, 0x65, 0x0a, 0x0f, 0x4d, 0x79, 0x53, 0x71, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x52, 0x0a, 0x12, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, - 0x5f, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, - 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x79, - 0x6e, 0x63, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x52, 0x10, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, - 0x53, 0x79, 0x6e, 0x63, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, 0xd9, 0x01, 0x0a, 0x15, 0x49, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x41, 0x0a, 0x08, 0x77, 0x61, 0x72, 0x6e, 0x69, - 0x6e, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, - 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x41, 0x70, 0x69, 0x57, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, - 0x52, 0x08, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x41, 0x0a, 0x05, 0x69, 0x74, - 0x65, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x42, 0x61, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x52, + 0x07, 0x62, 0x61, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x38, 0x0a, 0x07, 0x73, 0x74, 0x6f, 0x70, + 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x73, 0x74, 0x6f, 0x70, + 0x41, 0x74, 0x12, 0x25, 0x0a, 0x0c, 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x61, 0x74, 0x5f, 0x6d, 0x61, + 0x72, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x73, + 0x74, 0x6f, 0x70, 0x41, 0x74, 0x4d, 0x61, 0x72, 0x6b, 0x1a, 0x6e, 0x0a, 0x11, 0x45, 0x6e, 0x63, + 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1b, + 0x0a, 0x09, 0x63, 0x65, 0x72, 0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x63, 0x65, 0x72, 0x74, 0x50, 0x61, 0x74, 0x68, 0x12, 0x19, 0x0a, 0x08, 0x70, + 0x76, 0x6b, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, + 0x76, 0x6b, 0x50, 0x61, 0x74, 0x68, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x76, 0x6b, 0x5f, 0x70, 0x61, + 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x76, + 0x6b, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x65, 0x0a, 0x15, 0x49, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x4c, 0x0a, 0x0d, 0x63, 0x6c, 0x6f, 0x6e, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x26, 0x0a, - 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x95, 0x01, 0x0a, 0x1e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, - 0x63, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x05, 0x63, 0x65, 0x72, 0x74, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x78, 0x74, 0x52, 0x0c, 0x63, 0x6c, 0x6f, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x22, 0x82, 0x01, 0x0a, 0x1c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x44, 0x65, + 0x6d, 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x62, 0x0a, 0x15, 0x64, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x74, + 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x2e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x65, 0x6d, + 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x52, 0x13, 0x64, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x6e, 0x0a, 0x16, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x73, 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x54, 0x0a, 0x0e, 0x64, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x05, 0x63, 0x65, 0x72, - 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0x86, 0x01, - 0x0a, 0x1d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x74, 0x6f, - 0x72, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x65, 0x0a, 0x16, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, - 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, - 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x52, 0x65, 0x73, 0x74, - 0x6f, 0x72, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, - 0x52, 0x14, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, - 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x8b, 0x01, 0x0a, 0x1e, 0x49, 0x6e, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x73, 0x52, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x43, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x69, 0x0a, 0x18, 0x72, 0x6f, 0x74, - 0x61, 0x74, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x5f, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6d, 0x6f, + 0x74, 0x61, 0x34, 0x2e, 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, + 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d, 0x64, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x69, 0x0a, 0x16, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x4f, 0x0a, 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, + 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x34, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, + 0x74, 0x52, 0x0d, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x22, 0x71, 0x0a, 0x18, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x46, 0x61, 0x69, + 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x55, 0x0a, 0x10, + 0x66, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, + 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x34, 0x2e, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x78, 0x74, 0x52, 0x0f, 0x66, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x78, 0x74, 0x22, 0x69, 0x0a, 0x16, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, + 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, + 0x0e, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, + 0x0d, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x65, + 0x0a, 0x0f, 0x4d, 0x79, 0x53, 0x71, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x12, 0x52, 0x0a, 0x12, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x73, 0x79, 0x6e, + 0x63, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, + 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, + 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x46, 0x6c, + 0x61, 0x67, 0x73, 0x52, 0x10, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, + 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, 0xd9, 0x01, 0x0a, 0x15, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, + 0x69, 0x6e, 0x64, 0x12, 0x41, 0x0a, 0x08, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x41, 0x70, 0x69, 0x57, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x77, 0x61, + 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x41, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, + 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0x95, 0x01, 0x0a, 0x1e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x4c, + 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x05, 0x63, 0x65, 0x72, 0x74, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, + 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x05, 0x63, 0x65, 0x72, 0x74, 0x73, 0x12, 0x25, + 0x0a, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x56, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0x86, 0x01, 0x0a, 0x1d, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, + 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x65, 0x0a, 0x16, 0x72, + 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x52, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x15, 0x72, - 0x6f, 0x74, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x43, 0x6f, 0x6e, - 0x74, 0x65, 0x78, 0x74, 0x22, 0x7e, 0x0a, 0x1b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x73, 0x54, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x5f, 0x0a, 0x14, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x5f, - 0x6c, 0x6f, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x2d, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, - 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x54, 0x72, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x14, 0x72, 0x65, + 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x78, 0x74, 0x22, 0x8b, 0x01, 0x0a, 0x1e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, + 0x52, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x69, 0x0a, 0x18, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x5f, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, + 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x34, 0x2e, 0x52, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x43, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x15, 0x72, 0x6f, 0x74, 0x61, 0x74, + 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x22, 0x7e, 0x0a, 0x1b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x54, 0x72, 0x75, + 0x6e, 0x63, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x5f, 0x0a, 0x14, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, + 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, + 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x54, 0x72, 0x75, 0x6e, 0x63, 0x61, + 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x12, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, - 0x52, 0x12, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x43, 0x6f, 0x6e, - 0x74, 0x65, 0x78, 0x74, 0x22, 0x40, 0x0a, 0x18, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x44, - 0x69, 0x73, 0x6b, 0x53, 0x68, 0x72, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, - 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, - 0x67, 0x62, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x53, 0x69, 0x7a, 0x65, 0x47, 0x62, 0x22, 0x8c, 0x01, 0x0a, 0x27, 0x53, 0x71, 0x6c, 0x49, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x68, - 0x72, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x33, 0x0a, 0x16, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x61, - 0x6c, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x62, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x54, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x47, 0x62, 0x12, 0x18, 0x0a, 0x07, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xe8, 0x01, 0x0a, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x78, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x4e, 0x0a, 0x06, - 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6d, - 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x45, 0x78, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x45, - 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x52, 0x0a, 0x08, - 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, + 0x22, 0x93, 0x01, 0x0a, 0x20, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x41, 0x63, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x53, 0x73, 0x72, 0x73, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x6f, 0x0a, 0x1a, 0x61, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x5f, 0x73, 0x73, 0x72, 0x73, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x41, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x53, 0x73, 0x72, + 0x73, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x17, 0x61, + 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x53, 0x73, 0x72, 0x73, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x40, 0x0a, 0x18, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, + 0x6d, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x68, 0x72, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x78, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x73, 0x69, 0x7a, + 0x65, 0x5f, 0x67, 0x62, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x47, 0x62, 0x22, 0x8c, 0x01, 0x0a, 0x27, 0x53, 0x71, 0x6c, + 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x47, 0x65, 0x74, 0x44, 0x69, 0x73, 0x6b, + 0x53, 0x68, 0x72, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x33, 0x0a, 0x16, 0x6d, 0x69, 0x6e, 0x69, + 0x6d, 0x61, 0x6c, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, + 0x67, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x61, + 0x6c, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x47, 0x62, 0x12, 0x18, 0x0a, + 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xe8, 0x01, 0x0a, 0x2e, 0x53, 0x71, 0x6c, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x78, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, + 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, + 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x4e, + 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, - 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x08, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x73, - 0x22, 0xe6, 0x0c, 0x0a, 0x1b, 0x53, 0x71, 0x6c, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, - 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, - 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x6a, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x56, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, - 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, - 0x71, 0x6c, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, - 0x74, 0x74, 0x69, 0x6e, 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x2e, 0x53, 0x71, 0x6c, 0x45, 0x78, - 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, - 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, - 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x22, 0xae, 0x0b, 0x0a, 0x1f, 0x53, 0x71, 0x6c, + 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x52, + 0x0a, 0x08, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x36, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, - 0x69, 0x6e, 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x34, 0x0a, 0x30, - 0x53, 0x51, 0x4c, 0x5f, 0x45, 0x58, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x53, 0x59, 0x4e, - 0x43, 0x5f, 0x53, 0x45, 0x54, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, - 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, - 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x42, 0x49, - 0x4e, 0x4c, 0x4f, 0x47, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x44, - 0x10, 0x02, 0x12, 0x21, 0x0a, 0x1d, 0x49, 0x4e, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x54, 0x49, 0x42, - 0x4c, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x56, 0x45, 0x52, 0x53, - 0x49, 0x4f, 0x4e, 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, - 0x5f, 0x41, 0x4c, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x53, 0x45, 0x54, 0x55, 0x50, 0x10, 0x04, - 0x12, 0x1a, 0x0a, 0x16, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, - 0x5f, 0x50, 0x52, 0x49, 0x56, 0x49, 0x4c, 0x45, 0x47, 0x45, 0x10, 0x05, 0x12, 0x1e, 0x0a, 0x1a, - 0x55, 0x4e, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x4d, 0x49, 0x47, 0x52, - 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x06, 0x12, 0x1a, 0x0a, 0x16, - 0x4e, 0x4f, 0x5f, 0x50, 0x47, 0x4c, 0x4f, 0x47, 0x49, 0x43, 0x41, 0x4c, 0x5f, 0x49, 0x4e, 0x53, - 0x54, 0x41, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0x07, 0x12, 0x21, 0x0a, 0x1d, 0x50, 0x47, 0x4c, 0x4f, - 0x47, 0x49, 0x43, 0x41, 0x4c, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x4c, 0x52, 0x45, 0x41, - 0x44, 0x59, 0x5f, 0x45, 0x58, 0x49, 0x53, 0x54, 0x53, 0x10, 0x08, 0x12, 0x15, 0x0a, 0x11, 0x49, - 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x57, 0x41, 0x4c, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, - 0x10, 0x09, 0x12, 0x22, 0x0a, 0x1e, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x53, 0x48, - 0x41, 0x52, 0x45, 0x44, 0x5f, 0x50, 0x52, 0x45, 0x4c, 0x4f, 0x41, 0x44, 0x5f, 0x4c, 0x49, 0x42, - 0x52, 0x41, 0x52, 0x59, 0x10, 0x0a, 0x12, 0x26, 0x0a, 0x22, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, - 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x4d, 0x41, 0x58, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, - 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x4c, 0x4f, 0x54, 0x53, 0x10, 0x0b, 0x12, 0x20, - 0x0a, 0x1c, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x4d, - 0x41, 0x58, 0x5f, 0x57, 0x41, 0x4c, 0x5f, 0x53, 0x45, 0x4e, 0x44, 0x45, 0x52, 0x53, 0x10, 0x0c, - 0x12, 0x25, 0x0a, 0x21, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, - 0x5f, 0x4d, 0x41, 0x58, 0x5f, 0x57, 0x4f, 0x52, 0x4b, 0x45, 0x52, 0x5f, 0x50, 0x52, 0x4f, 0x43, - 0x45, 0x53, 0x53, 0x45, 0x53, 0x10, 0x0d, 0x12, 0x1a, 0x0a, 0x16, 0x55, 0x4e, 0x53, 0x55, 0x50, - 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x45, 0x58, 0x54, 0x45, 0x4e, 0x53, 0x49, 0x4f, 0x4e, - 0x53, 0x10, 0x0e, 0x12, 0x23, 0x0a, 0x1f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x52, - 0x44, 0x53, 0x5f, 0x4c, 0x4f, 0x47, 0x49, 0x43, 0x41, 0x4c, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, - 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x0f, 0x12, 0x19, 0x0a, 0x15, 0x49, 0x4e, 0x56, 0x41, - 0x4c, 0x49, 0x44, 0x5f, 0x4c, 0x4f, 0x47, 0x47, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x45, 0x54, 0x55, - 0x50, 0x10, 0x10, 0x12, 0x14, 0x0a, 0x10, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x44, - 0x42, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x10, 0x11, 0x12, 0x19, 0x0a, 0x15, 0x55, 0x4e, 0x53, - 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x47, 0x54, 0x49, 0x44, 0x5f, 0x4d, 0x4f, - 0x44, 0x45, 0x10, 0x12, 0x12, 0x1f, 0x0a, 0x1b, 0x53, 0x51, 0x4c, 0x53, 0x45, 0x52, 0x56, 0x45, - 0x52, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x52, 0x55, 0x4e, 0x4e, - 0x49, 0x4e, 0x47, 0x10, 0x13, 0x12, 0x20, 0x0a, 0x1c, 0x55, 0x4e, 0x53, 0x55, 0x50, 0x50, 0x4f, - 0x52, 0x54, 0x45, 0x44, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x44, 0x45, 0x46, 0x49, 0x4e, - 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x14, 0x12, 0x17, 0x0a, 0x13, 0x55, 0x4e, 0x53, 0x55, 0x50, - 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x52, 0x10, 0x15, - 0x12, 0x21, 0x0a, 0x1d, 0x53, 0x51, 0x4c, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x53, 0x45, - 0x52, 0x56, 0x45, 0x52, 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x4d, 0x49, 0x53, 0x4d, 0x41, 0x54, 0x43, - 0x48, 0x10, 0x16, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, 0x5f, 0x41, - 0x4c, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x53, 0x45, 0x54, 0x55, 0x50, 0x10, 0x17, 0x12, 0x1d, - 0x0a, 0x19, 0x55, 0x4e, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x42, 0x49, - 0x4e, 0x4c, 0x4f, 0x47, 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x10, 0x18, 0x12, 0x1c, 0x0a, - 0x18, 0x42, 0x49, 0x4e, 0x4c, 0x4f, 0x47, 0x5f, 0x52, 0x45, 0x54, 0x45, 0x4e, 0x54, 0x49, 0x4f, - 0x4e, 0x5f, 0x53, 0x45, 0x54, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x19, 0x12, 0x1e, 0x0a, 0x1a, 0x55, - 0x4e, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x41, - 0x47, 0x45, 0x5f, 0x45, 0x4e, 0x47, 0x49, 0x4e, 0x45, 0x10, 0x1a, 0x12, 0x1a, 0x0a, 0x16, 0x4c, - 0x49, 0x4d, 0x49, 0x54, 0x45, 0x44, 0x5f, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x54, - 0x41, 0x42, 0x4c, 0x45, 0x53, 0x10, 0x1b, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x58, 0x49, 0x53, 0x54, - 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x50, 0x4c, - 0x49, 0x43, 0x41, 0x10, 0x1c, 0x12, 0x1f, 0x0a, 0x1b, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4e, 0x47, - 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x49, 0x4c, - 0x45, 0x47, 0x45, 0x53, 0x10, 0x1d, 0x12, 0x20, 0x0a, 0x1c, 0x52, 0x49, 0x53, 0x4b, 0x59, 0x5f, - 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x5f, 0x50, 0x52, 0x49, - 0x56, 0x49, 0x4c, 0x45, 0x47, 0x45, 0x10, 0x1e, 0x12, 0x20, 0x0a, 0x1c, 0x49, 0x4e, 0x53, 0x55, - 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x47, 0x43, 0x53, 0x5f, 0x50, 0x45, 0x52, - 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x53, 0x10, 0x1f, 0x12, 0x15, 0x0a, 0x11, 0x49, 0x4e, - 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x46, 0x49, 0x4c, 0x45, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, - 0x20, 0x12, 0x21, 0x0a, 0x1d, 0x55, 0x4e, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, - 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x53, 0x45, 0x54, 0x54, 0x49, 0x4e, - 0x47, 0x53, 0x10, 0x21, 0x12, 0x30, 0x0a, 0x2c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x50, 0x41, - 0x52, 0x41, 0x4c, 0x4c, 0x45, 0x4c, 0x5f, 0x49, 0x4d, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x49, 0x4e, - 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x49, - 0x4c, 0x45, 0x47, 0x45, 0x10, 0x22, 0x12, 0x14, 0x0a, 0x10, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, - 0x49, 0x4e, 0x46, 0x49, 0x4c, 0x45, 0x5f, 0x4f, 0x46, 0x46, 0x10, 0x23, 0x12, 0x1e, 0x0a, 0x1a, - 0x54, 0x55, 0x52, 0x4e, 0x5f, 0x4f, 0x4e, 0x5f, 0x50, 0x49, 0x54, 0x52, 0x5f, 0x41, 0x46, 0x54, - 0x45, 0x52, 0x5f, 0x50, 0x52, 0x4f, 0x4d, 0x4f, 0x54, 0x45, 0x10, 0x24, 0x12, 0x27, 0x0a, 0x23, - 0x49, 0x4e, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x54, 0x49, 0x42, 0x4c, 0x45, 0x5f, 0x44, 0x41, 0x54, - 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x4d, 0x49, 0x4e, 0x4f, 0x52, 0x5f, 0x56, 0x45, 0x52, 0x53, - 0x49, 0x4f, 0x4e, 0x10, 0x25, 0x12, 0x1c, 0x0a, 0x18, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, - 0x4d, 0x41, 0x58, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, - 0x53, 0x10, 0x26, 0x12, 0x1d, 0x0a, 0x19, 0x55, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x54, 0x4f, - 0x5f, 0x56, 0x45, 0x52, 0x49, 0x46, 0x59, 0x5f, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x52, 0x53, - 0x10, 0x27, 0x12, 0x23, 0x0a, 0x1f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, - 0x4f, 0x4e, 0x5f, 0x43, 0x41, 0x4c, 0x43, 0x55, 0x4c, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, - 0x54, 0x41, 0x54, 0x55, 0x53, 0x10, 0x28, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x47, 0x5f, 0x53, 0x55, - 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, - 0x10, 0x29, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x47, 0x5f, 0x53, 0x59, 0x4e, 0x43, 0x5f, 0x50, 0x41, - 0x52, 0x41, 0x4c, 0x4c, 0x45, 0x4c, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x10, 0x2a, 0x12, 0x1a, - 0x0a, 0x16, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x44, - 0x49, 0x53, 0x4b, 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x10, 0x2b, 0x12, 0x1d, 0x0a, 0x19, 0x49, 0x4e, - 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x4d, 0x41, 0x43, 0x48, 0x49, - 0x4e, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x10, 0x2c, 0x22, 0xe6, 0x05, 0x0a, 0x0f, 0x49, 0x70, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3d, 0x0a, - 0x0c, 0x69, 0x70, 0x76, 0x34, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 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, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, - 0x0b, 0x69, 0x70, 0x76, 0x34, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, - 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4e, 0x65, - 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x3b, 0x0a, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, - 0x5f, 0x73, 0x73, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, - 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x53, - 0x73, 0x6c, 0x12, 0x54, 0x0a, 0x13, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, - 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x23, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, - 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x41, 0x63, 0x6c, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x12, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, - 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x6c, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x64, 0x49, - 0x70, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x7a, 0x0a, 0x2d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, - 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x66, 0x6f, - 0x72, 0x5f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x73, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x27, 0x65, 0x6e, 0x61, 0x62, 0x6c, - 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x50, 0x61, 0x74, 0x68, 0x46, 0x6f, 0x72, 0x47, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x73, 0x12, 0x4d, 0x0a, 0x08, 0x73, 0x73, 0x6c, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x69, 0x6e, 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x08, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, + 0x67, 0x73, 0x22, 0xf8, 0x0d, 0x0a, 0x1b, 0x53, 0x71, 0x6c, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x6a, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x56, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, - 0x2e, 0x49, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x53, 0x73, 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x73, 0x73, 0x6c, 0x4d, 0x6f, 0x64, - 0x65, 0x12, 0x48, 0x0a, 0x0a, 0x70, 0x73, 0x63, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, - 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x34, 0x2e, 0x50, 0x73, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x09, 0x70, - 0x73, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x88, 0x01, 0x01, 0x22, 0x85, 0x01, 0x0a, 0x07, - 0x53, 0x73, 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x53, 0x4c, 0x5f, 0x4d, - 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, - 0x00, 0x12, 0x23, 0x0a, 0x1f, 0x41, 0x4c, 0x4c, 0x4f, 0x57, 0x5f, 0x55, 0x4e, 0x45, 0x4e, 0x43, - 0x52, 0x59, 0x50, 0x54, 0x45, 0x44, 0x5f, 0x41, 0x4e, 0x44, 0x5f, 0x45, 0x4e, 0x43, 0x52, 0x59, - 0x50, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, - 0x54, 0x45, 0x44, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x02, 0x12, 0x27, 0x0a, 0x23, 0x54, 0x52, - 0x55, 0x53, 0x54, 0x45, 0x44, 0x5f, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x45, 0x52, - 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, - 0x44, 0x10, 0x03, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x73, 0x63, 0x5f, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x22, 0x82, 0x01, 0x0a, 0x09, 0x50, 0x73, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x12, 0x24, 0x0a, 0x0b, 0x70, 0x73, 0x63, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0a, 0x70, 0x73, 0x63, 0x45, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x19, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, - 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x17, - 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x72, 0x50, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x70, 0x73, 0x63, 0x5f, - 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0xad, 0x01, 0x0a, 0x09, 0x49, 0x70, 0x4d, 0x61, - 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x3f, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, - 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, - 0x53, 0x71, 0x6c, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x54, 0x79, 0x70, 0x65, - 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x40, 0x0a, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x6f, - 0x5f, 0x72, 0x65, 0x74, 0x69, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x54, - 0x6f, 0x52, 0x65, 0x74, 0x69, 0x72, 0x65, 0x22, 0x9d, 0x01, 0x0a, 0x12, 0x4c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x38, - 0x0a, 0x16, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x67, 0x61, 0x65, 0x5f, 0x61, 0x70, 0x70, - 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, - 0x18, 0x01, 0x52, 0x14, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x47, 0x61, 0x65, 0x41, 0x70, 0x70, - 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x7a, 0x6f, 0x6e, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x7a, 0x6f, 0x6e, 0x65, 0x12, 0x25, 0x0a, 0x0e, - 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5a, - 0x6f, 0x6e, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xd5, 0x01, 0x0a, 0x11, 0x4d, 0x61, 0x69, 0x6e, - 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x12, 0x2f, 0x0a, - 0x04, 0x68, 0x6f, 0x75, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, - 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x68, 0x6f, 0x75, 0x72, 0x12, 0x2d, - 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, - 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x03, 0x64, 0x61, 0x79, 0x12, 0x4c, 0x0a, - 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, + 0x2e, 0x53, 0x71, 0x6c, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, + 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x2e, 0x53, 0x71, 0x6c, + 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x74, 0x74, + 0x69, 0x6e, 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x22, 0xc0, 0x0c, 0x0a, 0x1f, 0x53, + 0x71, 0x6c, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, + 0x74, 0x74, 0x69, 0x6e, 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x34, + 0x0a, 0x30, 0x53, 0x51, 0x4c, 0x5f, 0x45, 0x58, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x53, + 0x59, 0x4e, 0x43, 0x5f, 0x53, 0x45, 0x54, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, + 0x45, 0x44, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, + 0x4f, 0x4e, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, + 0x42, 0x49, 0x4e, 0x4c, 0x4f, 0x47, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x45, 0x4e, 0x41, 0x42, 0x4c, + 0x45, 0x44, 0x10, 0x02, 0x12, 0x21, 0x0a, 0x1d, 0x49, 0x4e, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x54, + 0x49, 0x42, 0x4c, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x56, 0x45, + 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x45, 0x50, 0x4c, 0x49, + 0x43, 0x41, 0x5f, 0x41, 0x4c, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x53, 0x45, 0x54, 0x55, 0x50, + 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, + 0x4e, 0x54, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x49, 0x4c, 0x45, 0x47, 0x45, 0x10, 0x05, 0x12, 0x1e, + 0x0a, 0x1a, 0x55, 0x4e, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x4d, 0x49, + 0x47, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x06, 0x12, 0x1a, + 0x0a, 0x16, 0x4e, 0x4f, 0x5f, 0x50, 0x47, 0x4c, 0x4f, 0x47, 0x49, 0x43, 0x41, 0x4c, 0x5f, 0x49, + 0x4e, 0x53, 0x54, 0x41, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0x07, 0x12, 0x21, 0x0a, 0x1d, 0x50, 0x47, + 0x4c, 0x4f, 0x47, 0x49, 0x43, 0x41, 0x4c, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x4c, 0x52, + 0x45, 0x41, 0x44, 0x59, 0x5f, 0x45, 0x58, 0x49, 0x53, 0x54, 0x53, 0x10, 0x08, 0x12, 0x15, 0x0a, + 0x11, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x57, 0x41, 0x4c, 0x5f, 0x4c, 0x45, 0x56, + 0x45, 0x4c, 0x10, 0x09, 0x12, 0x22, 0x0a, 0x1e, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, + 0x53, 0x48, 0x41, 0x52, 0x45, 0x44, 0x5f, 0x50, 0x52, 0x45, 0x4c, 0x4f, 0x41, 0x44, 0x5f, 0x4c, + 0x49, 0x42, 0x52, 0x41, 0x52, 0x59, 0x10, 0x0a, 0x12, 0x26, 0x0a, 0x22, 0x49, 0x4e, 0x53, 0x55, + 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x4d, 0x41, 0x58, 0x5f, 0x52, 0x45, 0x50, + 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x4c, 0x4f, 0x54, 0x53, 0x10, 0x0b, + 0x12, 0x20, 0x0a, 0x1c, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, + 0x5f, 0x4d, 0x41, 0x58, 0x5f, 0x57, 0x41, 0x4c, 0x5f, 0x53, 0x45, 0x4e, 0x44, 0x45, 0x52, 0x53, + 0x10, 0x0c, 0x12, 0x25, 0x0a, 0x21, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, + 0x4e, 0x54, 0x5f, 0x4d, 0x41, 0x58, 0x5f, 0x57, 0x4f, 0x52, 0x4b, 0x45, 0x52, 0x5f, 0x50, 0x52, + 0x4f, 0x43, 0x45, 0x53, 0x53, 0x45, 0x53, 0x10, 0x0d, 0x12, 0x1a, 0x0a, 0x16, 0x55, 0x4e, 0x53, + 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x45, 0x58, 0x54, 0x45, 0x4e, 0x53, 0x49, + 0x4f, 0x4e, 0x53, 0x10, 0x0e, 0x12, 0x23, 0x0a, 0x1f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, + 0x5f, 0x52, 0x44, 0x53, 0x5f, 0x4c, 0x4f, 0x47, 0x49, 0x43, 0x41, 0x4c, 0x5f, 0x52, 0x45, 0x50, + 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x0f, 0x12, 0x19, 0x0a, 0x15, 0x49, 0x4e, + 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4c, 0x4f, 0x47, 0x47, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x45, + 0x54, 0x55, 0x50, 0x10, 0x10, 0x12, 0x14, 0x0a, 0x10, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, + 0x5f, 0x44, 0x42, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x10, 0x11, 0x12, 0x19, 0x0a, 0x15, 0x55, + 0x4e, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x47, 0x54, 0x49, 0x44, 0x5f, + 0x4d, 0x4f, 0x44, 0x45, 0x10, 0x12, 0x12, 0x1f, 0x0a, 0x1b, 0x53, 0x51, 0x4c, 0x53, 0x45, 0x52, + 0x56, 0x45, 0x52, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x52, 0x55, + 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x13, 0x12, 0x20, 0x0a, 0x1c, 0x55, 0x4e, 0x53, 0x55, 0x50, + 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x44, 0x45, 0x46, + 0x49, 0x4e, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x14, 0x12, 0x17, 0x0a, 0x13, 0x55, 0x4e, 0x53, + 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x52, + 0x10, 0x15, 0x12, 0x21, 0x0a, 0x1d, 0x53, 0x51, 0x4c, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, + 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x4d, 0x49, 0x53, 0x4d, 0x41, + 0x54, 0x43, 0x48, 0x10, 0x16, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, + 0x5f, 0x41, 0x4c, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x53, 0x45, 0x54, 0x55, 0x50, 0x10, 0x17, + 0x12, 0x1d, 0x0a, 0x19, 0x55, 0x4e, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, + 0x42, 0x49, 0x4e, 0x4c, 0x4f, 0x47, 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x10, 0x18, 0x12, + 0x1c, 0x0a, 0x18, 0x42, 0x49, 0x4e, 0x4c, 0x4f, 0x47, 0x5f, 0x52, 0x45, 0x54, 0x45, 0x4e, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x45, 0x54, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x19, 0x12, 0x1e, 0x0a, + 0x1a, 0x55, 0x4e, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x53, 0x54, 0x4f, + 0x52, 0x41, 0x47, 0x45, 0x5f, 0x45, 0x4e, 0x47, 0x49, 0x4e, 0x45, 0x10, 0x1a, 0x12, 0x1a, 0x0a, + 0x16, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x45, 0x44, 0x5f, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, + 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x53, 0x10, 0x1b, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x58, 0x49, + 0x53, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x49, 0x4e, 0x5f, 0x52, 0x45, + 0x50, 0x4c, 0x49, 0x43, 0x41, 0x10, 0x1c, 0x12, 0x1f, 0x0a, 0x1b, 0x4d, 0x49, 0x53, 0x53, 0x49, + 0x4e, 0x47, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x50, 0x52, 0x49, 0x56, + 0x49, 0x4c, 0x45, 0x47, 0x45, 0x53, 0x10, 0x1d, 0x12, 0x20, 0x0a, 0x1c, 0x52, 0x49, 0x53, 0x4b, + 0x59, 0x5f, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x5f, 0x50, + 0x52, 0x49, 0x56, 0x49, 0x4c, 0x45, 0x47, 0x45, 0x10, 0x1e, 0x12, 0x20, 0x0a, 0x1c, 0x49, 0x4e, + 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x47, 0x43, 0x53, 0x5f, 0x50, + 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x53, 0x10, 0x1f, 0x12, 0x15, 0x0a, 0x11, + 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x46, 0x49, 0x4c, 0x45, 0x5f, 0x49, 0x4e, 0x46, + 0x4f, 0x10, 0x20, 0x12, 0x21, 0x0a, 0x1d, 0x55, 0x4e, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, + 0x45, 0x44, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x53, 0x45, 0x54, 0x54, + 0x49, 0x4e, 0x47, 0x53, 0x10, 0x21, 0x12, 0x30, 0x0a, 0x2c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, + 0x50, 0x41, 0x52, 0x41, 0x4c, 0x4c, 0x45, 0x4c, 0x5f, 0x49, 0x4d, 0x50, 0x4f, 0x52, 0x54, 0x5f, + 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x52, 0x49, + 0x56, 0x49, 0x4c, 0x45, 0x47, 0x45, 0x10, 0x22, 0x12, 0x14, 0x0a, 0x10, 0x4c, 0x4f, 0x43, 0x41, + 0x4c, 0x5f, 0x49, 0x4e, 0x46, 0x49, 0x4c, 0x45, 0x5f, 0x4f, 0x46, 0x46, 0x10, 0x23, 0x12, 0x1e, + 0x0a, 0x1a, 0x54, 0x55, 0x52, 0x4e, 0x5f, 0x4f, 0x4e, 0x5f, 0x50, 0x49, 0x54, 0x52, 0x5f, 0x41, + 0x46, 0x54, 0x45, 0x52, 0x5f, 0x50, 0x52, 0x4f, 0x4d, 0x4f, 0x54, 0x45, 0x10, 0x24, 0x12, 0x27, + 0x0a, 0x23, 0x49, 0x4e, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x54, 0x49, 0x42, 0x4c, 0x45, 0x5f, 0x44, + 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x4d, 0x49, 0x4e, 0x4f, 0x52, 0x5f, 0x56, 0x45, + 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x25, 0x12, 0x1c, 0x0a, 0x18, 0x53, 0x4f, 0x55, 0x52, 0x43, + 0x45, 0x5f, 0x4d, 0x41, 0x58, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, + 0x4f, 0x4e, 0x53, 0x10, 0x26, 0x12, 0x1d, 0x0a, 0x19, 0x55, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x5f, + 0x54, 0x4f, 0x5f, 0x56, 0x45, 0x52, 0x49, 0x46, 0x59, 0x5f, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, + 0x52, 0x53, 0x10, 0x27, 0x12, 0x23, 0x0a, 0x1f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x41, 0x4c, 0x43, 0x55, 0x4c, 0x41, 0x54, 0x49, 0x4f, 0x4e, + 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x10, 0x28, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x47, 0x5f, + 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x55, + 0x4e, 0x54, 0x10, 0x29, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x47, 0x5f, 0x53, 0x59, 0x4e, 0x43, 0x5f, + 0x50, 0x41, 0x52, 0x41, 0x4c, 0x4c, 0x45, 0x4c, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x10, 0x2a, + 0x12, 0x1a, 0x0a, 0x16, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, + 0x5f, 0x44, 0x49, 0x53, 0x4b, 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x10, 0x2b, 0x12, 0x1d, 0x0a, 0x19, + 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x4d, 0x41, 0x43, + 0x48, 0x49, 0x4e, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x10, 0x2c, 0x12, 0x27, 0x0a, 0x23, 0x55, + 0x4e, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x45, 0x58, 0x54, 0x45, 0x4e, + 0x53, 0x49, 0x4f, 0x4e, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x4d, 0x49, 0x47, 0x52, 0x41, 0x54, + 0x45, 0x44, 0x10, 0x2d, 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x58, 0x54, 0x45, 0x4e, 0x53, 0x49, 0x4f, + 0x4e, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x4d, 0x49, 0x47, 0x52, 0x41, 0x54, 0x45, 0x44, 0x10, + 0x2e, 0x12, 0x23, 0x0a, 0x1f, 0x50, 0x47, 0x5f, 0x43, 0x52, 0x4f, 0x4e, 0x5f, 0x46, 0x4c, 0x41, + 0x47, 0x5f, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x5f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x50, + 0x4c, 0x49, 0x43, 0x41, 0x10, 0x2f, 0x12, 0x25, 0x0a, 0x21, 0x45, 0x58, 0x54, 0x45, 0x4e, 0x53, + 0x49, 0x4f, 0x4e, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x44, + 0x5f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x10, 0x30, 0x22, 0xe6, 0x05, + 0x0a, 0x0f, 0x49, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x3d, 0x0a, 0x0c, 0x69, 0x70, 0x76, 0x34, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, + 0x64, 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, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x52, 0x0b, 0x69, 0x70, 0x76, 0x34, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x72, 0x69, 0x76, 0x61, + 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x3b, 0x0a, 0x0b, 0x72, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x5f, 0x73, 0x73, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x71, 0x75, + 0x69, 0x72, 0x65, 0x53, 0x73, 0x6c, 0x12, 0x54, 0x0a, 0x13, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, + 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, - 0x53, 0x71, 0x6c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x52, 0x0b, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x6b, - 0x69, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, - 0x65, 0x0a, 0x15, 0x44, 0x65, 0x6e, 0x79, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, - 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, - 0x74, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x64, - 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, - 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x22, 0xd1, 0x02, 0x0a, 0x0e, 0x49, 0x6e, 0x73, 0x69, 0x67, - 0x68, 0x74, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x34, 0x0a, 0x16, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x73, 0x69, 0x67, 0x68, 0x74, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x49, 0x6e, 0x73, 0x69, 0x67, 0x68, 0x74, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, - 0x32, 0x0a, 0x15, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, - 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x5f, 0x61, 0x70, - 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x61, 0x67, 0x73, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x41, 0x70, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x67, 0x73, 0x12, 0x4b, 0x0a, 0x13, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x65, 0x6e, 0x67, - 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x71, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x50, 0x0a, 0x16, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, 0x69, 0x6e, 0x75, - 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x13, 0x71, 0x75, 0x65, 0x72, 0x79, 0x50, 0x6c, 0x61, 0x6e, - 0x73, 0x50, 0x65, 0x72, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x22, 0xa1, 0x04, 0x0a, 0x19, 0x4d, - 0x79, 0x53, 0x71, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x75, 0x6d, 0x70, - 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x64, 0x75, 0x6d, 0x70, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1a, - 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, - 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, - 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x51, 0x0a, 0x16, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x5f, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x74, 0x72, - 0x79, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x53, 0x0a, 0x17, 0x6d, 0x61, 0x73, - 0x74, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x5f, 0x70, 0x65, - 0x72, 0x69, 0x6f, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, - 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x48, - 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x25, - 0x0a, 0x0e, 0x63, 0x61, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x61, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, - 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, - 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x11, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, - 0x63, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6b, - 0x65, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x73, 0x6c, 0x5f, 0x63, 0x69, 0x70, 0x68, 0x65, - 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x69, 0x70, 0x68, - 0x65, 0x72, 0x12, 0x56, 0x0a, 0x19, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x5f, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x52, 0x17, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, - 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, - 0x6e, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xf4, - 0x02, 0x0a, 0x17, 0x4f, 0x6e, 0x50, 0x72, 0x65, 0x6d, 0x69, 0x73, 0x65, 0x73, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x6f, - 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, - 0x6f, 0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, - 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, - 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, - 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, - 0x6f, 0x72, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x61, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, - 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x61, 0x43, - 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x65, - 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x75, 0x6d, 0x70, - 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x64, 0x75, 0x6d, 0x70, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x55, - 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, + 0x41, 0x63, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x12, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, + 0x69, 0x7a, 0x65, 0x64, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x2c, 0x0a, 0x12, + 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x5f, 0x72, 0x61, 0x6e, + 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x65, 0x64, 0x49, 0x70, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x7a, 0x0a, 0x2d, 0x65, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x74, + 0x68, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5f, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x27, 0x65, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x50, 0x61, 0x74, 0x68, + 0x46, 0x6f, 0x72, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, 0x4d, 0x0a, 0x08, 0x73, 0x73, 0x6c, 0x5f, 0x6d, 0x6f, + 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, + 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x73, 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x73, 0x73, + 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x48, 0x0a, 0x0a, 0x70, 0x73, 0x63, 0x5f, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x50, 0x73, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, + 0x00, 0x52, 0x09, 0x70, 0x73, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x88, 0x01, 0x01, 0x22, + 0x85, 0x01, 0x0a, 0x07, 0x53, 0x73, 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x53, + 0x53, 0x4c, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, + 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x23, 0x0a, 0x1f, 0x41, 0x4c, 0x4c, 0x4f, 0x57, 0x5f, 0x55, + 0x4e, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x45, 0x44, 0x5f, 0x41, 0x4e, 0x44, 0x5f, 0x45, + 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x4e, + 0x43, 0x52, 0x59, 0x50, 0x54, 0x45, 0x44, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x02, 0x12, 0x27, + 0x0a, 0x23, 0x54, 0x52, 0x55, 0x53, 0x54, 0x45, 0x44, 0x5f, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, + 0x5f, 0x43, 0x45, 0x52, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x45, 0x51, + 0x55, 0x49, 0x52, 0x45, 0x44, 0x10, 0x03, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x73, 0x63, 0x5f, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x82, 0x01, 0x0a, 0x09, 0x50, 0x73, 0x63, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x24, 0x0a, 0x0b, 0x70, 0x73, 0x63, 0x5f, 0x65, 0x6e, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0a, 0x70, 0x73, 0x63, + 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x19, 0x61, 0x6c, + 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x72, 0x5f, 0x70, + 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, + 0x41, 0x01, 0x52, 0x17, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x73, 0x75, + 0x6d, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, + 0x70, 0x73, 0x63, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0xad, 0x01, 0x0a, 0x09, + 0x49, 0x70, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x3f, 0x0a, 0x04, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x34, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x65, - 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x53, 0x0a, 0x1b, 0x44, 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x63, - 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0c, 0x6b, 0x6d, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6b, 0x6d, 0x73, 0x4b, - 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0x5b, 0x0a, 0x14, 0x44, 0x69, - 0x73, 0x6b, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x2f, 0x0a, 0x14, 0x6b, 0x6d, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x76, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x11, 0x6b, 0x6d, 0x73, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xee, 0x0d, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x4f, 0x0a, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x6d, 0x6f, 0x63, - 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, - 0x73, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, - 0x3b, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, + 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, + 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x40, 0x0a, 0x0e, 0x74, 0x69, 0x6d, + 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x74, 0x69, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0c, 0x74, + 0x69, 0x6d, 0x65, 0x54, 0x6f, 0x52, 0x65, 0x74, 0x69, 0x72, 0x65, 0x22, 0x9d, 0x01, 0x0a, 0x12, + 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, + 0x63, 0x65, 0x12, 0x38, 0x0a, 0x16, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x67, 0x61, 0x65, + 0x5f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x14, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x47, 0x61, + 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, + 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x7a, 0x6f, 0x6e, 0x65, + 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x7a, 0x6f, + 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, + 0x61, 0x72, 0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xd5, 0x01, 0x0a, 0x11, + 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x57, 0x69, 0x6e, 0x64, 0x6f, + 0x77, 0x12, 0x2f, 0x0a, 0x04, 0x68, 0x6f, 0x75, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x68, 0x6f, + 0x75, 0x72, 0x12, 0x2d, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x03, 0x64, 0x61, + 0x79, 0x12, 0x4c, 0x0a, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x63, + 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, + 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, + 0x63, 0x6b, 0x52, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x12, + 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, + 0x69, 0x6e, 0x64, 0x22, 0x65, 0x0a, 0x15, 0x44, 0x65, 0x6e, 0x79, 0x4d, 0x61, 0x69, 0x6e, 0x74, + 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x1d, 0x0a, 0x0a, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, + 0x6e, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, + 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x22, 0xd1, 0x02, 0x0a, 0x0e, 0x49, + 0x6e, 0x73, 0x69, 0x67, 0x68, 0x74, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x34, 0x0a, + 0x16, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x73, 0x69, 0x67, 0x68, 0x74, 0x73, 0x5f, + 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x73, 0x69, 0x67, 0x68, 0x74, 0x73, 0x45, 0x6e, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x5f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x13, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x72, 0x65, 0x63, 0x6f, 0x72, + 0x64, 0x5f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x61, + 0x67, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, + 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x67, 0x73, 0x12, + 0x4b, 0x0a, 0x13, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, + 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, + 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x50, 0x0a, 0x16, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, + 0x6d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, + 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x13, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x50, 0x6c, 0x61, 0x6e, 0x73, 0x50, 0x65, 0x72, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x22, 0xa1, + 0x04, 0x0a, 0x19, 0x4d, 0x79, 0x53, 0x71, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, + 0x64, 0x75, 0x6d, 0x70, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x75, 0x6d, 0x70, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, + 0x74, 0x68, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x51, 0x0a, 0x16, 0x63, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x74, 0x65, + 0x72, 0x76, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, + 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x52, 0x65, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x53, 0x0a, + 0x17, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, + 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, 0x6d, 0x61, 0x73, + 0x74, 0x65, 0x72, 0x48, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x50, 0x65, 0x72, 0x69, + 0x6f, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x61, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, + 0x63, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x61, 0x43, 0x65, + 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x65, 0x72, + 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x73, 0x6c, 0x5f, 0x63, + 0x69, 0x70, 0x68, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x73, 0x6c, + 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x12, 0x56, 0x0a, 0x19, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, + 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, + 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x17, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, + 0x6e, 0x64, 0x22, 0xf4, 0x02, 0x0a, 0x17, 0x4f, 0x6e, 0x50, 0x72, 0x65, 0x6d, 0x69, 0x73, 0x65, + 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, + 0x0a, 0x09, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6b, + 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, + 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x61, 0x5f, 0x63, 0x65, + 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0d, 0x63, 0x61, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x2d, + 0x0a, 0x12, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, + 0x63, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, + 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x24, 0x0a, 0x0e, + 0x64, 0x75, 0x6d, 0x70, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x75, 0x6d, 0x70, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, + 0x74, 0x68, 0x12, 0x55, 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6d, 0x6f, + 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x53, 0x0a, 0x1b, 0x44, 0x69, 0x73, + 0x6b, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0c, 0x6b, 0x6d, 0x73, 0x5f, + 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x6b, 0x6d, 0x73, 0x4b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, + 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0x5b, + 0x0a, 0x14, 0x44, 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2f, 0x0a, 0x14, 0x6b, 0x6d, 0x73, 0x5f, 0x6b, 0x65, + 0x79, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6b, 0x6d, 0x73, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xfe, 0x0f, 0x0a, 0x09, + 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x1f, 0x0a, + 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x4f, + 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, + 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, + 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, + 0x73, 0x65, 0x72, 0x12, 0x3b, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x52, 0x0a, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x0a, - 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x07, 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, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, - 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, - 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, - 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, - 0x12, 0x46, 0x0a, 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x18, - 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, - 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x34, 0x2e, 0x41, 0x70, 0x69, 0x57, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x0a, 0x61, 0x70, - 0x69, 0x57, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x5c, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x35, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x4f, 0x0a, 0x0e, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, - 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, - 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, - 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, - 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0d, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, - 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x4f, 0x0a, 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, - 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0d, 0x65, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x4f, 0x0a, 0x0e, 0x62, 0x61, 0x63, 0x6b, - 0x75, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x42, 0x61, 0x63, - 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0d, 0x62, 0x61, 0x63, 0x6b, - 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, - 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, - 0x6c, 0x66, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, - 0x65, 0x6c, 0x66, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0xe7, - 0x05, 0x0a, 0x10, 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x53, 0x51, 0x4c, 0x5f, 0x4f, 0x50, 0x45, 0x52, 0x41, - 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, - 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x49, 0x4d, 0x50, 0x4f, 0x52, - 0x54, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x10, 0x02, 0x12, - 0x0a, 0x0a, 0x06, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x55, - 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x45, 0x4c, 0x45, 0x54, - 0x45, 0x10, 0x05, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x45, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x06, - 0x12, 0x0e, 0x0a, 0x06, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x10, 0x07, 0x1a, 0x02, 0x08, 0x01, - 0x12, 0x10, 0x0a, 0x08, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x10, 0x08, 0x1a, 0x02, - 0x08, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x5f, 0x56, 0x4f, 0x4c, - 0x55, 0x4d, 0x45, 0x10, 0x09, 0x12, 0x11, 0x0a, 0x0d, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x5f, - 0x56, 0x4f, 0x4c, 0x55, 0x4d, 0x45, 0x10, 0x0a, 0x12, 0x12, 0x0a, 0x0e, 0x52, 0x45, 0x53, 0x54, - 0x4f, 0x52, 0x45, 0x5f, 0x56, 0x4f, 0x4c, 0x55, 0x4d, 0x45, 0x10, 0x0b, 0x12, 0x0f, 0x0a, 0x0b, - 0x49, 0x4e, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x0c, 0x12, 0x09, 0x0a, - 0x05, 0x43, 0x4c, 0x4f, 0x4e, 0x45, 0x10, 0x0e, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x54, 0x4f, 0x50, - 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x10, 0x0f, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, - 0x41, 0x52, 0x54, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x10, 0x10, 0x12, 0x13, 0x0a, - 0x0f, 0x50, 0x52, 0x4f, 0x4d, 0x4f, 0x54, 0x45, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, - 0x10, 0x11, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x45, 0x50, - 0x4c, 0x49, 0x43, 0x41, 0x10, 0x12, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, - 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x13, 0x12, 0x0f, 0x0a, 0x0b, 0x44, 0x45, 0x4c, 0x45, 0x54, - 0x45, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x14, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x50, 0x44, 0x41, - 0x54, 0x45, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x15, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x52, 0x45, - 0x41, 0x54, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x10, 0x16, 0x12, 0x13, - 0x0a, 0x0f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, - 0x45, 0x10, 0x17, 0x12, 0x13, 0x0a, 0x0f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x41, - 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x10, 0x18, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x41, 0x49, 0x4c, - 0x4f, 0x56, 0x45, 0x52, 0x10, 0x19, 0x12, 0x11, 0x0a, 0x0d, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, - 0x5f, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x10, 0x1a, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x45, 0x43, - 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x10, 0x1b, 0x12, - 0x10, 0x0a, 0x0c, 0x54, 0x52, 0x55, 0x4e, 0x43, 0x41, 0x54, 0x45, 0x5f, 0x4c, 0x4f, 0x47, 0x10, - 0x1c, 0x12, 0x11, 0x0a, 0x0d, 0x44, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x5f, 0x4d, 0x41, 0x53, 0x54, - 0x45, 0x52, 0x10, 0x1d, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, - 0x4e, 0x43, 0x45, 0x10, 0x1e, 0x12, 0x19, 0x0a, 0x11, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x5f, - 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x5f, 0x49, 0x50, 0x10, 0x1f, 0x1a, 0x02, 0x08, 0x01, - 0x12, 0x19, 0x0a, 0x11, 0x44, 0x45, 0x46, 0x45, 0x52, 0x5f, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, - 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x10, 0x20, 0x1a, 0x02, 0x08, 0x01, 0x12, 0x14, 0x0a, 0x0c, 0x43, - 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x4c, 0x4f, 0x4e, 0x45, 0x10, 0x21, 0x1a, 0x02, 0x08, - 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x52, 0x45, 0x53, 0x43, 0x48, 0x45, 0x44, 0x55, 0x4c, 0x45, 0x5f, - 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x10, 0x22, 0x12, 0x17, 0x0a, - 0x13, 0x53, 0x54, 0x41, 0x52, 0x54, 0x5f, 0x45, 0x58, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, - 0x53, 0x59, 0x4e, 0x43, 0x10, 0x23, 0x12, 0x0f, 0x0a, 0x0b, 0x4c, 0x4f, 0x47, 0x5f, 0x43, 0x4c, - 0x45, 0x41, 0x4e, 0x55, 0x50, 0x10, 0x24, 0x12, 0x10, 0x0a, 0x0c, 0x41, 0x55, 0x54, 0x4f, 0x5f, - 0x52, 0x45, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x25, 0x12, 0x0d, 0x0a, 0x09, 0x52, 0x45, 0x45, - 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x10, 0x26, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x57, 0x49, 0x54, - 0x43, 0x48, 0x4f, 0x56, 0x45, 0x52, 0x10, 0x27, 0x22, 0x5e, 0x0a, 0x12, 0x53, 0x71, 0x6c, 0x4f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x24, - 0x0a, 0x20, 0x53, 0x51, 0x4c, 0x5f, 0x4f, 0x50, 0x45, 0x52, 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, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, - 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x08, - 0x0a, 0x04, 0x44, 0x4f, 0x4e, 0x45, 0x10, 0x03, 0x22, 0x52, 0x0a, 0x0e, 0x4f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, - 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x12, - 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, - 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x68, 0x0a, 0x0f, - 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, - 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, - 0x69, 0x6e, 0x64, 0x12, 0x41, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, - 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, - 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, - 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0xa9, 0x05, 0x0a, 0x18, 0x50, 0x61, 0x73, 0x73, 0x77, - 0x6f, 0x72, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, - 0x69, 0x63, 0x79, 0x12, 0x3a, 0x0a, 0x0a, 0x6d, 0x69, 0x6e, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, - 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x6d, 0x69, 0x6e, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, - 0x5e, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x3e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, + 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x65, + 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 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, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2a, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x52, 0x05, 0x65, + 0x72, 0x72, 0x6f, 0x72, 0x12, 0x46, 0x0a, 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x77, 0x61, 0x72, 0x6e, + 0x69, 0x6e, 0x67, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, + 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x41, 0x70, 0x69, 0x57, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, + 0x52, 0x0a, 0x61, 0x70, 0x69, 0x57, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x5c, 0x0a, 0x0e, + 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x71, 0x6c, 0x4f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x6f, 0x70, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x4f, 0x0a, 0x0e, 0x69, 0x6d, + 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, + 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0d, 0x69, 0x6d, + 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x4f, 0x0a, 0x0e, 0x65, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, - 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, - 0x69, 0x74, 0x79, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x69, 0x74, 0x79, 0x12, - 0x42, 0x0a, 0x0e, 0x72, 0x65, 0x75, 0x73, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, - 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x75, 0x73, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, - 0x76, 0x61, 0x6c, 0x12, 0x5a, 0x0a, 0x1b, 0x64, 0x69, 0x73, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, - 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0d, 0x65, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x4f, 0x0a, 0x0e, + 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x11, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0d, + 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1b, + 0x0a, 0x09, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x0e, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x66, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x25, 0x0a, 0x0e, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x0f, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x12, 0x6f, 0x0a, 0x1a, 0x61, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x5f, 0x73, 0x73, + 0x72, 0x73, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, + 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x34, 0x2e, 0x41, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x53, 0x73, 0x72, 0x73, 0x4c, 0x65, + 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x17, 0x61, 0x63, 0x71, 0x75, + 0x69, 0x72, 0x65, 0x53, 0x73, 0x72, 0x73, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x78, 0x74, 0x22, 0x86, 0x07, 0x0a, 0x10, 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x53, 0x51, 0x4c, 0x5f, + 0x4f, 0x50, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, + 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, + 0x49, 0x4d, 0x50, 0x4f, 0x52, 0x54, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x45, 0x58, 0x50, 0x4f, + 0x52, 0x54, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x03, + 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, + 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x05, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x45, 0x53, 0x54, + 0x41, 0x52, 0x54, 0x10, 0x06, 0x12, 0x0e, 0x0a, 0x06, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x10, + 0x07, 0x1a, 0x02, 0x08, 0x01, 0x12, 0x10, 0x0a, 0x08, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, + 0x54, 0x10, 0x08, 0x1a, 0x02, 0x08, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x42, 0x41, 0x43, 0x4b, 0x55, + 0x50, 0x5f, 0x56, 0x4f, 0x4c, 0x55, 0x4d, 0x45, 0x10, 0x09, 0x12, 0x11, 0x0a, 0x0d, 0x44, 0x45, + 0x4c, 0x45, 0x54, 0x45, 0x5f, 0x56, 0x4f, 0x4c, 0x55, 0x4d, 0x45, 0x10, 0x0a, 0x12, 0x12, 0x0a, + 0x0e, 0x52, 0x45, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x56, 0x4f, 0x4c, 0x55, 0x4d, 0x45, 0x10, + 0x0b, 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x4e, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x52, + 0x10, 0x0c, 0x12, 0x09, 0x0a, 0x05, 0x43, 0x4c, 0x4f, 0x4e, 0x45, 0x10, 0x0e, 0x12, 0x10, 0x0a, + 0x0c, 0x53, 0x54, 0x4f, 0x50, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x10, 0x0f, 0x12, + 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x52, 0x54, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, + 0x10, 0x10, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x52, 0x4f, 0x4d, 0x4f, 0x54, 0x45, 0x5f, 0x52, 0x45, + 0x50, 0x4c, 0x49, 0x43, 0x41, 0x10, 0x11, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x52, 0x45, 0x41, 0x54, + 0x45, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x10, 0x12, 0x12, 0x0f, 0x0a, 0x0b, 0x43, + 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x13, 0x12, 0x0f, 0x0a, 0x0b, + 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x14, 0x12, 0x0f, 0x0a, + 0x0b, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x15, 0x12, 0x13, + 0x0a, 0x0f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, + 0x45, 0x10, 0x16, 0x12, 0x13, 0x0a, 0x0f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x5f, 0x44, 0x41, + 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x10, 0x17, 0x12, 0x13, 0x0a, 0x0f, 0x55, 0x50, 0x44, 0x41, + 0x54, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x10, 0x18, 0x12, 0x0c, 0x0a, + 0x08, 0x46, 0x41, 0x49, 0x4c, 0x4f, 0x56, 0x45, 0x52, 0x10, 0x19, 0x12, 0x11, 0x0a, 0x0d, 0x44, + 0x45, 0x4c, 0x45, 0x54, 0x45, 0x5f, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x10, 0x1a, 0x12, 0x14, + 0x0a, 0x10, 0x52, 0x45, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, + 0x43, 0x41, 0x10, 0x1b, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x52, 0x55, 0x4e, 0x43, 0x41, 0x54, 0x45, + 0x5f, 0x4c, 0x4f, 0x47, 0x10, 0x1c, 0x12, 0x11, 0x0a, 0x0d, 0x44, 0x45, 0x4d, 0x4f, 0x54, 0x45, + 0x5f, 0x4d, 0x41, 0x53, 0x54, 0x45, 0x52, 0x10, 0x1d, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x41, 0x49, + 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x10, 0x1e, 0x12, 0x19, 0x0a, 0x11, 0x45, 0x4e, + 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x5f, 0x49, 0x50, 0x10, + 0x1f, 0x1a, 0x02, 0x08, 0x01, 0x12, 0x19, 0x0a, 0x11, 0x44, 0x45, 0x46, 0x45, 0x52, 0x5f, 0x4d, + 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x10, 0x20, 0x1a, 0x02, 0x08, 0x01, + 0x12, 0x14, 0x0a, 0x0c, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x4c, 0x4f, 0x4e, 0x45, + 0x10, 0x21, 0x1a, 0x02, 0x08, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x52, 0x45, 0x53, 0x43, 0x48, 0x45, + 0x44, 0x55, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, + 0x10, 0x22, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x54, 0x41, 0x52, 0x54, 0x5f, 0x45, 0x58, 0x54, 0x45, + 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x53, 0x59, 0x4e, 0x43, 0x10, 0x23, 0x12, 0x0f, 0x0a, 0x0b, 0x4c, + 0x4f, 0x47, 0x5f, 0x43, 0x4c, 0x45, 0x41, 0x4e, 0x55, 0x50, 0x10, 0x24, 0x12, 0x10, 0x0a, 0x0c, + 0x41, 0x55, 0x54, 0x4f, 0x5f, 0x52, 0x45, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x25, 0x12, 0x0d, + 0x0a, 0x09, 0x52, 0x45, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x10, 0x26, 0x12, 0x0e, 0x0a, + 0x0a, 0x53, 0x57, 0x49, 0x54, 0x43, 0x48, 0x4f, 0x56, 0x45, 0x52, 0x10, 0x27, 0x12, 0x16, 0x0a, + 0x12, 0x41, 0x43, 0x51, 0x55, 0x49, 0x52, 0x45, 0x5f, 0x53, 0x53, 0x52, 0x53, 0x5f, 0x4c, 0x45, + 0x41, 0x53, 0x45, 0x10, 0x2a, 0x12, 0x16, 0x0a, 0x12, 0x52, 0x45, 0x4c, 0x45, 0x41, 0x53, 0x45, + 0x5f, 0x53, 0x53, 0x52, 0x53, 0x5f, 0x4c, 0x45, 0x41, 0x53, 0x45, 0x10, 0x2b, 0x12, 0x1b, 0x0a, + 0x17, 0x52, 0x45, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x55, 0x52, 0x45, 0x5f, 0x4f, 0x4c, 0x44, + 0x5f, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, 0x10, 0x2c, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x4c, + 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, + 0x45, 0x10, 0x2d, 0x12, 0x1c, 0x0a, 0x18, 0x53, 0x45, 0x4c, 0x46, 0x5f, 0x53, 0x45, 0x52, 0x56, + 0x49, 0x43, 0x45, 0x5f, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x10, + 0x2e, 0x12, 0x19, 0x0a, 0x15, 0x53, 0x57, 0x49, 0x54, 0x43, 0x48, 0x4f, 0x56, 0x45, 0x52, 0x5f, + 0x54, 0x4f, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x10, 0x2f, 0x22, 0x5e, 0x0a, 0x12, + 0x53, 0x71, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x24, 0x0a, 0x20, 0x53, 0x51, 0x4c, 0x5f, 0x4f, 0x50, 0x45, 0x52, 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, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, + 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, + 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x4f, 0x4e, 0x45, 0x10, 0x03, 0x22, 0x52, 0x0a, 0x0e, + 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x12, + 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, + 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x22, 0x68, 0x0a, 0x0f, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x41, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, + 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0xa9, 0x05, 0x0a, 0x18, 0x50, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x3a, 0x0a, 0x0a, 0x6d, 0x69, 0x6e, 0x5f, 0x6c, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, + 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x6d, 0x69, 0x6e, 0x4c, 0x65, 0x6e, + 0x67, 0x74, 0x68, 0x12, 0x5e, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x69, 0x74, + 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, + 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x34, 0x2e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x56, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x43, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x69, 0x74, 0x79, 0x12, 0x42, 0x0a, 0x0e, 0x72, 0x65, 0x75, 0x73, 0x65, 0x5f, 0x69, 0x6e, 0x74, + 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, + 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x75, 0x73, 0x65, 0x49, + 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x5a, 0x0a, 0x1b, 0x64, 0x69, 0x73, 0x61, 0x6c, + 0x6c, 0x6f, 0x77, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x75, 0x62, + 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, + 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x19, 0x64, 0x69, 0x73, 0x61, 0x6c, 0x6c, + 0x6f, 0x77, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x53, 0x75, 0x62, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x12, 0x53, 0x0a, 0x18, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x16, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x50, 0x0a, 0x16, 0x65, 0x6e, 0x61, 0x62, + 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x70, 0x6f, 0x6c, 0x69, + 0x63, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x52, 0x19, 0x64, 0x69, 0x73, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x55, 0x73, - 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x53, 0x75, 0x62, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, - 0x53, 0x0a, 0x18, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x16, 0x70, 0x61, - 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x74, 0x65, - 0x72, 0x76, 0x61, 0x6c, 0x12, 0x50, 0x0a, 0x16, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, - 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x06, + 0x61, 0x6c, 0x75, 0x65, 0x52, 0x14, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, + 0x77, 0x6f, 0x72, 0x64, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x68, 0x0a, 0x20, 0x64, 0x69, + 0x73, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x6f, 0x6d, 0x69, 0x73, + 0x65, 0x64, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x52, 0x14, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, - 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x68, 0x0a, 0x20, 0x64, 0x69, 0x73, 0x61, 0x6c, 0x6c, - 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x6f, 0x6d, 0x69, 0x73, 0x65, 0x64, 0x5f, 0x63, - 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x02, 0x18, 0x01, - 0x52, 0x1e, 0x64, 0x69, 0x73, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x6f, - 0x6d, 0x69, 0x73, 0x65, 0x64, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, - 0x22, 0x40, 0x0a, 0x0a, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x69, 0x74, 0x79, 0x12, 0x1a, - 0x0a, 0x16, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x58, 0x49, 0x54, 0x59, 0x5f, 0x55, 0x4e, 0x53, - 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x4f, - 0x4d, 0x50, 0x4c, 0x45, 0x58, 0x49, 0x54, 0x59, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, - 0x10, 0x01, 0x22, 0x90, 0x01, 0x0a, 0x16, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, - 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, - 0x64, 0x12, 0x3a, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x26, 0x0a, - 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xb5, 0x02, 0x0a, 0x14, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, - 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, - 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, - 0x6e, 0x64, 0x12, 0x74, 0x0a, 0x1b, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x72, 0x65, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, - 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x34, 0x2e, 0x4d, 0x79, 0x53, 0x71, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x19, 0x6d, - 0x79, 0x73, 0x71, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x43, 0x0a, 0x0f, 0x66, 0x61, 0x69, 0x6c, - 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x66, - 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x4e, 0x0a, - 0x12, 0x63, 0x61, 0x73, 0x63, 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x72, 0x65, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x11, 0x63, 0x61, 0x73, 0x63, - 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x22, 0x89, 0x01, - 0x0a, 0x14, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, - 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x61, - 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0b, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, 0x49, 0x64, 0x12, 0x1f, - 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, - 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x4e, 0x0a, 0x15, 0x52, 0x6f, 0x74, - 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x65, - 0x78, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x3f, 0x0a, 0x0f, 0x44, 0x61, 0x74, - 0x61, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2c, 0x0a, 0x12, - 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, - 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x64, 0x61, 0x74, 0x61, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0xbd, 0x17, 0x0a, 0x08, 0x53, - 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x46, 0x0a, 0x10, 0x73, 0x65, 0x74, 0x74, 0x69, - 0x6e, 0x67, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0f, - 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, - 0x42, 0x0a, 0x1b, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x67, 0x61, - 0x65, 0x5f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x19, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, - 0x69, 0x7a, 0x65, 0x64, 0x47, 0x61, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x74, 0x69, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x54, 0x0a, 0x0b, 0x75, - 0x73, 0x65, 0x72, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x65, 0x74, - 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x4c, 0x61, 0x62, 0x65, 0x6c, - 0x73, 0x12, 0x5b, 0x0a, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x6d, - 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x41, 0x76, 0x61, 0x69, - 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x10, 0x61, 0x76, - 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x4c, - 0x0a, 0x0c, 0x70, 0x72, 0x69, 0x63, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x42, 0x02, 0x18, 0x01, 0x52, 0x1e, 0x64, 0x69, 0x73, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, + 0x6d, 0x70, 0x72, 0x6f, 0x6d, 0x69, 0x73, 0x65, 0x64, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x61, 0x6c, 0x73, 0x22, 0x40, 0x0a, 0x0a, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x69, + 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x58, 0x49, 0x54, 0x59, + 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x16, + 0x0a, 0x12, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x58, 0x49, 0x54, 0x59, 0x5f, 0x44, 0x45, 0x46, + 0x41, 0x55, 0x4c, 0x54, 0x10, 0x01, 0x22, 0x90, 0x01, 0x0a, 0x16, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x3a, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, - 0x2e, 0x53, 0x71, 0x6c, 0x50, 0x72, 0x69, 0x63, 0x69, 0x6e, 0x67, 0x50, 0x6c, 0x61, 0x6e, 0x52, - 0x0b, 0x70, 0x72, 0x69, 0x63, 0x69, 0x6e, 0x67, 0x50, 0x6c, 0x61, 0x6e, 0x12, 0x5c, 0x0a, 0x10, - 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, - 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x79, 0x70, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0f, 0x72, 0x65, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x56, 0x0a, 0x19, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x73, 0x69, 0x7a, - 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, + 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, + 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, + 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xb5, 0x02, 0x0a, 0x14, 0x52, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x74, 0x0a, 0x1b, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, + 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x6d, 0x6f, + 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4d, 0x79, 0x53, 0x71, 0x6c, 0x52, 0x65, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x19, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x43, 0x0a, 0x0f, + 0x66, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x52, 0x0e, 0x66, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x12, 0x4e, 0x0a, 0x12, 0x63, 0x61, 0x73, 0x63, 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x5f, + 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x16, 0x73, 0x74, 0x6f, 0x72, - 0x61, 0x67, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x4c, 0x69, 0x6d, - 0x69, 0x74, 0x12, 0x64, 0x0a, 0x11, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, - 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, - 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, - 0x67, 0x73, 0x2e, 0x53, 0x71, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x10, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x55, 0x0a, 0x10, 0x69, 0x70, 0x5f, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, - 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, - 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, - 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x4a, 0x0a, 0x13, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x5f, - 0x72, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, - 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x41, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x5e, 0x0a, 0x13, 0x6c, - 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, - 0x63, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, - 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, - 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x12, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x4f, 0x0a, 0x0e, 0x64, - 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x0e, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, - 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, - 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x52, 0x0d, 0x64, - 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x50, 0x0a, 0x0e, - 0x64, 0x61, 0x74, 0x61, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0f, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x11, + 0x63, 0x61, 0x73, 0x63, 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x22, 0x89, 0x01, 0x0a, 0x14, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x63, + 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, + 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x22, + 0x0a, 0x0d, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6e, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x75, 0x6e, + 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x4e, 0x0a, + 0x15, 0x52, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65, + 0x78, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x3f, 0x0a, + 0x0f, 0x44, 0x61, 0x74, 0x61, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x12, 0x2c, 0x0a, 0x12, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x65, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x64, 0x61, + 0x74, 0x61, 0x43, 0x61, 0x63, 0x68, 0x65, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x80, + 0x19, 0x0a, 0x08, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x46, 0x0a, 0x10, 0x73, + 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x52, 0x0f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x56, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x42, 0x0a, 0x1b, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, + 0x64, 0x5f, 0x67, 0x61, 0x65, 0x5f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x19, 0x61, 0x75, + 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x47, 0x61, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x65, 0x72, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x69, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6b, + 0x69, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, + 0x54, 0x0a, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, - 0x2e, 0x53, 0x71, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x44, 0x69, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, - 0x52, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x44, 0x69, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x5b, - 0x0a, 0x12, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x77, 0x69, - 0x6e, 0x64, 0x6f, 0x77, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6d, 0x6f, 0x63, - 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, - 0x63, 0x65, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x52, 0x11, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, - 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x12, 0x61, 0x0a, 0x14, 0x62, - 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, - 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x62, 0x61, 0x63, 0x6b, 0x75, - 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5c, - 0x0a, 0x1c, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x12, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x52, 0x1a, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x63, 0x0a, 0x1e, - 0x63, 0x72, 0x61, 0x73, 0x68, 0x5f, 0x73, 0x61, 0x66, 0x65, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x13, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x42, 0x02, 0x18, 0x01, 0x52, 0x1b, 0x63, 0x72, 0x61, 0x73, 0x68, 0x53, 0x61, 0x66, 0x65, 0x52, - 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, - 0x64, 0x12, 0x46, 0x0a, 0x11, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x73, - 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x62, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, - 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x44, - 0x69, 0x73, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x47, 0x62, 0x12, 0x6b, 0x0a, 0x17, 0x61, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6d, 0x6f, 0x63, - 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, - 0x15, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x6a, 0x0a, 0x18, 0x64, 0x65, 0x6e, 0x79, 0x5f, 0x6d, 0x61, 0x69, - 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x73, - 0x18, 0x18, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, - 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x34, 0x2e, 0x44, 0x65, 0x6e, 0x79, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, - 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x16, 0x64, 0x65, 0x6e, 0x79, 0x4d, 0x61, - 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x73, - 0x12, 0x52, 0x0a, 0x0f, 0x69, 0x6e, 0x73, 0x69, 0x67, 0x68, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, - 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, 0x6e, 0x73, 0x69, 0x67, 0x68, 0x74, 0x73, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x69, 0x6e, 0x73, 0x69, 0x67, 0x68, 0x74, 0x73, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x12, 0x71, 0x0a, 0x1a, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, - 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6c, 0x69, - 0x63, 0x79, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, - 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x56, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x18, 0x70, - 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x66, 0x0a, 0x17, 0x73, 0x71, 0x6c, 0x5f, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, + 0x2e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x4c, + 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x5b, 0x0a, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x2e, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, + 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, + 0x52, 0x10, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x4c, 0x0a, 0x0c, 0x70, 0x72, 0x69, 0x63, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6c, + 0x61, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x75, - 0x64, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x14, 0x73, 0x71, 0x6c, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x41, 0x75, 0x64, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, - 0x4a, 0x0a, 0x07, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x2b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x65, 0x74, - 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2e, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, - 0x41, 0x01, 0x52, 0x07, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x6d, 0x0a, 0x15, 0x63, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, - 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x6d, 0x6f, 0x63, + 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x50, 0x72, 0x69, 0x63, 0x69, 0x6e, 0x67, 0x50, + 0x6c, 0x61, 0x6e, 0x52, 0x0b, 0x70, 0x72, 0x69, 0x63, 0x69, 0x6e, 0x67, 0x50, 0x6c, 0x61, 0x6e, + 0x12, 0x5c, 0x0a, 0x10, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2e, - 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, - 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x45, - 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x5a, 0x0a, 0x1b, 0x64, 0x65, - 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x19, 0x64, 0x65, 0x6c, - 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x7a, - 0x6f, 0x6e, 0x65, 0x18, 0x22, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x69, 0x6d, 0x65, 0x5a, - 0x6f, 0x6e, 0x65, 0x12, 0x6e, 0x0a, 0x19, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x5f, - 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, - 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0f, 0x72, + 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x56, + 0x0a, 0x19, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x72, + 0x65, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x16, + 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x73, 0x69, 0x7a, + 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x64, 0x0a, 0x11, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x37, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x65, + 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2e, 0x53, 0x71, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x10, 0x61, 0x63, 0x74, 0x69, + 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x55, 0x0a, 0x10, + 0x69, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x34, 0x2e, 0x41, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x4d, 0x61, 0x63, 0x68, 0x69, - 0x6e, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x17, 0x61, 0x64, 0x76, 0x61, - 0x6e, 0x63, 0x65, 0x64, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, - 0x72, 0x65, 0x73, 0x12, 0x56, 0x0a, 0x11, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x61, 0x63, 0x68, - 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, - 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, - 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x43, - 0x61, 0x63, 0x68, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0f, 0x64, 0x61, 0x74, 0x61, - 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x3d, 0x0a, 0x0f, 0x55, - 0x73, 0x65, 0x72, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, - 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, - 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x66, 0x0a, 0x13, 0x53, 0x71, - 0x6c, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, - 0x79, 0x12, 0x25, 0x0a, 0x21, 0x53, 0x51, 0x4c, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x41, 0x54, - 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, - 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x4c, 0x57, 0x41, - 0x59, 0x53, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x45, 0x56, 0x45, 0x52, 0x10, 0x02, 0x12, - 0x11, 0x0a, 0x09, 0x4f, 0x4e, 0x5f, 0x44, 0x45, 0x4d, 0x41, 0x4e, 0x44, 0x10, 0x03, 0x1a, 0x02, - 0x08, 0x01, 0x22, 0x47, 0x0a, 0x07, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, - 0x13, 0x45, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, - 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x50, - 0x52, 0x49, 0x53, 0x45, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x50, - 0x52, 0x49, 0x53, 0x45, 0x5f, 0x50, 0x4c, 0x55, 0x53, 0x10, 0x03, 0x22, 0x5d, 0x0a, 0x14, 0x43, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x21, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x4f, 0x52, - 0x5f, 0x45, 0x4e, 0x46, 0x4f, 0x52, 0x43, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x4e, 0x53, - 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x4e, 0x4f, - 0x54, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, - 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x10, 0x02, 0x22, 0x43, 0x0a, 0x17, 0x41, 0x64, - 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x46, 0x65, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, - 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0e, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x50, 0x65, 0x72, 0x43, 0x6f, 0x72, 0x65, 0x22, - 0xe6, 0x02, 0x0a, 0x07, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6b, - 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, - 0x2c, 0x0a, 0x12, 0x63, 0x65, 0x72, 0x74, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x5f, 0x6e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x65, 0x72, - 0x74, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, - 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x65, 0x72, - 0x74, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, - 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x43, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, - 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x68, 0x61, 0x31, 0x5f, 0x66, 0x69, 0x6e, - 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, - 0x73, 0x68, 0x61, 0x31, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x12, - 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, - 0x65, 0x6c, 0x66, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x73, 0x65, 0x6c, 0x66, 0x4c, 0x69, 0x6e, 0x6b, 0x22, 0x7a, 0x0a, 0x0d, 0x53, 0x73, 0x6c, 0x43, - 0x65, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x3f, 0x0a, 0x09, 0x63, 0x65, 0x72, - 0x74, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, + 0x61, 0x34, 0x2e, 0x49, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x0f, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x4a, 0x0a, 0x13, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x61, + 0x75, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x73, 0x74, + 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x12, + 0x5e, 0x0a, 0x13, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x65, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, - 0x52, 0x08, 0x63, 0x65, 0x72, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x65, - 0x72, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x65, 0x72, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, - 0x65, 0x4b, 0x65, 0x79, 0x22, 0x62, 0x0a, 0x1e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, - 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, - 0x69, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, - 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x38, 0x0a, 0x15, 0x53, 0x73, 0x6c, 0x43, - 0x65, 0x72, 0x74, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, 0x61, - 0x6d, 0x65, 0x22, 0xe8, 0x03, 0x0a, 0x2c, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, - 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x4d, 0x61, 0x69, - 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, - 0x6f, 0x64, 0x79, 0x12, 0x72, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x52, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x12, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, + 0x4f, 0x0a, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, + 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, - 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, - 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, - 0x2e, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x73, - 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x1a, 0xd3, 0x01, 0x0a, 0x0a, 0x52, 0x65, 0x73, 0x63, - 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x7f, 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x63, 0x68, 0x65, - 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x56, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, - 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, - 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, - 0x6c, 0x65, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x2e, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, - 0x75, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, - 0x75, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x44, 0x0a, 0x0d, 0x73, 0x63, 0x68, 0x65, 0x64, - 0x75, 0x6c, 0x65, 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, 0x01, 0x52, - 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x6e, 0x0a, - 0x0e, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x1f, 0x0a, 0x1b, 0x52, 0x45, 0x53, 0x43, 0x48, 0x45, 0x44, 0x55, 0x4c, 0x45, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, - 0x12, 0x0d, 0x0a, 0x09, 0x49, 0x4d, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, - 0x19, 0x0a, 0x15, 0x4e, 0x45, 0x58, 0x54, 0x5f, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, - 0x45, 0x5f, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x50, - 0x45, 0x43, 0x49, 0x46, 0x49, 0x43, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x03, 0x22, 0x85, 0x02, - 0x0a, 0x16, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x42, 0x0a, 0x09, - 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, - 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x48, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x5f, 0x63, 0x65, - 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, + 0x74, 0x61, 0x34, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x46, 0x6c, 0x61, 0x67, + 0x73, 0x52, 0x0d, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, + 0x12, 0x50, 0x0a, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x0c, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x43, 0x65, 0x72, 0x74, 0x12, 0x49, 0x0a, 0x0b, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x44, 0x69, 0x73, 0x6b, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x44, 0x69, 0x73, 0x6b, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x5b, 0x0a, 0x12, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, + 0x65, 0x5f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, + 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, + 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x4d, 0x61, 0x69, 0x6e, 0x74, + 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x52, 0x11, 0x6d, 0x61, + 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x12, + 0x61, 0x0a, 0x14, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, + 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, + 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x62, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x5c, 0x0a, 0x1c, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, + 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x52, 0x1a, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x12, 0x63, 0x0a, 0x1e, 0x63, 0x72, 0x61, 0x73, 0x68, 0x5f, 0x73, 0x61, 0x66, 0x65, 0x5f, 0x72, + 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x1b, 0x63, 0x72, 0x61, 0x73, 0x68, 0x53, + 0x61, 0x66, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x46, 0x0a, 0x11, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x64, 0x69, + 0x73, 0x6b, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x67, 0x62, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x64, + 0x61, 0x74, 0x61, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x47, 0x62, 0x12, 0x6b, 0x0a, + 0x17, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, + 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, + 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, + 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x41, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x52, 0x15, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, + 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, + 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x6a, 0x0a, 0x18, 0x64, 0x65, 0x6e, 0x79, + 0x5f, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x70, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x73, 0x18, 0x18, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6d, 0x6f, 0x63, + 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, 0x65, 0x6e, 0x79, 0x4d, 0x61, 0x69, 0x6e, 0x74, + 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x16, 0x64, 0x65, + 0x6e, 0x79, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x73, 0x12, 0x52, 0x0a, 0x0f, 0x69, 0x6e, 0x73, 0x69, 0x67, 0x68, 0x74, 0x73, + 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, + 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, + 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x49, 0x6e, 0x73, 0x69, 0x67, 0x68, + 0x74, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x69, 0x6e, 0x73, 0x69, 0x67, 0x68, + 0x74, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x71, 0x0a, 0x1a, 0x70, 0x61, 0x73, 0x73, + 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6d, + 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, + 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, + 0x79, 0x52, 0x18, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x66, 0x0a, 0x17, 0x73, + 0x71, 0x6c, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6d, + 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x41, 0x75, 0x64, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x14, 0x73, + 0x71, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x75, 0x64, 0x69, 0x74, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x12, 0x4a, 0x0a, 0x07, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x26, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, + 0x2e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2e, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x07, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x6d, 0x0a, 0x15, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x65, 0x6e, 0x66, + 0x6f, 0x72, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, + 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, + 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x65, 0x74, 0x74, 0x69, + 0x6e, 0x67, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x66, + 0x6f, 0x72, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x5a, + 0x0a, 0x1b, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x21, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, + 0x19, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x69, + 0x6d, 0x65, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x22, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, + 0x69, 0x6d, 0x65, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x6e, 0x0a, 0x19, 0x61, 0x64, 0x76, 0x61, 0x6e, + 0x63, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x66, 0x65, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x73, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6d, 0x6f, 0x63, + 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x41, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x4d, + 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x17, + 0x61, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x46, + 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x56, 0x0a, 0x11, 0x64, 0x61, 0x74, 0x61, 0x5f, + 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x25, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x44, + 0x61, 0x74, 0x61, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0f, + 0x64, 0x61, 0x74, 0x61, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x60, 0x0a, 0x1c, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x5f, 0x6d, 0x6c, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x28, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x19, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x4d, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x5f, 0x0a, 0x1b, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x65, 0x78, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x29, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x19, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x44, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x65, 0x78, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x1a, 0x3d, 0x0a, 0x0f, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x22, 0x66, 0x0a, 0x13, 0x53, 0x71, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x25, 0x0a, 0x21, 0x53, 0x51, 0x4c, 0x5f, + 0x41, 0x43, 0x54, 0x49, 0x56, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, + 0x59, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, + 0x0a, 0x0a, 0x06, 0x41, 0x4c, 0x57, 0x41, 0x59, 0x53, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x4e, + 0x45, 0x56, 0x45, 0x52, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x09, 0x4f, 0x4e, 0x5f, 0x44, 0x45, 0x4d, + 0x41, 0x4e, 0x44, 0x10, 0x03, 0x1a, 0x02, 0x08, 0x01, 0x22, 0x47, 0x0a, 0x07, 0x45, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x13, 0x45, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, + 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, + 0x0a, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x50, 0x52, 0x49, 0x53, 0x45, 0x10, 0x02, 0x12, 0x13, 0x0a, + 0x0f, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x50, 0x52, 0x49, 0x53, 0x45, 0x5f, 0x50, 0x4c, 0x55, 0x53, + 0x10, 0x03, 0x22, 0x5d, 0x0a, 0x14, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x45, + 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x21, 0x43, 0x4f, + 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x4f, 0x52, 0x5f, 0x45, 0x4e, 0x46, 0x4f, 0x52, 0x43, 0x45, 0x4d, + 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x4e, 0x4f, 0x54, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, + 0x44, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x10, + 0x02, 0x22, 0x43, 0x0a, 0x17, 0x41, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x4d, 0x61, 0x63, + 0x68, 0x69, 0x6e, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x10, + 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x72, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x50, + 0x65, 0x72, 0x43, 0x6f, 0x72, 0x65, 0x22, 0xe6, 0x02, 0x0a, 0x07, 0x53, 0x73, 0x6c, 0x43, 0x65, + 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x65, 0x72, 0x74, 0x5f, 0x73, + 0x65, 0x72, 0x69, 0x61, 0x6c, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x10, 0x63, 0x65, 0x72, 0x74, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x63, 0x65, 0x72, 0x74, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x43, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0e, 0x65, 0x78, 0x70, + 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x73, + 0x68, 0x61, 0x31, 0x5f, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x68, 0x61, 0x31, 0x46, 0x69, 0x6e, 0x67, 0x65, + 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x66, 0x4c, 0x69, 0x6e, 0x6b, 0x22, + 0x7a, 0x0a, 0x0d, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x12, 0x3f, 0x0a, 0x09, 0x63, 0x65, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, + 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x08, 0x63, 0x65, 0x72, 0x74, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x65, 0x72, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, + 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x65, 0x72, + 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x22, 0x62, 0x0a, 0x1e, 0x53, + 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x70, 0x68, + 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x21, 0x0a, 0x0c, + 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x38, 0x0a, 0x15, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x72, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xe8, 0x03, 0x0a, 0x2c, 0x53, 0x71, + 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, + 0x64, 0x75, 0x6c, 0x65, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x72, 0x0a, 0x0a, 0x72, 0x65, + 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x52, + 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, + 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, + 0x65, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x2e, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, + 0x6c, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x1a, 0xd3, + 0x01, 0x0a, 0x0a, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x7f, 0x0a, + 0x0f, 0x72, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x56, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, + 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x34, 0x2e, 0x53, 0x71, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, + 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x2e, + 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e, + 0x72, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x44, + 0x0a, 0x0d, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 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, 0x01, 0x52, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x22, 0x6e, 0x0a, 0x0e, 0x52, 0x65, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x52, 0x45, 0x53, 0x43, 0x48, 0x45, + 0x44, 0x55, 0x4c, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, + 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x49, 0x4d, 0x4d, 0x45, 0x44, + 0x49, 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x4e, 0x45, 0x58, 0x54, 0x5f, 0x41, + 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x10, + 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x43, 0x5f, 0x54, 0x49, + 0x4d, 0x45, 0x10, 0x03, 0x22, 0x85, 0x02, 0x0a, 0x16, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, + 0x73, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, + 0x69, 0x6e, 0x64, 0x12, 0x42, 0x0a, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, + 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x6f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x48, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x5f, 0x63, 0x61, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x22, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, - 0x65, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x43, 0x65, 0x72, 0x74, 0x22, 0x64, 0x0a, 0x14, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, - 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, - 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, - 0x64, 0x12, 0x38, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x22, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, - 0x43, 0x65, 0x72, 0x74, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x43, 0x0a, 0x12, 0x54, - 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x5f, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, - 0x22, 0x46, 0x0a, 0x18, 0x53, 0x71, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, - 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, - 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, - 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x22, 0xd0, 0x01, 0x0a, 0x14, 0x53, 0x71, 0x6c, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x75, 0x64, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x48, 0x0a, - 0x12, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, - 0x76, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x42, 0x0a, 0x0f, 0x75, 0x70, 0x6c, 0x6f, 0x61, - 0x64, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x65, 0x72, 0x74, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x61, 0x43, 0x65, 0x72, + 0x74, 0x12, 0x49, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x65, 0x72, 0x74, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, 0x70, + 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x52, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x65, 0x72, 0x74, 0x22, 0x64, 0x0a, 0x14, + 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x38, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, 0x6f, 0x63, 0x6b, 0x67, 0x63, + 0x70, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x71, 0x6c, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x34, 0x2e, 0x53, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x05, 0x69, 0x74, 0x65, + 0x6d, 0x73, 0x22, 0x43, 0x0a, 0x12, 0x54, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x4c, 0x6f, + 0x67, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x19, 0x0a, 0x08, + 0x6c, 0x6f, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x6c, 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x22, 0x46, 0x0a, 0x18, 0x53, 0x71, 0x6c, 0x41, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, + 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x22, + 0xd0, 0x01, 0x0a, 0x14, 0x53, 0x71, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x75, 0x64, + 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, + 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x75, + 0x63, 0x6b, 0x65, 0x74, 0x12, 0x48, 0x0a, 0x12, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x75, 0x70, 0x6c, - 0x6f, 0x61, 0x64, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x2a, 0x47, 0x0a, 0x0b, 0x53, + 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x72, 0x65, 0x74, + 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x42, + 0x0a, 0x0f, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, + 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x0e, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, + 0x61, 0x6c, 0x22, 0x96, 0x02, 0x0a, 0x17, 0x41, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x53, 0x73, + 0x72, 0x73, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x24, + 0x0a, 0x0b, 0x73, 0x65, 0x74, 0x75, 0x70, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x65, 0x74, 0x75, 0x70, 0x4c, 0x6f, 0x67, 0x69, + 0x6e, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, + 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0c, 0x73, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x2c, + 0x0a, 0x0f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0e, 0x72, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x08, + 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x03, 0x52, 0x08, 0x64, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x73, 0x65, 0x74, + 0x75, 0x70, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x73, 0x65, 0x72, + 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x72, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x42, 0x0b, + 0x0a, 0x09, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2a, 0x47, 0x0a, 0x0b, 0x53, 0x71, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x51, 0x4c, 0x5f, 0x46, 0x49, 0x4c, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x51, 0x4c, @@ -11253,7 +12136,7 @@ var file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDesc = []byte{ 0x0a, 0x14, 0x4f, 0x4e, 0x5f, 0x50, 0x52, 0x45, 0x4d, 0x49, 0x53, 0x45, 0x53, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x41, 0x4e, 0x43, 0x45, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x45, 0x41, 0x44, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x41, 0x4e, 0x43, - 0x45, 0x10, 0x03, 0x2a, 0xbf, 0x06, 0x0a, 0x12, 0x53, 0x71, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, + 0x45, 0x10, 0x03, 0x2a, 0xbf, 0x07, 0x0a, 0x12, 0x53, 0x71, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x20, 0x53, 0x51, 0x4c, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, @@ -11275,23 +12158,31 @@ var file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDesc = []byte{ 0x47, 0x52, 0x45, 0x53, 0x5f, 0x31, 0x32, 0x10, 0x13, 0x12, 0x0f, 0x0a, 0x0b, 0x50, 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, 0x5f, 0x31, 0x33, 0x10, 0x17, 0x12, 0x0f, 0x0a, 0x0b, 0x50, 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, 0x5f, 0x31, 0x34, 0x10, 0x6e, 0x12, 0x10, 0x0a, 0x0b, 0x50, - 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, 0x5f, 0x31, 0x35, 0x10, 0xac, 0x01, 0x12, 0x0d, 0x0a, - 0x09, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x10, 0x14, 0x12, 0x10, 0x0a, 0x0c, - 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x31, 0x38, 0x10, 0x29, 0x12, 0x10, - 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x32, 0x36, 0x10, 0x55, - 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x32, 0x37, - 0x10, 0x6f, 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, - 0x32, 0x38, 0x10, 0x84, 0x01, 0x12, 0x15, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, - 0x5f, 0x30, 0x5f, 0x32, 0x39, 0x10, 0x94, 0x01, 0x1a, 0x02, 0x08, 0x01, 0x12, 0x11, 0x0a, 0x0c, - 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x33, 0x30, 0x10, 0xae, 0x01, 0x12, - 0x11, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x33, 0x31, 0x10, - 0xc5, 0x01, 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, - 0x33, 0x32, 0x10, 0xd5, 0x01, 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, - 0x5f, 0x30, 0x5f, 0x33, 0x33, 0x10, 0xee, 0x01, 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, - 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x33, 0x34, 0x10, 0xef, 0x01, 0x12, 0x11, 0x0a, 0x0c, 0x4d, - 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x33, 0x35, 0x10, 0xf0, 0x01, 0x12, 0x11, - 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x33, 0x36, 0x10, 0xf1, - 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x51, 0x4c, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x32, + 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, 0x5f, 0x31, 0x35, 0x10, 0xac, 0x01, 0x12, 0x10, 0x0a, + 0x0b, 0x50, 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, 0x5f, 0x31, 0x36, 0x10, 0x90, 0x02, 0x12, + 0x0d, 0x0a, 0x09, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x10, 0x14, 0x12, 0x10, + 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x31, 0x38, 0x10, 0x29, + 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x32, 0x36, + 0x10, 0x55, 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, + 0x32, 0x37, 0x10, 0x6f, 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, + 0x30, 0x5f, 0x32, 0x38, 0x10, 0x84, 0x01, 0x12, 0x15, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, + 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x32, 0x39, 0x10, 0x94, 0x01, 0x1a, 0x02, 0x08, 0x01, 0x12, 0x11, + 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x33, 0x30, 0x10, 0xae, + 0x01, 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x33, + 0x31, 0x10, 0xc5, 0x01, 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, + 0x30, 0x5f, 0x33, 0x32, 0x10, 0xd5, 0x01, 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, + 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x33, 0x33, 0x10, 0xee, 0x01, 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x59, + 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x33, 0x34, 0x10, 0xef, 0x01, 0x12, 0x11, 0x0a, + 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x33, 0x35, 0x10, 0xf0, 0x01, + 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x33, 0x36, + 0x10, 0xf1, 0x01, 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, + 0x5f, 0x33, 0x37, 0x10, 0xe3, 0x02, 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, + 0x38, 0x5f, 0x30, 0x5f, 0x33, 0x38, 0x10, 0xe4, 0x02, 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x59, 0x53, + 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x33, 0x39, 0x10, 0xe5, 0x02, 0x12, 0x11, 0x0a, 0x0c, + 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x30, 0x5f, 0x34, 0x30, 0x10, 0xe6, 0x02, 0x12, + 0x0e, 0x0a, 0x09, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x34, 0x10, 0x8e, 0x03, 0x12, + 0x10, 0x0a, 0x0b, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x38, 0x5f, 0x34, 0x5f, 0x30, 0x10, 0x8f, + 0x03, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x51, 0x4c, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x32, 0x30, 0x31, 0x39, 0x5f, 0x53, 0x54, 0x41, 0x4e, 0x44, 0x41, 0x52, 0x44, 0x10, 0x1a, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x51, 0x4c, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x32, 0x30, 0x31, 0x39, 0x5f, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x50, 0x52, 0x49, 0x53, 0x45, 0x10, 0x1b, 0x12, 0x1a, 0x0a, @@ -11374,313 +12265,332 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescGZIP() []by return file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDescData } -var file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes = make([]protoimpl.EnumInfo, 30) -var file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes = make([]protoimpl.MessageInfo, 85) +var file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_enumTypes = make([]protoimpl.EnumInfo, 31) +var file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes = make([]protoimpl.MessageInfo, 91) var file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_goTypes = []interface{}{ - (SqlFileType)(0), // 0: mockgcp.cloud.sql.v1beta4.SqlFileType - (BakType)(0), // 1: mockgcp.cloud.sql.v1beta4.BakType - (SqlBackupRunStatus)(0), // 2: mockgcp.cloud.sql.v1beta4.SqlBackupRunStatus - (SqlBackupRunType)(0), // 3: mockgcp.cloud.sql.v1beta4.SqlBackupRunType - (SqlBackupKind)(0), // 4: mockgcp.cloud.sql.v1beta4.SqlBackupKind - (SqlBackendType)(0), // 5: mockgcp.cloud.sql.v1beta4.SqlBackendType - (SqlIpAddressType)(0), // 6: mockgcp.cloud.sql.v1beta4.SqlIpAddressType - (SqlInstanceType)(0), // 7: mockgcp.cloud.sql.v1beta4.SqlInstanceType - (SqlDatabaseVersion)(0), // 8: mockgcp.cloud.sql.v1beta4.SqlDatabaseVersion - (SqlSuspensionReason)(0), // 9: mockgcp.cloud.sql.v1beta4.SqlSuspensionReason - (SqlPricingPlan)(0), // 10: mockgcp.cloud.sql.v1beta4.SqlPricingPlan - (SqlReplicationType)(0), // 11: mockgcp.cloud.sql.v1beta4.SqlReplicationType - (SqlDataDiskType)(0), // 12: mockgcp.cloud.sql.v1beta4.SqlDataDiskType - (SqlAvailabilityType)(0), // 13: mockgcp.cloud.sql.v1beta4.SqlAvailabilityType - (SqlUpdateTrack)(0), // 14: mockgcp.cloud.sql.v1beta4.SqlUpdateTrack - (SqlFlagType)(0), // 15: mockgcp.cloud.sql.v1beta4.SqlFlagType - (ApiWarning_SqlApiWarningCode)(0), // 16: mockgcp.cloud.sql.v1beta4.ApiWarning.SqlApiWarningCode - (BackupRetentionSettings_RetentionUnit)(0), // 17: mockgcp.cloud.sql.v1beta4.BackupRetentionSettings.RetentionUnit - (DatabaseInstance_SqlInstanceState)(0), // 18: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlInstanceState - (DatabaseInstance_SqlNetworkArchitecture)(0), // 19: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlNetworkArchitecture - (DatabaseInstance_SqlOutOfDiskReport_SqlOutOfDiskState)(0), // 20: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlOutOfDiskReport.SqlOutOfDiskState - (SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType)(0), // 21: mockgcp.cloud.sql.v1beta4.SqlExternalSyncSettingError.SqlExternalSyncSettingErrorType - (IpConfiguration_SslMode)(0), // 22: mockgcp.cloud.sql.v1beta4.IpConfiguration.SslMode - (Operation_SqlOperationType)(0), // 23: mockgcp.cloud.sql.v1beta4.Operation.SqlOperationType - (Operation_SqlOperationStatus)(0), // 24: mockgcp.cloud.sql.v1beta4.Operation.SqlOperationStatus - (PasswordValidationPolicy_Complexity)(0), // 25: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.Complexity - (Settings_SqlActivationPolicy)(0), // 26: mockgcp.cloud.sql.v1beta4.Settings.SqlActivationPolicy - (Settings_Edition)(0), // 27: mockgcp.cloud.sql.v1beta4.Settings.Edition - (Settings_ConnectorEnforcement)(0), // 28: mockgcp.cloud.sql.v1beta4.Settings.ConnectorEnforcement - (SqlInstancesRescheduleMaintenanceRequestBody_RescheduleType)(0), // 29: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody.RescheduleType - (*AclEntry)(nil), // 30: mockgcp.cloud.sql.v1beta4.AclEntry - (*ApiWarning)(nil), // 31: mockgcp.cloud.sql.v1beta4.ApiWarning - (*BackupRetentionSettings)(nil), // 32: mockgcp.cloud.sql.v1beta4.BackupRetentionSettings - (*BackupConfiguration)(nil), // 33: mockgcp.cloud.sql.v1beta4.BackupConfiguration - (*BackupRun)(nil), // 34: mockgcp.cloud.sql.v1beta4.BackupRun - (*BackupRunsListResponse)(nil), // 35: mockgcp.cloud.sql.v1beta4.BackupRunsListResponse - (*BinLogCoordinates)(nil), // 36: mockgcp.cloud.sql.v1beta4.BinLogCoordinates - (*BackupContext)(nil), // 37: mockgcp.cloud.sql.v1beta4.BackupContext - (*CloneContext)(nil), // 38: mockgcp.cloud.sql.v1beta4.CloneContext - (*Database)(nil), // 39: mockgcp.cloud.sql.v1beta4.Database - (*SqlServerDatabaseDetails)(nil), // 40: mockgcp.cloud.sql.v1beta4.SqlServerDatabaseDetails - (*DatabaseFlags)(nil), // 41: mockgcp.cloud.sql.v1beta4.DatabaseFlags - (*SyncFlags)(nil), // 42: mockgcp.cloud.sql.v1beta4.SyncFlags - (*InstanceReference)(nil), // 43: mockgcp.cloud.sql.v1beta4.InstanceReference - (*DatabaseInstance)(nil), // 44: mockgcp.cloud.sql.v1beta4.DatabaseInstance - (*DatabasesListResponse)(nil), // 45: mockgcp.cloud.sql.v1beta4.DatabasesListResponse - (*DemoteMasterConfiguration)(nil), // 46: mockgcp.cloud.sql.v1beta4.DemoteMasterConfiguration - (*DemoteMasterContext)(nil), // 47: mockgcp.cloud.sql.v1beta4.DemoteMasterContext - (*DemoteMasterMySqlReplicaConfiguration)(nil), // 48: mockgcp.cloud.sql.v1beta4.DemoteMasterMySqlReplicaConfiguration - (*DemoteContext)(nil), // 49: mockgcp.cloud.sql.v1beta4.DemoteContext - (*ExportContext)(nil), // 50: mockgcp.cloud.sql.v1beta4.ExportContext - (*FailoverContext)(nil), // 51: mockgcp.cloud.sql.v1beta4.FailoverContext - (*Flag)(nil), // 52: mockgcp.cloud.sql.v1beta4.Flag - (*FlagsListResponse)(nil), // 53: mockgcp.cloud.sql.v1beta4.FlagsListResponse - (*ImportContext)(nil), // 54: mockgcp.cloud.sql.v1beta4.ImportContext - (*InstancesCloneRequest)(nil), // 55: mockgcp.cloud.sql.v1beta4.InstancesCloneRequest - (*InstancesDemoteMasterRequest)(nil), // 56: mockgcp.cloud.sql.v1beta4.InstancesDemoteMasterRequest - (*InstancesDemoteRequest)(nil), // 57: mockgcp.cloud.sql.v1beta4.InstancesDemoteRequest - (*InstancesExportRequest)(nil), // 58: mockgcp.cloud.sql.v1beta4.InstancesExportRequest - (*InstancesFailoverRequest)(nil), // 59: mockgcp.cloud.sql.v1beta4.InstancesFailoverRequest - (*InstancesImportRequest)(nil), // 60: mockgcp.cloud.sql.v1beta4.InstancesImportRequest - (*MySqlSyncConfig)(nil), // 61: mockgcp.cloud.sql.v1beta4.MySqlSyncConfig - (*InstancesListResponse)(nil), // 62: mockgcp.cloud.sql.v1beta4.InstancesListResponse - (*InstancesListServerCasResponse)(nil), // 63: mockgcp.cloud.sql.v1beta4.InstancesListServerCasResponse - (*InstancesRestoreBackupRequest)(nil), // 64: mockgcp.cloud.sql.v1beta4.InstancesRestoreBackupRequest - (*InstancesRotateServerCaRequest)(nil), // 65: mockgcp.cloud.sql.v1beta4.InstancesRotateServerCaRequest - (*InstancesTruncateLogRequest)(nil), // 66: mockgcp.cloud.sql.v1beta4.InstancesTruncateLogRequest - (*PerformDiskShrinkContext)(nil), // 67: mockgcp.cloud.sql.v1beta4.PerformDiskShrinkContext - (*SqlInstancesGetDiskShrinkConfigResponse)(nil), // 68: mockgcp.cloud.sql.v1beta4.SqlInstancesGetDiskShrinkConfigResponse - (*SqlInstancesVerifyExternalSyncSettingsResponse)(nil), // 69: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsResponse - (*SqlExternalSyncSettingError)(nil), // 70: mockgcp.cloud.sql.v1beta4.SqlExternalSyncSettingError - (*IpConfiguration)(nil), // 71: mockgcp.cloud.sql.v1beta4.IpConfiguration - (*PscConfig)(nil), // 72: mockgcp.cloud.sql.v1beta4.PscConfig - (*IpMapping)(nil), // 73: mockgcp.cloud.sql.v1beta4.IpMapping - (*LocationPreference)(nil), // 74: mockgcp.cloud.sql.v1beta4.LocationPreference - (*MaintenanceWindow)(nil), // 75: mockgcp.cloud.sql.v1beta4.MaintenanceWindow - (*DenyMaintenancePeriod)(nil), // 76: mockgcp.cloud.sql.v1beta4.DenyMaintenancePeriod - (*InsightsConfig)(nil), // 77: mockgcp.cloud.sql.v1beta4.InsightsConfig - (*MySqlReplicaConfiguration)(nil), // 78: mockgcp.cloud.sql.v1beta4.MySqlReplicaConfiguration - (*OnPremisesConfiguration)(nil), // 79: mockgcp.cloud.sql.v1beta4.OnPremisesConfiguration - (*DiskEncryptionConfiguration)(nil), // 80: mockgcp.cloud.sql.v1beta4.DiskEncryptionConfiguration - (*DiskEncryptionStatus)(nil), // 81: mockgcp.cloud.sql.v1beta4.DiskEncryptionStatus - (*Operation)(nil), // 82: mockgcp.cloud.sql.v1beta4.Operation - (*OperationError)(nil), // 83: mockgcp.cloud.sql.v1beta4.OperationError - (*OperationErrors)(nil), // 84: mockgcp.cloud.sql.v1beta4.OperationErrors - (*PasswordValidationPolicy)(nil), // 85: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy - (*OperationsListResponse)(nil), // 86: mockgcp.cloud.sql.v1beta4.OperationsListResponse - (*ReplicaConfiguration)(nil), // 87: mockgcp.cloud.sql.v1beta4.ReplicaConfiguration - (*RestoreBackupContext)(nil), // 88: mockgcp.cloud.sql.v1beta4.RestoreBackupContext - (*RotateServerCaContext)(nil), // 89: mockgcp.cloud.sql.v1beta4.RotateServerCaContext - (*DataCacheConfig)(nil), // 90: mockgcp.cloud.sql.v1beta4.DataCacheConfig - (*Settings)(nil), // 91: mockgcp.cloud.sql.v1beta4.Settings - (*AdvancedMachineFeatures)(nil), // 92: mockgcp.cloud.sql.v1beta4.AdvancedMachineFeatures - (*SslCert)(nil), // 93: mockgcp.cloud.sql.v1beta4.SslCert - (*SslCertDetail)(nil), // 94: mockgcp.cloud.sql.v1beta4.SslCertDetail - (*SslCertsCreateEphemeralRequest)(nil), // 95: mockgcp.cloud.sql.v1beta4.SslCertsCreateEphemeralRequest - (*SslCertsInsertRequest)(nil), // 96: mockgcp.cloud.sql.v1beta4.SslCertsInsertRequest - (*SqlInstancesRescheduleMaintenanceRequestBody)(nil), // 97: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody - (*SslCertsInsertResponse)(nil), // 98: mockgcp.cloud.sql.v1beta4.SslCertsInsertResponse - (*SslCertsListResponse)(nil), // 99: mockgcp.cloud.sql.v1beta4.SslCertsListResponse - (*TruncateLogContext)(nil), // 100: mockgcp.cloud.sql.v1beta4.TruncateLogContext - (*SqlActiveDirectoryConfig)(nil), // 101: mockgcp.cloud.sql.v1beta4.SqlActiveDirectoryConfig - (*SqlServerAuditConfig)(nil), // 102: mockgcp.cloud.sql.v1beta4.SqlServerAuditConfig - (*DatabaseInstance_SqlFailoverReplica)(nil), // 103: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlFailoverReplica - (*DatabaseInstance_SqlScheduledMaintenance)(nil), // 104: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlScheduledMaintenance - (*DatabaseInstance_SqlOutOfDiskReport)(nil), // 105: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlOutOfDiskReport - (*ExportContext_SqlCsvExportOptions)(nil), // 106: mockgcp.cloud.sql.v1beta4.ExportContext.SqlCsvExportOptions - (*ExportContext_SqlExportOptions)(nil), // 107: mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions - (*ExportContext_SqlBakExportOptions)(nil), // 108: mockgcp.cloud.sql.v1beta4.ExportContext.SqlBakExportOptions - (*ExportContext_SqlExportOptions_MysqlExportOptions)(nil), // 109: mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions.MysqlExportOptions - (*ImportContext_SqlCsvImportOptions)(nil), // 110: mockgcp.cloud.sql.v1beta4.ImportContext.SqlCsvImportOptions - (*ImportContext_SqlBakImportOptions)(nil), // 111: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions - (*ImportContext_SqlBakImportOptions_EncryptionOptions)(nil), // 112: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.EncryptionOptions - nil, // 113: mockgcp.cloud.sql.v1beta4.Settings.UserLabelsEntry - (*SqlInstancesRescheduleMaintenanceRequestBody_Reschedule)(nil), // 114: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody.Reschedule - (*timestamp.Timestamp)(nil), // 115: google.protobuf.Timestamp - (*wrappers.Int32Value)(nil), // 116: google.protobuf.Int32Value - (*wrappers.BoolValue)(nil), // 117: google.protobuf.BoolValue - (*wrappers.Int64Value)(nil), // 118: google.protobuf.Int64Value - (*duration.Duration)(nil), // 119: google.protobuf.Duration + (SqlFileType)(0), // 0: mockgcp.cloud.sql.v1beta4.SqlFileType + (BakType)(0), // 1: mockgcp.cloud.sql.v1beta4.BakType + (SqlBackupRunStatus)(0), // 2: mockgcp.cloud.sql.v1beta4.SqlBackupRunStatus + (SqlBackupRunType)(0), // 3: mockgcp.cloud.sql.v1beta4.SqlBackupRunType + (SqlBackupKind)(0), // 4: mockgcp.cloud.sql.v1beta4.SqlBackupKind + (SqlBackendType)(0), // 5: mockgcp.cloud.sql.v1beta4.SqlBackendType + (SqlIpAddressType)(0), // 6: mockgcp.cloud.sql.v1beta4.SqlIpAddressType + (SqlInstanceType)(0), // 7: mockgcp.cloud.sql.v1beta4.SqlInstanceType + (SqlDatabaseVersion)(0), // 8: mockgcp.cloud.sql.v1beta4.SqlDatabaseVersion + (SqlSuspensionReason)(0), // 9: mockgcp.cloud.sql.v1beta4.SqlSuspensionReason + (SqlPricingPlan)(0), // 10: mockgcp.cloud.sql.v1beta4.SqlPricingPlan + (SqlReplicationType)(0), // 11: mockgcp.cloud.sql.v1beta4.SqlReplicationType + (SqlDataDiskType)(0), // 12: mockgcp.cloud.sql.v1beta4.SqlDataDiskType + (SqlAvailabilityType)(0), // 13: mockgcp.cloud.sql.v1beta4.SqlAvailabilityType + (SqlUpdateTrack)(0), // 14: mockgcp.cloud.sql.v1beta4.SqlUpdateTrack + (SqlFlagType)(0), // 15: mockgcp.cloud.sql.v1beta4.SqlFlagType + (ApiWarning_SqlApiWarningCode)(0), // 16: mockgcp.cloud.sql.v1beta4.ApiWarning.SqlApiWarningCode + (BackupRetentionSettings_RetentionUnit)(0), // 17: mockgcp.cloud.sql.v1beta4.BackupRetentionSettings.RetentionUnit + (BackupConfiguration_TransactionalLogStorageState)(0), // 18: mockgcp.cloud.sql.v1beta4.BackupConfiguration.TransactionalLogStorageState + (DatabaseInstance_SqlInstanceState)(0), // 19: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlInstanceState + (DatabaseInstance_SqlNetworkArchitecture)(0), // 20: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlNetworkArchitecture + (DatabaseInstance_SqlOutOfDiskReport_SqlOutOfDiskState)(0), // 21: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlOutOfDiskReport.SqlOutOfDiskState + (SqlExternalSyncSettingError_SqlExternalSyncSettingErrorType)(0), // 22: mockgcp.cloud.sql.v1beta4.SqlExternalSyncSettingError.SqlExternalSyncSettingErrorType + (IpConfiguration_SslMode)(0), // 23: mockgcp.cloud.sql.v1beta4.IpConfiguration.SslMode + (Operation_SqlOperationType)(0), // 24: mockgcp.cloud.sql.v1beta4.Operation.SqlOperationType + (Operation_SqlOperationStatus)(0), // 25: mockgcp.cloud.sql.v1beta4.Operation.SqlOperationStatus + (PasswordValidationPolicy_Complexity)(0), // 26: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.Complexity + (Settings_SqlActivationPolicy)(0), // 27: mockgcp.cloud.sql.v1beta4.Settings.SqlActivationPolicy + (Settings_Edition)(0), // 28: mockgcp.cloud.sql.v1beta4.Settings.Edition + (Settings_ConnectorEnforcement)(0), // 29: mockgcp.cloud.sql.v1beta4.Settings.ConnectorEnforcement + (SqlInstancesRescheduleMaintenanceRequestBody_RescheduleType)(0), // 30: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody.RescheduleType + (*AclEntry)(nil), // 31: mockgcp.cloud.sql.v1beta4.AclEntry + (*ApiWarning)(nil), // 32: mockgcp.cloud.sql.v1beta4.ApiWarning + (*BackupRetentionSettings)(nil), // 33: mockgcp.cloud.sql.v1beta4.BackupRetentionSettings + (*BackupConfiguration)(nil), // 34: mockgcp.cloud.sql.v1beta4.BackupConfiguration + (*BackupRun)(nil), // 35: mockgcp.cloud.sql.v1beta4.BackupRun + (*BackupRunsListResponse)(nil), // 36: mockgcp.cloud.sql.v1beta4.BackupRunsListResponse + (*BinLogCoordinates)(nil), // 37: mockgcp.cloud.sql.v1beta4.BinLogCoordinates + (*BackupContext)(nil), // 38: mockgcp.cloud.sql.v1beta4.BackupContext + (*CloneContext)(nil), // 39: mockgcp.cloud.sql.v1beta4.CloneContext + (*Database)(nil), // 40: mockgcp.cloud.sql.v1beta4.Database + (*SqlServerDatabaseDetails)(nil), // 41: mockgcp.cloud.sql.v1beta4.SqlServerDatabaseDetails + (*DatabaseFlags)(nil), // 42: mockgcp.cloud.sql.v1beta4.DatabaseFlags + (*SyncFlags)(nil), // 43: mockgcp.cloud.sql.v1beta4.SyncFlags + (*InstanceReference)(nil), // 44: mockgcp.cloud.sql.v1beta4.InstanceReference + (*DatabaseInstance)(nil), // 45: mockgcp.cloud.sql.v1beta4.DatabaseInstance + (*GeminiInstanceConfig)(nil), // 46: mockgcp.cloud.sql.v1beta4.GeminiInstanceConfig + (*ReplicationCluster)(nil), // 47: mockgcp.cloud.sql.v1beta4.ReplicationCluster + (*AvailableDatabaseVersion)(nil), // 48: mockgcp.cloud.sql.v1beta4.AvailableDatabaseVersion + (*DatabasesListResponse)(nil), // 49: mockgcp.cloud.sql.v1beta4.DatabasesListResponse + (*DemoteMasterConfiguration)(nil), // 50: mockgcp.cloud.sql.v1beta4.DemoteMasterConfiguration + (*DemoteMasterContext)(nil), // 51: mockgcp.cloud.sql.v1beta4.DemoteMasterContext + (*DemoteMasterMySqlReplicaConfiguration)(nil), // 52: mockgcp.cloud.sql.v1beta4.DemoteMasterMySqlReplicaConfiguration + (*DemoteContext)(nil), // 53: mockgcp.cloud.sql.v1beta4.DemoteContext + (*ExportContext)(nil), // 54: mockgcp.cloud.sql.v1beta4.ExportContext + (*FailoverContext)(nil), // 55: mockgcp.cloud.sql.v1beta4.FailoverContext + (*Flag)(nil), // 56: mockgcp.cloud.sql.v1beta4.Flag + (*FlagsListResponse)(nil), // 57: mockgcp.cloud.sql.v1beta4.FlagsListResponse + (*ImportContext)(nil), // 58: mockgcp.cloud.sql.v1beta4.ImportContext + (*InstancesCloneRequest)(nil), // 59: mockgcp.cloud.sql.v1beta4.InstancesCloneRequest + (*InstancesDemoteMasterRequest)(nil), // 60: mockgcp.cloud.sql.v1beta4.InstancesDemoteMasterRequest + (*InstancesDemoteRequest)(nil), // 61: mockgcp.cloud.sql.v1beta4.InstancesDemoteRequest + (*InstancesExportRequest)(nil), // 62: mockgcp.cloud.sql.v1beta4.InstancesExportRequest + (*InstancesFailoverRequest)(nil), // 63: mockgcp.cloud.sql.v1beta4.InstancesFailoverRequest + (*InstancesImportRequest)(nil), // 64: mockgcp.cloud.sql.v1beta4.InstancesImportRequest + (*MySqlSyncConfig)(nil), // 65: mockgcp.cloud.sql.v1beta4.MySqlSyncConfig + (*InstancesListResponse)(nil), // 66: mockgcp.cloud.sql.v1beta4.InstancesListResponse + (*InstancesListServerCasResponse)(nil), // 67: mockgcp.cloud.sql.v1beta4.InstancesListServerCasResponse + (*InstancesRestoreBackupRequest)(nil), // 68: mockgcp.cloud.sql.v1beta4.InstancesRestoreBackupRequest + (*InstancesRotateServerCaRequest)(nil), // 69: mockgcp.cloud.sql.v1beta4.InstancesRotateServerCaRequest + (*InstancesTruncateLogRequest)(nil), // 70: mockgcp.cloud.sql.v1beta4.InstancesTruncateLogRequest + (*InstancesAcquireSsrsLeaseRequest)(nil), // 71: mockgcp.cloud.sql.v1beta4.InstancesAcquireSsrsLeaseRequest + (*PerformDiskShrinkContext)(nil), // 72: mockgcp.cloud.sql.v1beta4.PerformDiskShrinkContext + (*SqlInstancesGetDiskShrinkConfigResponse)(nil), // 73: mockgcp.cloud.sql.v1beta4.SqlInstancesGetDiskShrinkConfigResponse + (*SqlInstancesVerifyExternalSyncSettingsResponse)(nil), // 74: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsResponse + (*SqlExternalSyncSettingError)(nil), // 75: mockgcp.cloud.sql.v1beta4.SqlExternalSyncSettingError + (*IpConfiguration)(nil), // 76: mockgcp.cloud.sql.v1beta4.IpConfiguration + (*PscConfig)(nil), // 77: mockgcp.cloud.sql.v1beta4.PscConfig + (*IpMapping)(nil), // 78: mockgcp.cloud.sql.v1beta4.IpMapping + (*LocationPreference)(nil), // 79: mockgcp.cloud.sql.v1beta4.LocationPreference + (*MaintenanceWindow)(nil), // 80: mockgcp.cloud.sql.v1beta4.MaintenanceWindow + (*DenyMaintenancePeriod)(nil), // 81: mockgcp.cloud.sql.v1beta4.DenyMaintenancePeriod + (*InsightsConfig)(nil), // 82: mockgcp.cloud.sql.v1beta4.InsightsConfig + (*MySqlReplicaConfiguration)(nil), // 83: mockgcp.cloud.sql.v1beta4.MySqlReplicaConfiguration + (*OnPremisesConfiguration)(nil), // 84: mockgcp.cloud.sql.v1beta4.OnPremisesConfiguration + (*DiskEncryptionConfiguration)(nil), // 85: mockgcp.cloud.sql.v1beta4.DiskEncryptionConfiguration + (*DiskEncryptionStatus)(nil), // 86: mockgcp.cloud.sql.v1beta4.DiskEncryptionStatus + (*Operation)(nil), // 87: mockgcp.cloud.sql.v1beta4.Operation + (*OperationError)(nil), // 88: mockgcp.cloud.sql.v1beta4.OperationError + (*OperationErrors)(nil), // 89: mockgcp.cloud.sql.v1beta4.OperationErrors + (*PasswordValidationPolicy)(nil), // 90: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy + (*OperationsListResponse)(nil), // 91: mockgcp.cloud.sql.v1beta4.OperationsListResponse + (*ReplicaConfiguration)(nil), // 92: mockgcp.cloud.sql.v1beta4.ReplicaConfiguration + (*RestoreBackupContext)(nil), // 93: mockgcp.cloud.sql.v1beta4.RestoreBackupContext + (*RotateServerCaContext)(nil), // 94: mockgcp.cloud.sql.v1beta4.RotateServerCaContext + (*DataCacheConfig)(nil), // 95: mockgcp.cloud.sql.v1beta4.DataCacheConfig + (*Settings)(nil), // 96: mockgcp.cloud.sql.v1beta4.Settings + (*AdvancedMachineFeatures)(nil), // 97: mockgcp.cloud.sql.v1beta4.AdvancedMachineFeatures + (*SslCert)(nil), // 98: mockgcp.cloud.sql.v1beta4.SslCert + (*SslCertDetail)(nil), // 99: mockgcp.cloud.sql.v1beta4.SslCertDetail + (*SslCertsCreateEphemeralRequest)(nil), // 100: mockgcp.cloud.sql.v1beta4.SslCertsCreateEphemeralRequest + (*SslCertsInsertRequest)(nil), // 101: mockgcp.cloud.sql.v1beta4.SslCertsInsertRequest + (*SqlInstancesRescheduleMaintenanceRequestBody)(nil), // 102: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody + (*SslCertsInsertResponse)(nil), // 103: mockgcp.cloud.sql.v1beta4.SslCertsInsertResponse + (*SslCertsListResponse)(nil), // 104: mockgcp.cloud.sql.v1beta4.SslCertsListResponse + (*TruncateLogContext)(nil), // 105: mockgcp.cloud.sql.v1beta4.TruncateLogContext + (*SqlActiveDirectoryConfig)(nil), // 106: mockgcp.cloud.sql.v1beta4.SqlActiveDirectoryConfig + (*SqlServerAuditConfig)(nil), // 107: mockgcp.cloud.sql.v1beta4.SqlServerAuditConfig + (*AcquireSsrsLeaseContext)(nil), // 108: mockgcp.cloud.sql.v1beta4.AcquireSsrsLeaseContext + (*DatabaseInstance_SqlFailoverReplica)(nil), // 109: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlFailoverReplica + (*DatabaseInstance_SqlScheduledMaintenance)(nil), // 110: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlScheduledMaintenance + (*DatabaseInstance_SqlOutOfDiskReport)(nil), // 111: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlOutOfDiskReport + (*ExportContext_SqlCsvExportOptions)(nil), // 112: mockgcp.cloud.sql.v1beta4.ExportContext.SqlCsvExportOptions + (*ExportContext_SqlExportOptions)(nil), // 113: mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions + (*ExportContext_SqlBakExportOptions)(nil), // 114: mockgcp.cloud.sql.v1beta4.ExportContext.SqlBakExportOptions + (*ExportContext_SqlExportOptions_MysqlExportOptions)(nil), // 115: mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions.MysqlExportOptions + (*ImportContext_SqlImportOptions)(nil), // 116: mockgcp.cloud.sql.v1beta4.ImportContext.SqlImportOptions + (*ImportContext_SqlCsvImportOptions)(nil), // 117: mockgcp.cloud.sql.v1beta4.ImportContext.SqlCsvImportOptions + (*ImportContext_SqlBakImportOptions)(nil), // 118: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions + (*ImportContext_SqlBakImportOptions_EncryptionOptions)(nil), // 119: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.EncryptionOptions + nil, // 120: mockgcp.cloud.sql.v1beta4.Settings.UserLabelsEntry + (*SqlInstancesRescheduleMaintenanceRequestBody_Reschedule)(nil), // 121: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody.Reschedule + (*timestamp.Timestamp)(nil), // 122: google.protobuf.Timestamp + (*wrappers.Int32Value)(nil), // 123: google.protobuf.Int32Value + (*wrappers.BoolValue)(nil), // 124: google.protobuf.BoolValue + (*wrappers.Int64Value)(nil), // 125: google.protobuf.Int64Value + (*duration.Duration)(nil), // 126: google.protobuf.Duration } var file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_depIdxs = []int32{ - 115, // 0: mockgcp.cloud.sql.v1beta4.AclEntry.expiration_time:type_name -> google.protobuf.Timestamp + 122, // 0: mockgcp.cloud.sql.v1beta4.AclEntry.expiration_time:type_name -> google.protobuf.Timestamp 16, // 1: mockgcp.cloud.sql.v1beta4.ApiWarning.code:type_name -> mockgcp.cloud.sql.v1beta4.ApiWarning.SqlApiWarningCode 17, // 2: mockgcp.cloud.sql.v1beta4.BackupRetentionSettings.retention_unit:type_name -> mockgcp.cloud.sql.v1beta4.BackupRetentionSettings.RetentionUnit - 116, // 3: mockgcp.cloud.sql.v1beta4.BackupRetentionSettings.retained_backups:type_name -> google.protobuf.Int32Value - 117, // 4: mockgcp.cloud.sql.v1beta4.BackupConfiguration.enabled:type_name -> google.protobuf.BoolValue - 117, // 5: mockgcp.cloud.sql.v1beta4.BackupConfiguration.binary_log_enabled:type_name -> google.protobuf.BoolValue - 117, // 6: mockgcp.cloud.sql.v1beta4.BackupConfiguration.replication_log_archiving_enabled:type_name -> google.protobuf.BoolValue - 117, // 7: mockgcp.cloud.sql.v1beta4.BackupConfiguration.point_in_time_recovery_enabled:type_name -> google.protobuf.BoolValue - 116, // 8: mockgcp.cloud.sql.v1beta4.BackupConfiguration.transaction_log_retention_days:type_name -> google.protobuf.Int32Value - 32, // 9: mockgcp.cloud.sql.v1beta4.BackupConfiguration.backup_retention_settings:type_name -> mockgcp.cloud.sql.v1beta4.BackupRetentionSettings - 2, // 10: mockgcp.cloud.sql.v1beta4.BackupRun.status:type_name -> mockgcp.cloud.sql.v1beta4.SqlBackupRunStatus - 115, // 11: mockgcp.cloud.sql.v1beta4.BackupRun.enqueued_time:type_name -> google.protobuf.Timestamp - 115, // 12: mockgcp.cloud.sql.v1beta4.BackupRun.start_time:type_name -> google.protobuf.Timestamp - 115, // 13: mockgcp.cloud.sql.v1beta4.BackupRun.end_time:type_name -> google.protobuf.Timestamp - 83, // 14: mockgcp.cloud.sql.v1beta4.BackupRun.error:type_name -> mockgcp.cloud.sql.v1beta4.OperationError - 3, // 15: mockgcp.cloud.sql.v1beta4.BackupRun.type:type_name -> mockgcp.cloud.sql.v1beta4.SqlBackupRunType - 115, // 16: mockgcp.cloud.sql.v1beta4.BackupRun.window_start_time:type_name -> google.protobuf.Timestamp - 80, // 17: mockgcp.cloud.sql.v1beta4.BackupRun.disk_encryption_configuration:type_name -> mockgcp.cloud.sql.v1beta4.DiskEncryptionConfiguration - 81, // 18: mockgcp.cloud.sql.v1beta4.BackupRun.disk_encryption_status:type_name -> mockgcp.cloud.sql.v1beta4.DiskEncryptionStatus - 4, // 19: mockgcp.cloud.sql.v1beta4.BackupRun.backup_kind:type_name -> mockgcp.cloud.sql.v1beta4.SqlBackupKind - 34, // 20: mockgcp.cloud.sql.v1beta4.BackupRunsListResponse.items:type_name -> mockgcp.cloud.sql.v1beta4.BackupRun - 36, // 21: mockgcp.cloud.sql.v1beta4.CloneContext.bin_log_coordinates:type_name -> mockgcp.cloud.sql.v1beta4.BinLogCoordinates - 115, // 22: mockgcp.cloud.sql.v1beta4.CloneContext.point_in_time:type_name -> google.protobuf.Timestamp - 40, // 23: mockgcp.cloud.sql.v1beta4.Database.sqlserver_database_details:type_name -> mockgcp.cloud.sql.v1beta4.SqlServerDatabaseDetails - 18, // 24: mockgcp.cloud.sql.v1beta4.DatabaseInstance.state:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlInstanceState - 8, // 25: mockgcp.cloud.sql.v1beta4.DatabaseInstance.database_version:type_name -> mockgcp.cloud.sql.v1beta4.SqlDatabaseVersion - 91, // 26: mockgcp.cloud.sql.v1beta4.DatabaseInstance.settings:type_name -> mockgcp.cloud.sql.v1beta4.Settings - 103, // 27: mockgcp.cloud.sql.v1beta4.DatabaseInstance.failover_replica:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlFailoverReplica - 118, // 28: mockgcp.cloud.sql.v1beta4.DatabaseInstance.max_disk_size:type_name -> google.protobuf.Int64Value - 118, // 29: mockgcp.cloud.sql.v1beta4.DatabaseInstance.current_disk_size:type_name -> google.protobuf.Int64Value - 73, // 30: mockgcp.cloud.sql.v1beta4.DatabaseInstance.ip_addresses:type_name -> mockgcp.cloud.sql.v1beta4.IpMapping - 93, // 31: mockgcp.cloud.sql.v1beta4.DatabaseInstance.server_ca_cert:type_name -> mockgcp.cloud.sql.v1beta4.SslCert - 7, // 32: mockgcp.cloud.sql.v1beta4.DatabaseInstance.instance_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlInstanceType - 79, // 33: mockgcp.cloud.sql.v1beta4.DatabaseInstance.on_premises_configuration:type_name -> mockgcp.cloud.sql.v1beta4.OnPremisesConfiguration - 87, // 34: mockgcp.cloud.sql.v1beta4.DatabaseInstance.replica_configuration:type_name -> mockgcp.cloud.sql.v1beta4.ReplicaConfiguration - 5, // 35: mockgcp.cloud.sql.v1beta4.DatabaseInstance.backend_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlBackendType - 9, // 36: mockgcp.cloud.sql.v1beta4.DatabaseInstance.suspension_reason:type_name -> mockgcp.cloud.sql.v1beta4.SqlSuspensionReason - 80, // 37: mockgcp.cloud.sql.v1beta4.DatabaseInstance.disk_encryption_configuration:type_name -> mockgcp.cloud.sql.v1beta4.DiskEncryptionConfiguration - 81, // 38: mockgcp.cloud.sql.v1beta4.DatabaseInstance.disk_encryption_status:type_name -> mockgcp.cloud.sql.v1beta4.DiskEncryptionStatus - 104, // 39: mockgcp.cloud.sql.v1beta4.DatabaseInstance.scheduled_maintenance:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlScheduledMaintenance - 117, // 40: mockgcp.cloud.sql.v1beta4.DatabaseInstance.satisfies_pzs:type_name -> google.protobuf.BoolValue - 105, // 41: mockgcp.cloud.sql.v1beta4.DatabaseInstance.out_of_disk_report:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlOutOfDiskReport - 115, // 42: mockgcp.cloud.sql.v1beta4.DatabaseInstance.create_time:type_name -> google.protobuf.Timestamp - 19, // 43: mockgcp.cloud.sql.v1beta4.DatabaseInstance.sql_network_architecture:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlNetworkArchitecture - 39, // 44: mockgcp.cloud.sql.v1beta4.DatabasesListResponse.items:type_name -> mockgcp.cloud.sql.v1beta4.Database - 48, // 45: mockgcp.cloud.sql.v1beta4.DemoteMasterConfiguration.mysql_replica_configuration:type_name -> mockgcp.cloud.sql.v1beta4.DemoteMasterMySqlReplicaConfiguration - 117, // 46: mockgcp.cloud.sql.v1beta4.DemoteMasterContext.verify_gtid_consistency:type_name -> google.protobuf.BoolValue - 46, // 47: mockgcp.cloud.sql.v1beta4.DemoteMasterContext.replica_configuration:type_name -> mockgcp.cloud.sql.v1beta4.DemoteMasterConfiguration - 107, // 48: mockgcp.cloud.sql.v1beta4.ExportContext.sql_export_options:type_name -> mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions - 106, // 49: mockgcp.cloud.sql.v1beta4.ExportContext.csv_export_options:type_name -> mockgcp.cloud.sql.v1beta4.ExportContext.SqlCsvExportOptions - 0, // 50: mockgcp.cloud.sql.v1beta4.ExportContext.file_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlFileType - 117, // 51: mockgcp.cloud.sql.v1beta4.ExportContext.offload:type_name -> google.protobuf.BoolValue - 108, // 52: mockgcp.cloud.sql.v1beta4.ExportContext.bak_export_options:type_name -> mockgcp.cloud.sql.v1beta4.ExportContext.SqlBakExportOptions - 15, // 53: mockgcp.cloud.sql.v1beta4.Flag.type:type_name -> mockgcp.cloud.sql.v1beta4.SqlFlagType - 8, // 54: mockgcp.cloud.sql.v1beta4.Flag.applies_to:type_name -> mockgcp.cloud.sql.v1beta4.SqlDatabaseVersion - 118, // 55: mockgcp.cloud.sql.v1beta4.Flag.min_value:type_name -> google.protobuf.Int64Value - 118, // 56: mockgcp.cloud.sql.v1beta4.Flag.max_value:type_name -> google.protobuf.Int64Value - 117, // 57: mockgcp.cloud.sql.v1beta4.Flag.requires_restart:type_name -> google.protobuf.BoolValue - 117, // 58: mockgcp.cloud.sql.v1beta4.Flag.in_beta:type_name -> google.protobuf.BoolValue - 52, // 59: mockgcp.cloud.sql.v1beta4.FlagsListResponse.items:type_name -> mockgcp.cloud.sql.v1beta4.Flag - 0, // 60: mockgcp.cloud.sql.v1beta4.ImportContext.file_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlFileType - 110, // 61: mockgcp.cloud.sql.v1beta4.ImportContext.csv_import_options:type_name -> mockgcp.cloud.sql.v1beta4.ImportContext.SqlCsvImportOptions - 111, // 62: mockgcp.cloud.sql.v1beta4.ImportContext.bak_import_options:type_name -> mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions - 38, // 63: mockgcp.cloud.sql.v1beta4.InstancesCloneRequest.clone_context:type_name -> mockgcp.cloud.sql.v1beta4.CloneContext - 47, // 64: mockgcp.cloud.sql.v1beta4.InstancesDemoteMasterRequest.demote_master_context:type_name -> mockgcp.cloud.sql.v1beta4.DemoteMasterContext - 49, // 65: mockgcp.cloud.sql.v1beta4.InstancesDemoteRequest.demote_context:type_name -> mockgcp.cloud.sql.v1beta4.DemoteContext - 50, // 66: mockgcp.cloud.sql.v1beta4.InstancesExportRequest.export_context:type_name -> mockgcp.cloud.sql.v1beta4.ExportContext - 51, // 67: mockgcp.cloud.sql.v1beta4.InstancesFailoverRequest.failover_context:type_name -> mockgcp.cloud.sql.v1beta4.FailoverContext - 54, // 68: mockgcp.cloud.sql.v1beta4.InstancesImportRequest.import_context:type_name -> mockgcp.cloud.sql.v1beta4.ImportContext - 42, // 69: mockgcp.cloud.sql.v1beta4.MySqlSyncConfig.initial_sync_flags:type_name -> mockgcp.cloud.sql.v1beta4.SyncFlags - 31, // 70: mockgcp.cloud.sql.v1beta4.InstancesListResponse.warnings:type_name -> mockgcp.cloud.sql.v1beta4.ApiWarning - 44, // 71: mockgcp.cloud.sql.v1beta4.InstancesListResponse.items:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance - 93, // 72: mockgcp.cloud.sql.v1beta4.InstancesListServerCasResponse.certs:type_name -> mockgcp.cloud.sql.v1beta4.SslCert - 88, // 73: mockgcp.cloud.sql.v1beta4.InstancesRestoreBackupRequest.restore_backup_context:type_name -> mockgcp.cloud.sql.v1beta4.RestoreBackupContext - 89, // 74: mockgcp.cloud.sql.v1beta4.InstancesRotateServerCaRequest.rotate_server_ca_context:type_name -> mockgcp.cloud.sql.v1beta4.RotateServerCaContext - 100, // 75: mockgcp.cloud.sql.v1beta4.InstancesTruncateLogRequest.truncate_log_context:type_name -> mockgcp.cloud.sql.v1beta4.TruncateLogContext - 70, // 76: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsResponse.errors:type_name -> mockgcp.cloud.sql.v1beta4.SqlExternalSyncSettingError - 70, // 77: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsResponse.warnings:type_name -> mockgcp.cloud.sql.v1beta4.SqlExternalSyncSettingError - 21, // 78: mockgcp.cloud.sql.v1beta4.SqlExternalSyncSettingError.type:type_name -> mockgcp.cloud.sql.v1beta4.SqlExternalSyncSettingError.SqlExternalSyncSettingErrorType - 117, // 79: mockgcp.cloud.sql.v1beta4.IpConfiguration.ipv4_enabled:type_name -> google.protobuf.BoolValue - 117, // 80: mockgcp.cloud.sql.v1beta4.IpConfiguration.require_ssl:type_name -> google.protobuf.BoolValue - 30, // 81: mockgcp.cloud.sql.v1beta4.IpConfiguration.authorized_networks:type_name -> mockgcp.cloud.sql.v1beta4.AclEntry - 117, // 82: mockgcp.cloud.sql.v1beta4.IpConfiguration.enable_private_path_for_google_cloud_services:type_name -> google.protobuf.BoolValue - 22, // 83: mockgcp.cloud.sql.v1beta4.IpConfiguration.ssl_mode:type_name -> mockgcp.cloud.sql.v1beta4.IpConfiguration.SslMode - 72, // 84: mockgcp.cloud.sql.v1beta4.IpConfiguration.psc_config:type_name -> mockgcp.cloud.sql.v1beta4.PscConfig - 6, // 85: mockgcp.cloud.sql.v1beta4.IpMapping.type:type_name -> mockgcp.cloud.sql.v1beta4.SqlIpAddressType - 115, // 86: mockgcp.cloud.sql.v1beta4.IpMapping.time_to_retire:type_name -> google.protobuf.Timestamp - 116, // 87: mockgcp.cloud.sql.v1beta4.MaintenanceWindow.hour:type_name -> google.protobuf.Int32Value - 116, // 88: mockgcp.cloud.sql.v1beta4.MaintenanceWindow.day:type_name -> google.protobuf.Int32Value - 14, // 89: mockgcp.cloud.sql.v1beta4.MaintenanceWindow.update_track:type_name -> mockgcp.cloud.sql.v1beta4.SqlUpdateTrack - 116, // 90: mockgcp.cloud.sql.v1beta4.InsightsConfig.query_string_length:type_name -> google.protobuf.Int32Value - 116, // 91: mockgcp.cloud.sql.v1beta4.InsightsConfig.query_plans_per_minute:type_name -> google.protobuf.Int32Value - 116, // 92: mockgcp.cloud.sql.v1beta4.MySqlReplicaConfiguration.connect_retry_interval:type_name -> google.protobuf.Int32Value - 118, // 93: mockgcp.cloud.sql.v1beta4.MySqlReplicaConfiguration.master_heartbeat_period:type_name -> google.protobuf.Int64Value - 117, // 94: mockgcp.cloud.sql.v1beta4.MySqlReplicaConfiguration.verify_server_certificate:type_name -> google.protobuf.BoolValue - 43, // 95: mockgcp.cloud.sql.v1beta4.OnPremisesConfiguration.source_instance:type_name -> mockgcp.cloud.sql.v1beta4.InstanceReference - 24, // 96: mockgcp.cloud.sql.v1beta4.Operation.status:type_name -> mockgcp.cloud.sql.v1beta4.Operation.SqlOperationStatus - 115, // 97: mockgcp.cloud.sql.v1beta4.Operation.insert_time:type_name -> google.protobuf.Timestamp - 115, // 98: mockgcp.cloud.sql.v1beta4.Operation.start_time:type_name -> google.protobuf.Timestamp - 115, // 99: mockgcp.cloud.sql.v1beta4.Operation.end_time:type_name -> google.protobuf.Timestamp - 84, // 100: mockgcp.cloud.sql.v1beta4.Operation.error:type_name -> mockgcp.cloud.sql.v1beta4.OperationErrors - 31, // 101: mockgcp.cloud.sql.v1beta4.Operation.api_warning:type_name -> mockgcp.cloud.sql.v1beta4.ApiWarning - 23, // 102: mockgcp.cloud.sql.v1beta4.Operation.operation_type:type_name -> mockgcp.cloud.sql.v1beta4.Operation.SqlOperationType - 54, // 103: mockgcp.cloud.sql.v1beta4.Operation.import_context:type_name -> mockgcp.cloud.sql.v1beta4.ImportContext - 50, // 104: mockgcp.cloud.sql.v1beta4.Operation.export_context:type_name -> mockgcp.cloud.sql.v1beta4.ExportContext - 37, // 105: mockgcp.cloud.sql.v1beta4.Operation.backup_context:type_name -> mockgcp.cloud.sql.v1beta4.BackupContext - 83, // 106: mockgcp.cloud.sql.v1beta4.OperationErrors.errors:type_name -> mockgcp.cloud.sql.v1beta4.OperationError - 116, // 107: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.min_length:type_name -> google.protobuf.Int32Value - 25, // 108: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.complexity:type_name -> mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.Complexity - 116, // 109: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.reuse_interval:type_name -> google.protobuf.Int32Value - 117, // 110: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.disallow_username_substring:type_name -> google.protobuf.BoolValue - 119, // 111: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.password_change_interval:type_name -> google.protobuf.Duration - 117, // 112: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.enable_password_policy:type_name -> google.protobuf.BoolValue - 117, // 113: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.disallow_compromised_credentials:type_name -> google.protobuf.BoolValue - 82, // 114: mockgcp.cloud.sql.v1beta4.OperationsListResponse.items:type_name -> mockgcp.cloud.sql.v1beta4.Operation - 78, // 115: mockgcp.cloud.sql.v1beta4.ReplicaConfiguration.mysql_replica_configuration:type_name -> mockgcp.cloud.sql.v1beta4.MySqlReplicaConfiguration - 117, // 116: mockgcp.cloud.sql.v1beta4.ReplicaConfiguration.failover_target:type_name -> google.protobuf.BoolValue - 117, // 117: mockgcp.cloud.sql.v1beta4.ReplicaConfiguration.cascadable_replica:type_name -> google.protobuf.BoolValue - 118, // 118: mockgcp.cloud.sql.v1beta4.Settings.settings_version:type_name -> google.protobuf.Int64Value - 113, // 119: mockgcp.cloud.sql.v1beta4.Settings.user_labels:type_name -> mockgcp.cloud.sql.v1beta4.Settings.UserLabelsEntry - 13, // 120: mockgcp.cloud.sql.v1beta4.Settings.availability_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlAvailabilityType - 10, // 121: mockgcp.cloud.sql.v1beta4.Settings.pricing_plan:type_name -> mockgcp.cloud.sql.v1beta4.SqlPricingPlan - 11, // 122: mockgcp.cloud.sql.v1beta4.Settings.replication_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlReplicationType - 118, // 123: mockgcp.cloud.sql.v1beta4.Settings.storage_auto_resize_limit:type_name -> google.protobuf.Int64Value - 26, // 124: mockgcp.cloud.sql.v1beta4.Settings.activation_policy:type_name -> mockgcp.cloud.sql.v1beta4.Settings.SqlActivationPolicy - 71, // 125: mockgcp.cloud.sql.v1beta4.Settings.ip_configuration:type_name -> mockgcp.cloud.sql.v1beta4.IpConfiguration - 117, // 126: mockgcp.cloud.sql.v1beta4.Settings.storage_auto_resize:type_name -> google.protobuf.BoolValue - 74, // 127: mockgcp.cloud.sql.v1beta4.Settings.location_preference:type_name -> mockgcp.cloud.sql.v1beta4.LocationPreference - 41, // 128: mockgcp.cloud.sql.v1beta4.Settings.database_flags:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseFlags - 12, // 129: mockgcp.cloud.sql.v1beta4.Settings.data_disk_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlDataDiskType - 75, // 130: mockgcp.cloud.sql.v1beta4.Settings.maintenance_window:type_name -> mockgcp.cloud.sql.v1beta4.MaintenanceWindow - 33, // 131: mockgcp.cloud.sql.v1beta4.Settings.backup_configuration:type_name -> mockgcp.cloud.sql.v1beta4.BackupConfiguration - 117, // 132: mockgcp.cloud.sql.v1beta4.Settings.database_replication_enabled:type_name -> google.protobuf.BoolValue - 117, // 133: mockgcp.cloud.sql.v1beta4.Settings.crash_safe_replication_enabled:type_name -> google.protobuf.BoolValue - 118, // 134: mockgcp.cloud.sql.v1beta4.Settings.data_disk_size_gb:type_name -> google.protobuf.Int64Value - 101, // 135: mockgcp.cloud.sql.v1beta4.Settings.active_directory_config:type_name -> mockgcp.cloud.sql.v1beta4.SqlActiveDirectoryConfig - 76, // 136: mockgcp.cloud.sql.v1beta4.Settings.deny_maintenance_periods:type_name -> mockgcp.cloud.sql.v1beta4.DenyMaintenancePeriod - 77, // 137: mockgcp.cloud.sql.v1beta4.Settings.insights_config:type_name -> mockgcp.cloud.sql.v1beta4.InsightsConfig - 85, // 138: mockgcp.cloud.sql.v1beta4.Settings.password_validation_policy:type_name -> mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy - 102, // 139: mockgcp.cloud.sql.v1beta4.Settings.sql_server_audit_config:type_name -> mockgcp.cloud.sql.v1beta4.SqlServerAuditConfig - 27, // 140: mockgcp.cloud.sql.v1beta4.Settings.edition:type_name -> mockgcp.cloud.sql.v1beta4.Settings.Edition - 28, // 141: mockgcp.cloud.sql.v1beta4.Settings.connector_enforcement:type_name -> mockgcp.cloud.sql.v1beta4.Settings.ConnectorEnforcement - 117, // 142: mockgcp.cloud.sql.v1beta4.Settings.deletion_protection_enabled:type_name -> google.protobuf.BoolValue - 92, // 143: mockgcp.cloud.sql.v1beta4.Settings.advanced_machine_features:type_name -> mockgcp.cloud.sql.v1beta4.AdvancedMachineFeatures - 90, // 144: mockgcp.cloud.sql.v1beta4.Settings.data_cache_config:type_name -> mockgcp.cloud.sql.v1beta4.DataCacheConfig - 115, // 145: mockgcp.cloud.sql.v1beta4.SslCert.create_time:type_name -> google.protobuf.Timestamp - 115, // 146: mockgcp.cloud.sql.v1beta4.SslCert.expiration_time:type_name -> google.protobuf.Timestamp - 93, // 147: mockgcp.cloud.sql.v1beta4.SslCertDetail.cert_info:type_name -> mockgcp.cloud.sql.v1beta4.SslCert - 114, // 148: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody.reschedule:type_name -> mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody.Reschedule - 82, // 149: mockgcp.cloud.sql.v1beta4.SslCertsInsertResponse.operation:type_name -> mockgcp.cloud.sql.v1beta4.Operation - 93, // 150: mockgcp.cloud.sql.v1beta4.SslCertsInsertResponse.server_ca_cert:type_name -> mockgcp.cloud.sql.v1beta4.SslCert - 94, // 151: mockgcp.cloud.sql.v1beta4.SslCertsInsertResponse.client_cert:type_name -> mockgcp.cloud.sql.v1beta4.SslCertDetail - 93, // 152: mockgcp.cloud.sql.v1beta4.SslCertsListResponse.items:type_name -> mockgcp.cloud.sql.v1beta4.SslCert - 119, // 153: mockgcp.cloud.sql.v1beta4.SqlServerAuditConfig.retention_interval:type_name -> google.protobuf.Duration - 119, // 154: mockgcp.cloud.sql.v1beta4.SqlServerAuditConfig.upload_interval:type_name -> google.protobuf.Duration - 117, // 155: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlFailoverReplica.available:type_name -> google.protobuf.BoolValue - 115, // 156: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlScheduledMaintenance.start_time:type_name -> google.protobuf.Timestamp - 115, // 157: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlScheduledMaintenance.schedule_deadline_time:type_name -> google.protobuf.Timestamp - 20, // 158: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlOutOfDiskReport.sql_out_of_disk_state:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlOutOfDiskReport.SqlOutOfDiskState - 117, // 159: mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions.schema_only:type_name -> google.protobuf.BoolValue - 109, // 160: mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions.mysql_export_options:type_name -> mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions.MysqlExportOptions - 116, // 161: mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions.threads:type_name -> google.protobuf.Int32Value - 117, // 162: mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions.parallel:type_name -> google.protobuf.BoolValue - 117, // 163: mockgcp.cloud.sql.v1beta4.ExportContext.SqlBakExportOptions.striped:type_name -> google.protobuf.BoolValue - 116, // 164: mockgcp.cloud.sql.v1beta4.ExportContext.SqlBakExportOptions.stripe_count:type_name -> google.protobuf.Int32Value - 1, // 165: mockgcp.cloud.sql.v1beta4.ExportContext.SqlBakExportOptions.bak_type:type_name -> mockgcp.cloud.sql.v1beta4.BakType - 117, // 166: mockgcp.cloud.sql.v1beta4.ExportContext.SqlBakExportOptions.copy_only:type_name -> google.protobuf.BoolValue - 117, // 167: mockgcp.cloud.sql.v1beta4.ExportContext.SqlBakExportOptions.differential_base:type_name -> google.protobuf.BoolValue - 116, // 168: mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions.MysqlExportOptions.master_data:type_name -> google.protobuf.Int32Value - 112, // 169: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.encryption_options:type_name -> mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.EncryptionOptions - 117, // 170: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.striped:type_name -> google.protobuf.BoolValue - 117, // 171: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.no_recovery:type_name -> google.protobuf.BoolValue - 117, // 172: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.recovery_only:type_name -> google.protobuf.BoolValue - 1, // 173: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.bak_type:type_name -> mockgcp.cloud.sql.v1beta4.BakType - 115, // 174: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.stop_at:type_name -> google.protobuf.Timestamp - 29, // 175: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody.Reschedule.reschedule_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody.RescheduleType - 115, // 176: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody.Reschedule.schedule_time:type_name -> google.protobuf.Timestamp - 177, // [177:177] is the sub-list for method output_type - 177, // [177:177] is the sub-list for method input_type - 177, // [177:177] is the sub-list for extension type_name - 177, // [177:177] is the sub-list for extension extendee - 0, // [0:177] is the sub-list for field type_name + 123, // 3: mockgcp.cloud.sql.v1beta4.BackupRetentionSettings.retained_backups:type_name -> google.protobuf.Int32Value + 124, // 4: mockgcp.cloud.sql.v1beta4.BackupConfiguration.enabled:type_name -> google.protobuf.BoolValue + 124, // 5: mockgcp.cloud.sql.v1beta4.BackupConfiguration.binary_log_enabled:type_name -> google.protobuf.BoolValue + 124, // 6: mockgcp.cloud.sql.v1beta4.BackupConfiguration.replication_log_archiving_enabled:type_name -> google.protobuf.BoolValue + 124, // 7: mockgcp.cloud.sql.v1beta4.BackupConfiguration.point_in_time_recovery_enabled:type_name -> google.protobuf.BoolValue + 123, // 8: mockgcp.cloud.sql.v1beta4.BackupConfiguration.transaction_log_retention_days:type_name -> google.protobuf.Int32Value + 33, // 9: mockgcp.cloud.sql.v1beta4.BackupConfiguration.backup_retention_settings:type_name -> mockgcp.cloud.sql.v1beta4.BackupRetentionSettings + 18, // 10: mockgcp.cloud.sql.v1beta4.BackupConfiguration.transactional_log_storage_state:type_name -> mockgcp.cloud.sql.v1beta4.BackupConfiguration.TransactionalLogStorageState + 2, // 11: mockgcp.cloud.sql.v1beta4.BackupRun.status:type_name -> mockgcp.cloud.sql.v1beta4.SqlBackupRunStatus + 122, // 12: mockgcp.cloud.sql.v1beta4.BackupRun.enqueued_time:type_name -> google.protobuf.Timestamp + 122, // 13: mockgcp.cloud.sql.v1beta4.BackupRun.start_time:type_name -> google.protobuf.Timestamp + 122, // 14: mockgcp.cloud.sql.v1beta4.BackupRun.end_time:type_name -> google.protobuf.Timestamp + 88, // 15: mockgcp.cloud.sql.v1beta4.BackupRun.error:type_name -> mockgcp.cloud.sql.v1beta4.OperationError + 3, // 16: mockgcp.cloud.sql.v1beta4.BackupRun.type:type_name -> mockgcp.cloud.sql.v1beta4.SqlBackupRunType + 122, // 17: mockgcp.cloud.sql.v1beta4.BackupRun.window_start_time:type_name -> google.protobuf.Timestamp + 85, // 18: mockgcp.cloud.sql.v1beta4.BackupRun.disk_encryption_configuration:type_name -> mockgcp.cloud.sql.v1beta4.DiskEncryptionConfiguration + 86, // 19: mockgcp.cloud.sql.v1beta4.BackupRun.disk_encryption_status:type_name -> mockgcp.cloud.sql.v1beta4.DiskEncryptionStatus + 4, // 20: mockgcp.cloud.sql.v1beta4.BackupRun.backup_kind:type_name -> mockgcp.cloud.sql.v1beta4.SqlBackupKind + 35, // 21: mockgcp.cloud.sql.v1beta4.BackupRunsListResponse.items:type_name -> mockgcp.cloud.sql.v1beta4.BackupRun + 37, // 22: mockgcp.cloud.sql.v1beta4.CloneContext.bin_log_coordinates:type_name -> mockgcp.cloud.sql.v1beta4.BinLogCoordinates + 122, // 23: mockgcp.cloud.sql.v1beta4.CloneContext.point_in_time:type_name -> google.protobuf.Timestamp + 41, // 24: mockgcp.cloud.sql.v1beta4.Database.sqlserver_database_details:type_name -> mockgcp.cloud.sql.v1beta4.SqlServerDatabaseDetails + 19, // 25: mockgcp.cloud.sql.v1beta4.DatabaseInstance.state:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlInstanceState + 8, // 26: mockgcp.cloud.sql.v1beta4.DatabaseInstance.database_version:type_name -> mockgcp.cloud.sql.v1beta4.SqlDatabaseVersion + 96, // 27: mockgcp.cloud.sql.v1beta4.DatabaseInstance.settings:type_name -> mockgcp.cloud.sql.v1beta4.Settings + 109, // 28: mockgcp.cloud.sql.v1beta4.DatabaseInstance.failover_replica:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlFailoverReplica + 125, // 29: mockgcp.cloud.sql.v1beta4.DatabaseInstance.max_disk_size:type_name -> google.protobuf.Int64Value + 125, // 30: mockgcp.cloud.sql.v1beta4.DatabaseInstance.current_disk_size:type_name -> google.protobuf.Int64Value + 78, // 31: mockgcp.cloud.sql.v1beta4.DatabaseInstance.ip_addresses:type_name -> mockgcp.cloud.sql.v1beta4.IpMapping + 98, // 32: mockgcp.cloud.sql.v1beta4.DatabaseInstance.server_ca_cert:type_name -> mockgcp.cloud.sql.v1beta4.SslCert + 7, // 33: mockgcp.cloud.sql.v1beta4.DatabaseInstance.instance_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlInstanceType + 84, // 34: mockgcp.cloud.sql.v1beta4.DatabaseInstance.on_premises_configuration:type_name -> mockgcp.cloud.sql.v1beta4.OnPremisesConfiguration + 92, // 35: mockgcp.cloud.sql.v1beta4.DatabaseInstance.replica_configuration:type_name -> mockgcp.cloud.sql.v1beta4.ReplicaConfiguration + 5, // 36: mockgcp.cloud.sql.v1beta4.DatabaseInstance.backend_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlBackendType + 9, // 37: mockgcp.cloud.sql.v1beta4.DatabaseInstance.suspension_reason:type_name -> mockgcp.cloud.sql.v1beta4.SqlSuspensionReason + 85, // 38: mockgcp.cloud.sql.v1beta4.DatabaseInstance.disk_encryption_configuration:type_name -> mockgcp.cloud.sql.v1beta4.DiskEncryptionConfiguration + 86, // 39: mockgcp.cloud.sql.v1beta4.DatabaseInstance.disk_encryption_status:type_name -> mockgcp.cloud.sql.v1beta4.DiskEncryptionStatus + 110, // 40: mockgcp.cloud.sql.v1beta4.DatabaseInstance.scheduled_maintenance:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlScheduledMaintenance + 124, // 41: mockgcp.cloud.sql.v1beta4.DatabaseInstance.satisfies_pzs:type_name -> google.protobuf.BoolValue + 111, // 42: mockgcp.cloud.sql.v1beta4.DatabaseInstance.out_of_disk_report:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlOutOfDiskReport + 122, // 43: mockgcp.cloud.sql.v1beta4.DatabaseInstance.create_time:type_name -> google.protobuf.Timestamp + 48, // 44: mockgcp.cloud.sql.v1beta4.DatabaseInstance.upgradable_database_versions:type_name -> mockgcp.cloud.sql.v1beta4.AvailableDatabaseVersion + 20, // 45: mockgcp.cloud.sql.v1beta4.DatabaseInstance.sql_network_architecture:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlNetworkArchitecture + 47, // 46: mockgcp.cloud.sql.v1beta4.DatabaseInstance.replication_cluster:type_name -> mockgcp.cloud.sql.v1beta4.ReplicationCluster + 46, // 47: mockgcp.cloud.sql.v1beta4.DatabaseInstance.gemini_config:type_name -> mockgcp.cloud.sql.v1beta4.GeminiInstanceConfig + 40, // 48: mockgcp.cloud.sql.v1beta4.DatabasesListResponse.items:type_name -> mockgcp.cloud.sql.v1beta4.Database + 52, // 49: mockgcp.cloud.sql.v1beta4.DemoteMasterConfiguration.mysql_replica_configuration:type_name -> mockgcp.cloud.sql.v1beta4.DemoteMasterMySqlReplicaConfiguration + 124, // 50: mockgcp.cloud.sql.v1beta4.DemoteMasterContext.verify_gtid_consistency:type_name -> google.protobuf.BoolValue + 50, // 51: mockgcp.cloud.sql.v1beta4.DemoteMasterContext.replica_configuration:type_name -> mockgcp.cloud.sql.v1beta4.DemoteMasterConfiguration + 113, // 52: mockgcp.cloud.sql.v1beta4.ExportContext.sql_export_options:type_name -> mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions + 112, // 53: mockgcp.cloud.sql.v1beta4.ExportContext.csv_export_options:type_name -> mockgcp.cloud.sql.v1beta4.ExportContext.SqlCsvExportOptions + 0, // 54: mockgcp.cloud.sql.v1beta4.ExportContext.file_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlFileType + 124, // 55: mockgcp.cloud.sql.v1beta4.ExportContext.offload:type_name -> google.protobuf.BoolValue + 114, // 56: mockgcp.cloud.sql.v1beta4.ExportContext.bak_export_options:type_name -> mockgcp.cloud.sql.v1beta4.ExportContext.SqlBakExportOptions + 15, // 57: mockgcp.cloud.sql.v1beta4.Flag.type:type_name -> mockgcp.cloud.sql.v1beta4.SqlFlagType + 8, // 58: mockgcp.cloud.sql.v1beta4.Flag.applies_to:type_name -> mockgcp.cloud.sql.v1beta4.SqlDatabaseVersion + 125, // 59: mockgcp.cloud.sql.v1beta4.Flag.min_value:type_name -> google.protobuf.Int64Value + 125, // 60: mockgcp.cloud.sql.v1beta4.Flag.max_value:type_name -> google.protobuf.Int64Value + 124, // 61: mockgcp.cloud.sql.v1beta4.Flag.requires_restart:type_name -> google.protobuf.BoolValue + 124, // 62: mockgcp.cloud.sql.v1beta4.Flag.in_beta:type_name -> google.protobuf.BoolValue + 56, // 63: mockgcp.cloud.sql.v1beta4.FlagsListResponse.items:type_name -> mockgcp.cloud.sql.v1beta4.Flag + 0, // 64: mockgcp.cloud.sql.v1beta4.ImportContext.file_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlFileType + 117, // 65: mockgcp.cloud.sql.v1beta4.ImportContext.csv_import_options:type_name -> mockgcp.cloud.sql.v1beta4.ImportContext.SqlCsvImportOptions + 118, // 66: mockgcp.cloud.sql.v1beta4.ImportContext.bak_import_options:type_name -> mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions + 116, // 67: mockgcp.cloud.sql.v1beta4.ImportContext.sql_import_options:type_name -> mockgcp.cloud.sql.v1beta4.ImportContext.SqlImportOptions + 39, // 68: mockgcp.cloud.sql.v1beta4.InstancesCloneRequest.clone_context:type_name -> mockgcp.cloud.sql.v1beta4.CloneContext + 51, // 69: mockgcp.cloud.sql.v1beta4.InstancesDemoteMasterRequest.demote_master_context:type_name -> mockgcp.cloud.sql.v1beta4.DemoteMasterContext + 53, // 70: mockgcp.cloud.sql.v1beta4.InstancesDemoteRequest.demote_context:type_name -> mockgcp.cloud.sql.v1beta4.DemoteContext + 54, // 71: mockgcp.cloud.sql.v1beta4.InstancesExportRequest.export_context:type_name -> mockgcp.cloud.sql.v1beta4.ExportContext + 55, // 72: mockgcp.cloud.sql.v1beta4.InstancesFailoverRequest.failover_context:type_name -> mockgcp.cloud.sql.v1beta4.FailoverContext + 58, // 73: mockgcp.cloud.sql.v1beta4.InstancesImportRequest.import_context:type_name -> mockgcp.cloud.sql.v1beta4.ImportContext + 43, // 74: mockgcp.cloud.sql.v1beta4.MySqlSyncConfig.initial_sync_flags:type_name -> mockgcp.cloud.sql.v1beta4.SyncFlags + 32, // 75: mockgcp.cloud.sql.v1beta4.InstancesListResponse.warnings:type_name -> mockgcp.cloud.sql.v1beta4.ApiWarning + 45, // 76: mockgcp.cloud.sql.v1beta4.InstancesListResponse.items:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance + 98, // 77: mockgcp.cloud.sql.v1beta4.InstancesListServerCasResponse.certs:type_name -> mockgcp.cloud.sql.v1beta4.SslCert + 93, // 78: mockgcp.cloud.sql.v1beta4.InstancesRestoreBackupRequest.restore_backup_context:type_name -> mockgcp.cloud.sql.v1beta4.RestoreBackupContext + 94, // 79: mockgcp.cloud.sql.v1beta4.InstancesRotateServerCaRequest.rotate_server_ca_context:type_name -> mockgcp.cloud.sql.v1beta4.RotateServerCaContext + 105, // 80: mockgcp.cloud.sql.v1beta4.InstancesTruncateLogRequest.truncate_log_context:type_name -> mockgcp.cloud.sql.v1beta4.TruncateLogContext + 108, // 81: mockgcp.cloud.sql.v1beta4.InstancesAcquireSsrsLeaseRequest.acquire_ssrs_lease_context:type_name -> mockgcp.cloud.sql.v1beta4.AcquireSsrsLeaseContext + 75, // 82: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsResponse.errors:type_name -> mockgcp.cloud.sql.v1beta4.SqlExternalSyncSettingError + 75, // 83: mockgcp.cloud.sql.v1beta4.SqlInstancesVerifyExternalSyncSettingsResponse.warnings:type_name -> mockgcp.cloud.sql.v1beta4.SqlExternalSyncSettingError + 22, // 84: mockgcp.cloud.sql.v1beta4.SqlExternalSyncSettingError.type:type_name -> mockgcp.cloud.sql.v1beta4.SqlExternalSyncSettingError.SqlExternalSyncSettingErrorType + 124, // 85: mockgcp.cloud.sql.v1beta4.IpConfiguration.ipv4_enabled:type_name -> google.protobuf.BoolValue + 124, // 86: mockgcp.cloud.sql.v1beta4.IpConfiguration.require_ssl:type_name -> google.protobuf.BoolValue + 31, // 87: mockgcp.cloud.sql.v1beta4.IpConfiguration.authorized_networks:type_name -> mockgcp.cloud.sql.v1beta4.AclEntry + 124, // 88: mockgcp.cloud.sql.v1beta4.IpConfiguration.enable_private_path_for_google_cloud_services:type_name -> google.protobuf.BoolValue + 23, // 89: mockgcp.cloud.sql.v1beta4.IpConfiguration.ssl_mode:type_name -> mockgcp.cloud.sql.v1beta4.IpConfiguration.SslMode + 77, // 90: mockgcp.cloud.sql.v1beta4.IpConfiguration.psc_config:type_name -> mockgcp.cloud.sql.v1beta4.PscConfig + 6, // 91: mockgcp.cloud.sql.v1beta4.IpMapping.type:type_name -> mockgcp.cloud.sql.v1beta4.SqlIpAddressType + 122, // 92: mockgcp.cloud.sql.v1beta4.IpMapping.time_to_retire:type_name -> google.protobuf.Timestamp + 123, // 93: mockgcp.cloud.sql.v1beta4.MaintenanceWindow.hour:type_name -> google.protobuf.Int32Value + 123, // 94: mockgcp.cloud.sql.v1beta4.MaintenanceWindow.day:type_name -> google.protobuf.Int32Value + 14, // 95: mockgcp.cloud.sql.v1beta4.MaintenanceWindow.update_track:type_name -> mockgcp.cloud.sql.v1beta4.SqlUpdateTrack + 123, // 96: mockgcp.cloud.sql.v1beta4.InsightsConfig.query_string_length:type_name -> google.protobuf.Int32Value + 123, // 97: mockgcp.cloud.sql.v1beta4.InsightsConfig.query_plans_per_minute:type_name -> google.protobuf.Int32Value + 123, // 98: mockgcp.cloud.sql.v1beta4.MySqlReplicaConfiguration.connect_retry_interval:type_name -> google.protobuf.Int32Value + 125, // 99: mockgcp.cloud.sql.v1beta4.MySqlReplicaConfiguration.master_heartbeat_period:type_name -> google.protobuf.Int64Value + 124, // 100: mockgcp.cloud.sql.v1beta4.MySqlReplicaConfiguration.verify_server_certificate:type_name -> google.protobuf.BoolValue + 44, // 101: mockgcp.cloud.sql.v1beta4.OnPremisesConfiguration.source_instance:type_name -> mockgcp.cloud.sql.v1beta4.InstanceReference + 25, // 102: mockgcp.cloud.sql.v1beta4.Operation.status:type_name -> mockgcp.cloud.sql.v1beta4.Operation.SqlOperationStatus + 122, // 103: mockgcp.cloud.sql.v1beta4.Operation.insert_time:type_name -> google.protobuf.Timestamp + 122, // 104: mockgcp.cloud.sql.v1beta4.Operation.start_time:type_name -> google.protobuf.Timestamp + 122, // 105: mockgcp.cloud.sql.v1beta4.Operation.end_time:type_name -> google.protobuf.Timestamp + 89, // 106: mockgcp.cloud.sql.v1beta4.Operation.error:type_name -> mockgcp.cloud.sql.v1beta4.OperationErrors + 32, // 107: mockgcp.cloud.sql.v1beta4.Operation.api_warning:type_name -> mockgcp.cloud.sql.v1beta4.ApiWarning + 24, // 108: mockgcp.cloud.sql.v1beta4.Operation.operation_type:type_name -> mockgcp.cloud.sql.v1beta4.Operation.SqlOperationType + 58, // 109: mockgcp.cloud.sql.v1beta4.Operation.import_context:type_name -> mockgcp.cloud.sql.v1beta4.ImportContext + 54, // 110: mockgcp.cloud.sql.v1beta4.Operation.export_context:type_name -> mockgcp.cloud.sql.v1beta4.ExportContext + 38, // 111: mockgcp.cloud.sql.v1beta4.Operation.backup_context:type_name -> mockgcp.cloud.sql.v1beta4.BackupContext + 108, // 112: mockgcp.cloud.sql.v1beta4.Operation.acquire_ssrs_lease_context:type_name -> mockgcp.cloud.sql.v1beta4.AcquireSsrsLeaseContext + 88, // 113: mockgcp.cloud.sql.v1beta4.OperationErrors.errors:type_name -> mockgcp.cloud.sql.v1beta4.OperationError + 123, // 114: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.min_length:type_name -> google.protobuf.Int32Value + 26, // 115: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.complexity:type_name -> mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.Complexity + 123, // 116: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.reuse_interval:type_name -> google.protobuf.Int32Value + 124, // 117: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.disallow_username_substring:type_name -> google.protobuf.BoolValue + 126, // 118: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.password_change_interval:type_name -> google.protobuf.Duration + 124, // 119: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.enable_password_policy:type_name -> google.protobuf.BoolValue + 124, // 120: mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy.disallow_compromised_credentials:type_name -> google.protobuf.BoolValue + 87, // 121: mockgcp.cloud.sql.v1beta4.OperationsListResponse.items:type_name -> mockgcp.cloud.sql.v1beta4.Operation + 83, // 122: mockgcp.cloud.sql.v1beta4.ReplicaConfiguration.mysql_replica_configuration:type_name -> mockgcp.cloud.sql.v1beta4.MySqlReplicaConfiguration + 124, // 123: mockgcp.cloud.sql.v1beta4.ReplicaConfiguration.failover_target:type_name -> google.protobuf.BoolValue + 124, // 124: mockgcp.cloud.sql.v1beta4.ReplicaConfiguration.cascadable_replica:type_name -> google.protobuf.BoolValue + 125, // 125: mockgcp.cloud.sql.v1beta4.Settings.settings_version:type_name -> google.protobuf.Int64Value + 120, // 126: mockgcp.cloud.sql.v1beta4.Settings.user_labels:type_name -> mockgcp.cloud.sql.v1beta4.Settings.UserLabelsEntry + 13, // 127: mockgcp.cloud.sql.v1beta4.Settings.availability_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlAvailabilityType + 10, // 128: mockgcp.cloud.sql.v1beta4.Settings.pricing_plan:type_name -> mockgcp.cloud.sql.v1beta4.SqlPricingPlan + 11, // 129: mockgcp.cloud.sql.v1beta4.Settings.replication_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlReplicationType + 125, // 130: mockgcp.cloud.sql.v1beta4.Settings.storage_auto_resize_limit:type_name -> google.protobuf.Int64Value + 27, // 131: mockgcp.cloud.sql.v1beta4.Settings.activation_policy:type_name -> mockgcp.cloud.sql.v1beta4.Settings.SqlActivationPolicy + 76, // 132: mockgcp.cloud.sql.v1beta4.Settings.ip_configuration:type_name -> mockgcp.cloud.sql.v1beta4.IpConfiguration + 124, // 133: mockgcp.cloud.sql.v1beta4.Settings.storage_auto_resize:type_name -> google.protobuf.BoolValue + 79, // 134: mockgcp.cloud.sql.v1beta4.Settings.location_preference:type_name -> mockgcp.cloud.sql.v1beta4.LocationPreference + 42, // 135: mockgcp.cloud.sql.v1beta4.Settings.database_flags:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseFlags + 12, // 136: mockgcp.cloud.sql.v1beta4.Settings.data_disk_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlDataDiskType + 80, // 137: mockgcp.cloud.sql.v1beta4.Settings.maintenance_window:type_name -> mockgcp.cloud.sql.v1beta4.MaintenanceWindow + 34, // 138: mockgcp.cloud.sql.v1beta4.Settings.backup_configuration:type_name -> mockgcp.cloud.sql.v1beta4.BackupConfiguration + 124, // 139: mockgcp.cloud.sql.v1beta4.Settings.database_replication_enabled:type_name -> google.protobuf.BoolValue + 124, // 140: mockgcp.cloud.sql.v1beta4.Settings.crash_safe_replication_enabled:type_name -> google.protobuf.BoolValue + 125, // 141: mockgcp.cloud.sql.v1beta4.Settings.data_disk_size_gb:type_name -> google.protobuf.Int64Value + 106, // 142: mockgcp.cloud.sql.v1beta4.Settings.active_directory_config:type_name -> mockgcp.cloud.sql.v1beta4.SqlActiveDirectoryConfig + 81, // 143: mockgcp.cloud.sql.v1beta4.Settings.deny_maintenance_periods:type_name -> mockgcp.cloud.sql.v1beta4.DenyMaintenancePeriod + 82, // 144: mockgcp.cloud.sql.v1beta4.Settings.insights_config:type_name -> mockgcp.cloud.sql.v1beta4.InsightsConfig + 90, // 145: mockgcp.cloud.sql.v1beta4.Settings.password_validation_policy:type_name -> mockgcp.cloud.sql.v1beta4.PasswordValidationPolicy + 107, // 146: mockgcp.cloud.sql.v1beta4.Settings.sql_server_audit_config:type_name -> mockgcp.cloud.sql.v1beta4.SqlServerAuditConfig + 28, // 147: mockgcp.cloud.sql.v1beta4.Settings.edition:type_name -> mockgcp.cloud.sql.v1beta4.Settings.Edition + 29, // 148: mockgcp.cloud.sql.v1beta4.Settings.connector_enforcement:type_name -> mockgcp.cloud.sql.v1beta4.Settings.ConnectorEnforcement + 124, // 149: mockgcp.cloud.sql.v1beta4.Settings.deletion_protection_enabled:type_name -> google.protobuf.BoolValue + 97, // 150: mockgcp.cloud.sql.v1beta4.Settings.advanced_machine_features:type_name -> mockgcp.cloud.sql.v1beta4.AdvancedMachineFeatures + 95, // 151: mockgcp.cloud.sql.v1beta4.Settings.data_cache_config:type_name -> mockgcp.cloud.sql.v1beta4.DataCacheConfig + 124, // 152: mockgcp.cloud.sql.v1beta4.Settings.enable_google_ml_integration:type_name -> google.protobuf.BoolValue + 124, // 153: mockgcp.cloud.sql.v1beta4.Settings.enable_dataplex_integration:type_name -> google.protobuf.BoolValue + 122, // 154: mockgcp.cloud.sql.v1beta4.SslCert.create_time:type_name -> google.protobuf.Timestamp + 122, // 155: mockgcp.cloud.sql.v1beta4.SslCert.expiration_time:type_name -> google.protobuf.Timestamp + 98, // 156: mockgcp.cloud.sql.v1beta4.SslCertDetail.cert_info:type_name -> mockgcp.cloud.sql.v1beta4.SslCert + 121, // 157: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody.reschedule:type_name -> mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody.Reschedule + 87, // 158: mockgcp.cloud.sql.v1beta4.SslCertsInsertResponse.operation:type_name -> mockgcp.cloud.sql.v1beta4.Operation + 98, // 159: mockgcp.cloud.sql.v1beta4.SslCertsInsertResponse.server_ca_cert:type_name -> mockgcp.cloud.sql.v1beta4.SslCert + 99, // 160: mockgcp.cloud.sql.v1beta4.SslCertsInsertResponse.client_cert:type_name -> mockgcp.cloud.sql.v1beta4.SslCertDetail + 98, // 161: mockgcp.cloud.sql.v1beta4.SslCertsListResponse.items:type_name -> mockgcp.cloud.sql.v1beta4.SslCert + 126, // 162: mockgcp.cloud.sql.v1beta4.SqlServerAuditConfig.retention_interval:type_name -> google.protobuf.Duration + 126, // 163: mockgcp.cloud.sql.v1beta4.SqlServerAuditConfig.upload_interval:type_name -> google.protobuf.Duration + 126, // 164: mockgcp.cloud.sql.v1beta4.AcquireSsrsLeaseContext.duration:type_name -> google.protobuf.Duration + 124, // 165: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlFailoverReplica.available:type_name -> google.protobuf.BoolValue + 122, // 166: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlScheduledMaintenance.start_time:type_name -> google.protobuf.Timestamp + 122, // 167: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlScheduledMaintenance.schedule_deadline_time:type_name -> google.protobuf.Timestamp + 21, // 168: mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlOutOfDiskReport.sql_out_of_disk_state:type_name -> mockgcp.cloud.sql.v1beta4.DatabaseInstance.SqlOutOfDiskReport.SqlOutOfDiskState + 124, // 169: mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions.schema_only:type_name -> google.protobuf.BoolValue + 115, // 170: mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions.mysql_export_options:type_name -> mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions.MysqlExportOptions + 123, // 171: mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions.threads:type_name -> google.protobuf.Int32Value + 124, // 172: mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions.parallel:type_name -> google.protobuf.BoolValue + 124, // 173: mockgcp.cloud.sql.v1beta4.ExportContext.SqlBakExportOptions.striped:type_name -> google.protobuf.BoolValue + 123, // 174: mockgcp.cloud.sql.v1beta4.ExportContext.SqlBakExportOptions.stripe_count:type_name -> google.protobuf.Int32Value + 1, // 175: mockgcp.cloud.sql.v1beta4.ExportContext.SqlBakExportOptions.bak_type:type_name -> mockgcp.cloud.sql.v1beta4.BakType + 124, // 176: mockgcp.cloud.sql.v1beta4.ExportContext.SqlBakExportOptions.copy_only:type_name -> google.protobuf.BoolValue + 124, // 177: mockgcp.cloud.sql.v1beta4.ExportContext.SqlBakExportOptions.differential_base:type_name -> google.protobuf.BoolValue + 123, // 178: mockgcp.cloud.sql.v1beta4.ExportContext.SqlExportOptions.MysqlExportOptions.master_data:type_name -> google.protobuf.Int32Value + 123, // 179: mockgcp.cloud.sql.v1beta4.ImportContext.SqlImportOptions.threads:type_name -> google.protobuf.Int32Value + 124, // 180: mockgcp.cloud.sql.v1beta4.ImportContext.SqlImportOptions.parallel:type_name -> google.protobuf.BoolValue + 119, // 181: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.encryption_options:type_name -> mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.EncryptionOptions + 124, // 182: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.striped:type_name -> google.protobuf.BoolValue + 124, // 183: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.no_recovery:type_name -> google.protobuf.BoolValue + 124, // 184: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.recovery_only:type_name -> google.protobuf.BoolValue + 1, // 185: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.bak_type:type_name -> mockgcp.cloud.sql.v1beta4.BakType + 122, // 186: mockgcp.cloud.sql.v1beta4.ImportContext.SqlBakImportOptions.stop_at:type_name -> google.protobuf.Timestamp + 30, // 187: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody.Reschedule.reschedule_type:type_name -> mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody.RescheduleType + 122, // 188: mockgcp.cloud.sql.v1beta4.SqlInstancesRescheduleMaintenanceRequestBody.Reschedule.schedule_time:type_name -> google.protobuf.Timestamp + 189, // [189:189] is the sub-list for method output_type + 189, // [189:189] is the sub-list for method input_type + 189, // [189:189] is the sub-list for extension type_name + 189, // [189:189] is the sub-list for extension extendee + 0, // [0:189] is the sub-list for field type_name } func init() { file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() } @@ -11870,7 +12780,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DatabasesListResponse); i { + switch v := v.(*GeminiInstanceConfig); i { case 0: return &v.state case 1: @@ -11882,7 +12792,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DemoteMasterConfiguration); i { + switch v := v.(*ReplicationCluster); i { case 0: return &v.state case 1: @@ -11894,7 +12804,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DemoteMasterContext); i { + switch v := v.(*AvailableDatabaseVersion); i { case 0: return &v.state case 1: @@ -11906,7 +12816,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DemoteMasterMySqlReplicaConfiguration); i { + switch v := v.(*DatabasesListResponse); i { case 0: return &v.state case 1: @@ -11918,7 +12828,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DemoteContext); i { + switch v := v.(*DemoteMasterConfiguration); i { case 0: return &v.state case 1: @@ -11930,7 +12840,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ExportContext); i { + switch v := v.(*DemoteMasterContext); i { case 0: return &v.state case 1: @@ -11942,7 +12852,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FailoverContext); i { + switch v := v.(*DemoteMasterMySqlReplicaConfiguration); i { case 0: return &v.state case 1: @@ -11954,7 +12864,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Flag); i { + switch v := v.(*DemoteContext); i { case 0: return &v.state case 1: @@ -11966,7 +12876,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FlagsListResponse); i { + switch v := v.(*ExportContext); i { case 0: return &v.state case 1: @@ -11978,7 +12888,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ImportContext); i { + switch v := v.(*FailoverContext); i { case 0: return &v.state case 1: @@ -11990,7 +12900,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InstancesCloneRequest); i { + switch v := v.(*Flag); i { case 0: return &v.state case 1: @@ -12002,7 +12912,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InstancesDemoteMasterRequest); i { + switch v := v.(*FlagsListResponse); i { case 0: return &v.state case 1: @@ -12014,7 +12924,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InstancesDemoteRequest); i { + switch v := v.(*ImportContext); i { case 0: return &v.state case 1: @@ -12026,7 +12936,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InstancesExportRequest); i { + switch v := v.(*InstancesCloneRequest); i { case 0: return &v.state case 1: @@ -12038,7 +12948,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InstancesFailoverRequest); i { + switch v := v.(*InstancesDemoteMasterRequest); i { case 0: return &v.state case 1: @@ -12050,7 +12960,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InstancesImportRequest); i { + switch v := v.(*InstancesDemoteRequest); i { case 0: return &v.state case 1: @@ -12062,7 +12972,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MySqlSyncConfig); i { + switch v := v.(*InstancesExportRequest); i { case 0: return &v.state case 1: @@ -12074,7 +12984,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InstancesListResponse); i { + switch v := v.(*InstancesFailoverRequest); i { case 0: return &v.state case 1: @@ -12086,7 +12996,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InstancesListServerCasResponse); i { + switch v := v.(*InstancesImportRequest); i { case 0: return &v.state case 1: @@ -12098,7 +13008,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InstancesRestoreBackupRequest); i { + switch v := v.(*MySqlSyncConfig); i { case 0: return &v.state case 1: @@ -12110,7 +13020,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InstancesRotateServerCaRequest); i { + switch v := v.(*InstancesListResponse); i { case 0: return &v.state case 1: @@ -12122,7 +13032,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InstancesTruncateLogRequest); i { + switch v := v.(*InstancesListServerCasResponse); i { case 0: return &v.state case 1: @@ -12134,7 +13044,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PerformDiskShrinkContext); i { + switch v := v.(*InstancesRestoreBackupRequest); i { case 0: return &v.state case 1: @@ -12146,7 +13056,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SqlInstancesGetDiskShrinkConfigResponse); i { + switch v := v.(*InstancesRotateServerCaRequest); i { case 0: return &v.state case 1: @@ -12158,7 +13068,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SqlInstancesVerifyExternalSyncSettingsResponse); i { + switch v := v.(*InstancesTruncateLogRequest); i { case 0: return &v.state case 1: @@ -12170,7 +13080,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SqlExternalSyncSettingError); i { + switch v := v.(*InstancesAcquireSsrsLeaseRequest); i { case 0: return &v.state case 1: @@ -12182,7 +13092,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*IpConfiguration); i { + switch v := v.(*PerformDiskShrinkContext); i { case 0: return &v.state case 1: @@ -12194,7 +13104,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PscConfig); i { + switch v := v.(*SqlInstancesGetDiskShrinkConfigResponse); i { case 0: return &v.state case 1: @@ -12206,7 +13116,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*IpMapping); i { + switch v := v.(*SqlInstancesVerifyExternalSyncSettingsResponse); i { case 0: return &v.state case 1: @@ -12218,7 +13128,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*LocationPreference); i { + switch v := v.(*SqlExternalSyncSettingError); i { case 0: return &v.state case 1: @@ -12230,7 +13140,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MaintenanceWindow); i { + switch v := v.(*IpConfiguration); i { case 0: return &v.state case 1: @@ -12242,7 +13152,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DenyMaintenancePeriod); i { + switch v := v.(*PscConfig); i { case 0: return &v.state case 1: @@ -12254,7 +13164,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InsightsConfig); i { + switch v := v.(*IpMapping); i { case 0: return &v.state case 1: @@ -12266,7 +13176,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MySqlReplicaConfiguration); i { + switch v := v.(*LocationPreference); i { case 0: return &v.state case 1: @@ -12278,7 +13188,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OnPremisesConfiguration); i { + switch v := v.(*MaintenanceWindow); i { case 0: return &v.state case 1: @@ -12290,7 +13200,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DiskEncryptionConfiguration); i { + switch v := v.(*DenyMaintenancePeriod); i { case 0: return &v.state case 1: @@ -12302,7 +13212,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DiskEncryptionStatus); i { + switch v := v.(*InsightsConfig); i { case 0: return &v.state case 1: @@ -12314,7 +13224,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Operation); i { + switch v := v.(*MySqlReplicaConfiguration); i { case 0: return &v.state case 1: @@ -12326,7 +13236,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OperationError); i { + switch v := v.(*OnPremisesConfiguration); i { case 0: return &v.state case 1: @@ -12338,7 +13248,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OperationErrors); i { + switch v := v.(*DiskEncryptionConfiguration); i { case 0: return &v.state case 1: @@ -12350,7 +13260,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PasswordValidationPolicy); i { + switch v := v.(*DiskEncryptionStatus); i { case 0: return &v.state case 1: @@ -12362,7 +13272,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OperationsListResponse); i { + switch v := v.(*Operation); i { case 0: return &v.state case 1: @@ -12374,7 +13284,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReplicaConfiguration); i { + switch v := v.(*OperationError); i { case 0: return &v.state case 1: @@ -12386,7 +13296,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RestoreBackupContext); i { + switch v := v.(*OperationErrors); i { case 0: return &v.state case 1: @@ -12398,7 +13308,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RotateServerCaContext); i { + switch v := v.(*PasswordValidationPolicy); i { case 0: return &v.state case 1: @@ -12410,7 +13320,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DataCacheConfig); i { + switch v := v.(*OperationsListResponse); i { case 0: return &v.state case 1: @@ -12422,7 +13332,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Settings); i { + switch v := v.(*ReplicaConfiguration); i { case 0: return &v.state case 1: @@ -12434,7 +13344,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AdvancedMachineFeatures); i { + switch v := v.(*RestoreBackupContext); i { case 0: return &v.state case 1: @@ -12446,7 +13356,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SslCert); i { + switch v := v.(*RotateServerCaContext); i { case 0: return &v.state case 1: @@ -12458,7 +13368,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SslCertDetail); i { + switch v := v.(*DataCacheConfig); i { case 0: return &v.state case 1: @@ -12470,7 +13380,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SslCertsCreateEphemeralRequest); i { + switch v := v.(*Settings); i { case 0: return &v.state case 1: @@ -12482,7 +13392,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SslCertsInsertRequest); i { + switch v := v.(*AdvancedMachineFeatures); i { case 0: return &v.state case 1: @@ -12494,7 +13404,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SqlInstancesRescheduleMaintenanceRequestBody); i { + switch v := v.(*SslCert); i { case 0: return &v.state case 1: @@ -12506,7 +13416,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SslCertsInsertResponse); i { + switch v := v.(*SslCertDetail); i { case 0: return &v.state case 1: @@ -12518,7 +13428,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SslCertsListResponse); i { + switch v := v.(*SslCertsCreateEphemeralRequest); i { case 0: return &v.state case 1: @@ -12530,7 +13440,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TruncateLogContext); i { + switch v := v.(*SslCertsInsertRequest); i { case 0: return &v.state case 1: @@ -12542,7 +13452,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SqlActiveDirectoryConfig); i { + switch v := v.(*SqlInstancesRescheduleMaintenanceRequestBody); i { case 0: return &v.state case 1: @@ -12554,7 +13464,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SqlServerAuditConfig); i { + switch v := v.(*SslCertsInsertResponse); i { case 0: return &v.state case 1: @@ -12566,7 +13476,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DatabaseInstance_SqlFailoverReplica); i { + switch v := v.(*SslCertsListResponse); i { case 0: return &v.state case 1: @@ -12578,7 +13488,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DatabaseInstance_SqlScheduledMaintenance); i { + switch v := v.(*TruncateLogContext); i { case 0: return &v.state case 1: @@ -12590,7 +13500,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DatabaseInstance_SqlOutOfDiskReport); i { + switch v := v.(*SqlActiveDirectoryConfig); i { case 0: return &v.state case 1: @@ -12602,7 +13512,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ExportContext_SqlCsvExportOptions); i { + switch v := v.(*SqlServerAuditConfig); i { case 0: return &v.state case 1: @@ -12614,7 +13524,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ExportContext_SqlExportOptions); i { + switch v := v.(*AcquireSsrsLeaseContext); i { case 0: return &v.state case 1: @@ -12626,7 +13536,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ExportContext_SqlBakExportOptions); i { + switch v := v.(*DatabaseInstance_SqlFailoverReplica); i { case 0: return &v.state case 1: @@ -12638,7 +13548,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ExportContext_SqlExportOptions_MysqlExportOptions); i { + switch v := v.(*DatabaseInstance_SqlScheduledMaintenance); i { case 0: return &v.state case 1: @@ -12650,7 +13560,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ImportContext_SqlCsvImportOptions); i { + switch v := v.(*DatabaseInstance_SqlOutOfDiskReport); i { case 0: return &v.state case 1: @@ -12662,7 +13572,7 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ImportContext_SqlBakImportOptions); i { + switch v := v.(*ExportContext_SqlCsvExportOptions); i { case 0: return &v.state case 1: @@ -12674,7 +13584,19 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ImportContext_SqlBakImportOptions_EncryptionOptions); i { + switch v := v.(*ExportContext_SqlExportOptions); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ExportContext_SqlBakExportOptions); i { case 0: return &v.state case 1: @@ -12686,6 +13608,66 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ExportContext_SqlExportOptions_MysqlExportOptions); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ImportContext_SqlImportOptions); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ImportContext_SqlCsvImportOptions); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ImportContext_SqlBakImportOptions); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ImportContext_SqlBakImportOptions_EncryptionOptions); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SqlInstancesRescheduleMaintenanceRequestBody_Reschedule); i { case 0: return &v.state @@ -12698,22 +13680,27 @@ func file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_init() { } } } + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[3].OneofWrappers = []interface{}{} file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[8].OneofWrappers = []interface{}{} file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[9].OneofWrappers = []interface{}{ (*Database_SqlserverDatabaseDetails)(nil), } file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[14].OneofWrappers = []interface{}{} - file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[41].OneofWrappers = []interface{}{} - file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[42].OneofWrappers = []interface{}{} - file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[74].OneofWrappers = []interface{}{} - file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[75].OneofWrappers = []interface{}{} + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[15].OneofWrappers = []interface{}{} + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[16].OneofWrappers = []interface{}{} + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[17].OneofWrappers = []interface{}{} + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[45].OneofWrappers = []interface{}{} + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[46].OneofWrappers = []interface{}{} + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[77].OneofWrappers = []interface{}{} + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[79].OneofWrappers = []interface{}{} + file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_msgTypes[80].OneofWrappers = []interface{}{} type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_mockgcp_cloud_sql_v1beta4_cloud_sql_resources_proto_rawDesc, - NumEnums: 30, - NumMessages: 85, + NumEnums: 31, + NumMessages: 91, NumExtensions: 0, NumServices: 0, }, diff --git a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_tiers.pb.go b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_tiers.pb.go index f0a24119b2..4ed174978a 100644 --- a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_tiers.pb.go +++ b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_tiers.pb.go @@ -1,4 +1,4 @@ -// Copyright 2023 Google LLC +// Copyright 2024 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_users.pb.go b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_users.pb.go index 105a3019cf..684cf38900 100644 --- a/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_users.pb.go +++ b/mockgcp/generated/mockgcp/cloud/sql/v1beta4/cloud_sql_users.pb.go @@ -1,4 +1,4 @@ -// Copyright 2023 Google LLC +// Copyright 2024 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/mockgcp/mocksql/service.go b/mockgcp/mocksql/service.go index c8696873d4..c965b33f39 100644 --- a/mockgcp/mocksql/service.go +++ b/mockgcp/mocksql/service.go @@ -17,11 +17,12 @@ package mocksql import ( "context" "net/http" + "strings" "github.com/GoogleCloudPlatform/k8s-config-connector/mockgcp/common" + "github.com/GoogleCloudPlatform/k8s-config-connector/mockgcp/common/httpmux" "github.com/GoogleCloudPlatform/k8s-config-connector/mockgcp/common/projects" "github.com/GoogleCloudPlatform/k8s-config-connector/mockgcp/pkg/storage" - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" "google.golang.org/grpc" "sigs.k8s.io/controller-runtime/pkg/client" @@ -62,16 +63,27 @@ func (s *MockService) Register(grpcServer *grpc.Server) { } func (s *MockService) NewHTTPMux(ctx context.Context, conn *grpc.ClientConn) (http.Handler, error) { - mux := runtime.NewServeMux() - - if err := pb.RegisterSqlInstancesServiceHandler(ctx, mux, conn); err != nil { - return nil, err - } - if err := pb.RegisterSqlUsersServiceHandler(ctx, mux, conn); err != nil { + mux, err := httpmux.NewServeMux(ctx, conn, httpmux.Options{}, + pb.RegisterSqlInstancesServiceHandler, + pb.RegisterSqlUsersServiceHandler, + pb.RegisterSqlOperationsServiceHandler) + if err != nil { return nil, err } - if err := pb.RegisterSqlOperationsServiceHandler(ctx, mux, conn); err != nil { - return nil, err + + mux.RewriteError = func(ctx context.Context, error *httpmux.ErrorResponse) { + if error.Code == 404 { + for errIdx := range error.Errors { + if strings.HasPrefix(error.Errors[errIdx].Message, "databaseInstance") { + error.Errors[errIdx].Message = "The Cloud SQL instance does not exist." + error.Errors[errIdx].Reason = "instanceDoesNotExist" + } + } + if strings.HasPrefix(error.Message, "databaseInstance") { + error.Message = "The Cloud SQL instance does not exist." + error.Status = "" + } + } } return mux, nil diff --git a/mockgcp/mocksql/sqlinstance.go b/mockgcp/mocksql/sqlinstance.go index a7f3562a13..6b3ed1f715 100644 --- a/mockgcp/mocksql/sqlinstance.go +++ b/mockgcp/mocksql/sqlinstance.go @@ -61,7 +61,7 @@ func (s *sqlInstancesService) Insert(ctx context.Context, req *pb.SqlInstancesIn now := time.Now() region := "us-central1" - zone := "us-central1-c" + zone := "us-central1-a" obj := proto.Clone(req.GetBody()).(*pb.DatabaseInstance) obj.Name = name.InstanceName @@ -72,20 +72,11 @@ func (s *sqlInstancesService) Insert(ctx context.Context, req *pb.SqlInstancesIn name.Project.ID, name.InstanceName) obj.ConnectionName = obj.Project + ":" + obj.Region + ":" + obj.Name obj.CreateTime = timestamppb.New(now) - switch obj.DatabaseVersion { - case pb.SqlDatabaseVersion_MYSQL_5_7: - obj.DatabaseInstalledVersion = "MYSQL_5_7_44" - obj.MaintenanceVersion = "MYSQL_5_7_44.R20231105.01_03" - case pb.SqlDatabaseVersion_SQLSERVER_2017_EXPRESS: - obj.DatabaseInstalledVersion = "SQLSERVER_2017_EXPRESS_CU31_GDR" - obj.MaintenanceVersion = "SQLSERVER_2017_EXPRESS_CU31_GDR.R20231029.00_02" - case pb.SqlDatabaseVersion_POSTGRES_9_6: - obj.DatabaseInstalledVersion = "POSTGRES_9_6" - case pb.SqlDatabaseVersion_POSTGRES_15: - obj.DatabaseInstalledVersion = "POSTGRES_15" - default: - return nil, fmt.Errorf("database version %s not yet supported by mock", obj.DatabaseVersion) + + if err := setDatabaseVersionDefaults(obj); err != nil { + return nil, err } + obj.GceZone = zone obj.IpAddresses = []*pb.IpMapping{ { @@ -93,6 +84,12 @@ func (s *sqlInstancesService) Insert(ctx context.Context, req *pb.SqlInstancesIn Type: pb.SqlIpAddressType_PRIMARY, }, } + if isPostgres(obj) { + obj.IpAddresses = append(obj.IpAddresses, &pb.IpMapping{ + IpAddress: "10.10.10.11", + Type: pb.SqlIpAddressType_OUTGOING, + }) + } obj.Kind = "sql#instance" obj.BackendType = pb.SqlBackendType_SECOND_GEN @@ -179,6 +176,16 @@ func (s *sqlInstancesService) Insert(ctx context.Context, req *pb.SqlInstancesIn return nil, fmt.Errorf("creating initial user: %w", err) } } + } else if isPostgres(obj) { + if _, err := s.users.Insert(ctx, &pb.SqlUsersInsertRequest{ + Instance: name.InstanceName, + Project: name.Project.ID, + Body: &pb.User{ + Name: "postgres", + }, + }); err != nil { + return nil, fmt.Errorf("creating postgres user: %w", err) + } } } @@ -215,11 +222,264 @@ func setDefaultBool(pp **wrapperspb.BoolValue, defaultValue bool) { } } } + +func setDatabaseVersionDefaults(obj *pb.DatabaseInstance) error { + switch obj.DatabaseVersion { + case pb.SqlDatabaseVersion_MYSQL_5_7: + obj.DatabaseInstalledVersion = "MYSQL_5_7_44" + obj.MaintenanceVersion = "MYSQL_5_7_44.R20231105.01_03" + obj.UpgradableDatabaseVersions = []*pb.AvailableDatabaseVersion{ + { + DisplayName: asRef("MySQL 8.0"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0"), + }, + { + DisplayName: asRef("MySQL 8.0.18"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_18"), + }, + { + DisplayName: asRef("MySQL 8.0.26"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_26"), + }, + { + DisplayName: asRef("MySQL 8.0.27"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_27"), + }, + { + DisplayName: asRef("MySQL 8.0.28"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_28"), + }, + { + DisplayName: asRef("MySQL 8.0.29"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_29"), + }, + { + DisplayName: asRef("MySQL 8.0.30"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_30"), + }, + { + DisplayName: asRef("MySQL 8.0.31"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_31"), + }, + { + DisplayName: asRef("MySQL 8.0.32"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_32"), + }, + { + DisplayName: asRef("MySQL 8.0.33"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_33"), + }, + { + DisplayName: asRef("MySQL 8.0.34"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_34"), + }, + { + DisplayName: asRef("MySQL 8.0.35"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_35"), + }, + { + DisplayName: asRef("MySQL 8.0.36"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_36"), + }, + { + DisplayName: asRef("MySQL 8.0.37"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_37"), + }, + } + case pb.SqlDatabaseVersion_MYSQL_8_0: + obj.DatabaseInstalledVersion = "MYSQL_8_0_31" + obj.MaintenanceVersion = "MYSQL_8_0_31.R20240527.01_00" + obj.UpgradableDatabaseVersions = []*pb.AvailableDatabaseVersion{ + { + DisplayName: asRef("MySQL 8.0.18"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_18"), + }, + { + DisplayName: asRef("MySQL 8.0.26"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_26"), + }, + { + DisplayName: asRef("MySQL 8.0.27"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_27"), + }, + { + DisplayName: asRef("MySQL 8.0.28"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_28"), + }, + { + DisplayName: asRef("MySQL 8.0.29"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_29"), + }, + { + DisplayName: asRef("MySQL 8.0.30"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_30"), + }, + { + DisplayName: asRef("MySQL 8.0.32"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_32"), + }, + { + DisplayName: asRef("MySQL 8.0.33"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_33"), + }, + { + DisplayName: asRef("MySQL 8.0.34"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_34"), + }, + { + DisplayName: asRef("MySQL 8.0.35"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_35"), + }, + { + DisplayName: asRef("MySQL 8.0.36"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_36"), + }, + { + DisplayName: asRef("MySQL 8.0.37"), + MajorVersion: asRef("MYSQL_8_0"), + Name: asRef("MYSQL_8_0_37"), + }, + } + case pb.SqlDatabaseVersion_SQLSERVER_2017_EXPRESS: + obj.DatabaseInstalledVersion = "SQLSERVER_2017_EXPRESS_CU31_GDR" + obj.MaintenanceVersion = "SQLSERVER_2017_EXPRESS_CU31_GDR.R20231029.00_02" + case pb.SqlDatabaseVersion_SQLSERVER_2019_EXPRESS: + obj.DatabaseInstalledVersion = "SQLSERVER_2019_EXPRESS_CU26" + obj.MaintenanceVersion = "SQLSERVER_2019_EXPRESS_CU26.R20240501.00_05" + obj.UpgradableDatabaseVersions = []*pb.AvailableDatabaseVersion{ + { + MajorVersion: asRef("SQLSERVER_2019_STANDARD"), + Name: asRef("SQLSERVER_2019_STANDARD"), + DisplayName: asRef("SQL Server 2019 Standard"), + }, + { + MajorVersion: asRef("SQLSERVER_2019_ENTERPRISE"), + Name: asRef("SQLSERVER_2019_ENTERPRISE"), + DisplayName: asRef("SQL Server 2019 Enterprise"), + }, + { + MajorVersion: asRef("SQLSERVER_2019_WEB"), + Name: asRef("SQLSERVER_2019_WEB"), + DisplayName: asRef("SQL Server 2019 Web"), + }, + { + MajorVersion: asRef("SQLSERVER_2022_STANDARD"), + Name: asRef("SQLSERVER_2022_STANDARD"), + DisplayName: asRef("SQL Server 2022 Standard"), + }, + { + MajorVersion: asRef("SQLSERVER_2022_ENTERPRISE"), + Name: asRef("SQLSERVER_2022_ENTERPRISE"), + DisplayName: asRef("SQL Server 2022 Enterprise"), + }, + { + MajorVersion: asRef("SQLSERVER_2022_EXPRESS"), + Name: asRef("SQLSERVER_2022_EXPRESS"), + DisplayName: asRef("SQL Server 2022 Express"), + }, + { + MajorVersion: asRef("SQLSERVER_2022_WEB"), + Name: asRef("SQLSERVER_2022_WEB"), + DisplayName: asRef("SQL Server 2022 Web"), + }, + } + case pb.SqlDatabaseVersion_SQLSERVER_2022_EXPRESS: + obj.DatabaseInstalledVersion = "SQLSERVER_2022_EXPRESS_CU12_GDR" + obj.MaintenanceVersion = "SQLSERVER_2022_EXPRESS_CU12_GDR.R20240501.00_05" + obj.UpgradableDatabaseVersions = []*pb.AvailableDatabaseVersion{ + { + MajorVersion: asRef("SQLSERVER_2022_STANDARD"), + Name: asRef("SQLSERVER_2022_STANDARD"), + DisplayName: asRef("SQL Server 2022 Standard"), + }, + { + MajorVersion: asRef("SQLSERVER_2022_ENTERPRISE"), + Name: asRef("SQLSERVER_2022_ENTERPRISE"), + DisplayName: asRef("SQL Server 2022 Enterprise"), + }, + { + MajorVersion: asRef("SQLSERVER_2022_WEB"), + Name: asRef("SQLSERVER_2022_WEB"), + DisplayName: asRef("SQL Server 2022 Web"), + }, + } + case pb.SqlDatabaseVersion_POSTGRES_9_6: + obj.DatabaseInstalledVersion = "POSTGRES_9_6" + case pb.SqlDatabaseVersion_POSTGRES_15: + obj.DatabaseInstalledVersion = "POSTGRES_15_7" + obj.MaintenanceVersion = "POSTGRES_15_7.R20240514.00_08" + obj.UpgradableDatabaseVersions = []*pb.AvailableDatabaseVersion{ + { + MajorVersion: asRef("POSTGRES_16"), + Name: asRef("POSTGRES_16"), + DisplayName: asRef("PostgreSQL 16"), + }, + } + case pb.SqlDatabaseVersion_POSTGRES_16: + obj.DatabaseInstalledVersion = "POSTGRES_16_3" + obj.MaintenanceVersion = "POSTGRES_16_3.R20240527.01_10" + obj.UpgradableDatabaseVersions = nil + default: + return fmt.Errorf("database version %s not yet supported by mock", obj.DatabaseVersion) + } + return nil +} + func populateDefaults(obj *pb.DatabaseInstance, zone string) { + if obj.InstanceType == pb.SqlInstanceType_SQL_INSTANCE_TYPE_UNSPECIFIED { + obj.InstanceType = pb.SqlInstanceType_CLOUD_SQL_INSTANCE + } + + if obj.GeminiConfig == nil { + if isMysql(obj) { + obj.GeminiConfig = &pb.GeminiInstanceConfig{ + Entitled: asRef(false), + FlagRecommenderEnabled: asRef(false), + IndexAdvisorEnabled: asRef(false), + } + } else if isPostgres(obj) { + obj.GeminiConfig = &pb.GeminiInstanceConfig{ + Entitled: asRef(false), + GoogleVacuumMgmtEnabled: asRef(false), + OomSessionCancelEnabled: asRef(false), + ActiveQueryEnabled: asRef(false), + IndexAdvisorEnabled: asRef(false), + } + } + } + + // This field is input only. + obj.RootPassword = "" + settings := obj.Settings settings.Kind = "sql#settings" if settings.AuthorizedGaeApplications == nil { - settings.AuthorizedGaeApplications = make([]string, 0) + settings.AuthorizedGaeApplications = []string{} } setDefaultInt64(&settings.DataDiskSizeGb, 10) setDefaultBool(&settings.DeletionProtectionEnabled, false) @@ -243,7 +503,7 @@ func populateDefaults(obj *pb.DatabaseInstance, zone string) { } ipConfiguration := settings.IpConfiguration if ipConfiguration.AuthorizedNetworks == nil { - ipConfiguration.AuthorizedNetworks = make([]*pb.AclEntry, 0) + ipConfiguration.AuthorizedNetworks = []*pb.AclEntry{} } setDefaultBool(&ipConfiguration.Ipv4Enabled, true) setDefaultBool(&ipConfiguration.RequireSsl, false) @@ -263,14 +523,13 @@ func populateDefaults(obj *pb.DatabaseInstance, zone string) { if backupConfiguration == nil { backupConfiguration = &pb.BackupConfiguration{} settings.BackupConfiguration = backupConfiguration + } else { + if isPostgres(obj) { + setDefaultBool(&backupConfiguration.ReplicationLogArchivingEnabled, false) + } } backupConfiguration.Kind = "sql#backupConfiguration" - setDefaultBool(&backupConfiguration.Enabled, false) - setDefaultBool(&backupConfiguration.PointInTimeRecoveryEnabled, false) - setDefaultInt32(&backupConfiguration.TransactionLogRetentionDays, 7) - if backupConfiguration.StartTime == "" { - backupConfiguration.StartTime = "21:00" - } + backupRetentionSettings := backupConfiguration.BackupRetentionSettings if backupRetentionSettings == nil { backupRetentionSettings = &pb.BackupRetentionSettings{} @@ -281,12 +540,35 @@ func populateDefaults(obj *pb.DatabaseInstance, zone string) { backupRetentionSettings.RetentionUnit = pb.BackupRetentionSettings_COUNT } + if backupConfiguration.BinaryLogEnabled != nil && !backupConfiguration.BinaryLogEnabled.Value { + if !isMysql(obj) { + backupConfiguration.BinaryLogEnabled = nil + } + } + + if backupConfiguration.PointInTimeRecoveryEnabled != nil && isMysql(obj) { + backupConfiguration.PointInTimeRecoveryEnabled = nil + } + + setDefaultBool(&backupConfiguration.Enabled, false) + setDefaultInt32(&backupConfiguration.TransactionLogRetentionDays, 7) + if backupConfiguration.StartTime == "" { + backupConfiguration.StartTime = "12:00" + } + if backupConfiguration.TransactionalLogStorageState == nil { + backupConfiguration.TransactionalLogStorageState = asRef(pb.BackupConfiguration_TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED) + } + } func isMysql(obj *pb.DatabaseInstance) bool { return strings.HasPrefix(obj.GetDatabaseVersion().String(), "MYSQL_") } +func isPostgres(obj *pb.DatabaseInstance) bool { + return strings.HasPrefix(obj.GetDatabaseVersion().String(), "POSTGRES_") +} + func isSqlServer(obj *pb.DatabaseInstance) bool { return strings.HasPrefix(obj.GetDatabaseVersion().String(), "SQLSERVER_") } @@ -328,8 +610,11 @@ func (s *sqlInstancesService) Patch(ctx context.Context, req *pb.SqlInstancesPat } } if body := req.GetBody(); body != nil { - if body.DatabaseVersion != 0 { + if body.DatabaseVersion != pb.SqlDatabaseVersion_SQL_DATABASE_VERSION_UNSPECIFIED { obj.DatabaseVersion = body.DatabaseVersion + if err := setDatabaseVersionDefaults(obj); err != nil { + return nil, err + } } } @@ -388,6 +673,7 @@ func (s *sqlInstancesService) Update(ctx context.Context, req *pb.SqlInstancesUp obj.ServiceAccountEmailAddress = existing.ServiceAccountEmailAddress obj.SqlNetworkArchitecture = existing.SqlNetworkArchitecture obj.State = existing.State + obj.UpgradableDatabaseVersions = existing.UpgradableDatabaseVersions populateDefaults(obj, existing.GetSettings().GetLocationPreference().GetZone()) @@ -468,3 +754,7 @@ func (s *MockService) buildInstanceName(projectID, instanceName string) (*Instan InstanceName: instanceName, }, nil } + +func asRef[T any](v T) *T { + return &v +} diff --git a/mockgcp/mocksql/sqluser.go b/mockgcp/mocksql/sqluser.go index 142a12e9ca..b71efa4752 100644 --- a/mockgcp/mocksql/sqluser.go +++ b/mockgcp/mocksql/sqluser.go @@ -93,13 +93,6 @@ func (s *sqlUsersService) Insert(ctx context.Context, req *pb.SqlUsersInsertRequ obj.Instance = name.Instance obj.Kind = "sql#user" - if obj.PasswordPolicy == nil { - obj.PasswordPolicy = &pb.UserPasswordValidationPolicy{} - } - if obj.PasswordPolicy.Status == nil { - obj.PasswordPolicy.Status = &pb.PasswordStatus{} - } - obj.Etag = fields.ComputeWeakEtag(obj) if err := s.storage.Create(ctx, fqn, obj); err != nil { diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstance/_generated_object_mysqlinstance.golden.yaml b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstance/_generated_object_mysqlinstance.golden.yaml index 41438d7a17..7d3d6a3264 100644 --- a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstance/_generated_object_mysqlinstance.golden.yaml +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstance/_generated_object_mysqlinstance.golden.yaml @@ -29,7 +29,7 @@ spec: backupRetentionSettings: retainedBackups: 7 retentionUnit: COUNT - startTime: "21:00" + startTime: "12:00" transactionLogRetentionDays: 7 connectorEnforcement: NOT_REQUIRED diskAutoresize: false @@ -40,7 +40,7 @@ spec: ipConfiguration: ipv4Enabled: true locationPreference: - zone: us-central1-c + zone: us-central1-a pricingPlan: PER_USE tier: db-n1-standard-1 status: @@ -51,11 +51,11 @@ status: status: "True" type: Ready connectionName: ${projectId}:us-central1:sqlinstance-sample-${uniqueId} - firstIpAddress: 10.10.10.10 + firstIpAddress: 10.1.2.3 instanceType: CLOUD_SQL_INSTANCE ipAddress: 10.1.2.3 observedGeneration: 3 - publicIpAddress: 10.10.10.10 + publicIpAddress: 10.1.2.3 selfLink: https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId} serverCaCert: cert: | diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstance/_http.log b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstance/_http.log index 8c1f4eda3f..0ead2763e9 100644 --- a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstance/_http.log +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstance/_http.log @@ -2,12 +2,28 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 404 Not Found -Content-Type: application/json +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "code": 5, - "details": [], - "message": "databaseInstance \"projects/${projectId}/SQLInstances/sqlinstance-sample-${uniqueId}\" not found" + "error": { + "code": 404, + "errors": [ + { + "domain": "global", + "message": "The Cloud SQL instance does not exist.", + "reason": "instanceDoesNotExist" + } + ], + "message": "The Cloud SQL instance does not exist." + } } --- @@ -39,22 +55,22 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr } 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "CREATE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-sample-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", @@ -68,34 +84,28 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { "items": [ { "etag": "abcdef0123A=", - "host": "%", + "host": "", "instance": "sqlinstance-sample-${uniqueId}", "kind": "sql#user", "name": "root", - "password": "", - "passwordPolicy": { - "allowedFailedAttempts": 0, - "enableFailedAttemptsCheck": false, - "enablePasswordVerification": false, - "passwordExpirationDuration": null, - "status": { - "locked": false, - "passwordExpirationTime": null - } - }, - "project": "${projectId}", - "type": "BUILT_IN" + "project": "${projectId}" } ], - "kind": "sql#usersList", - "nextPageToken": "" + "kind": "sql#usersList" } --- @@ -104,22 +114,22 @@ DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instanc User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "DELETE_USER", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-sample-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", @@ -133,45 +143,41 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqlinstance-sample-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, "databaseInstalledVersion": "MYSQL_5_7_44", "databaseVersion": "MYSQL_5_7", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", + "gceZone": "us-central1-a", + "geminiConfig": { + "entitled": false, + "flagRecommenderEnabled": false, + "indexAdvisorEnabled": false + }, "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" } ], - "ipv6Address": "", "kind": "sql#instance", "maintenanceVersion": "MYSQL_5_7_44.R20231105.01_03", - "masterInstanceName": "", - "maxDiskSize": null, "name": "sqlinstance-sample-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -181,14 +187,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqlinstance-sample-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "ZONAL", "backupConfiguration": { @@ -196,53 +199,34 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 7, "retentionUnit": "COUNT" }, - "binaryLogEnabled": null, "enabled": false, "kind": "sql#backupConfiguration", - "location": "", - "pointInTimeRecoveryEnabled": false, - "replicationLogArchivingEnabled": null, - "startTime": "21:00", - "transactionLogRetentionDays": 7 + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "10", "dataDiskType": "PD_SSD", - "databaseFlags": [], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", - "insightsConfig": null, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], - "enablePrivatePathForGoogleCloudServices": null, "ipv4Enabled": true, - "privateNetwork": "", "requireSsl": false, "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, - "maintenanceWindow": null, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "1", - "sqlServerAuditConfig": null, + "settingsVersion": "123", "storageAutoResize": false, "storageAutoResizeLimit": "0", "tier": "db-n1-standard-1", - "timeZone": "", "userLabels": { "cnrm-test": "true", "label-one": "value-one", @@ -251,7 +235,78 @@ Grpc-Metadata-Content-Type: application/grpc }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", "state": "RUNNABLE", - "suspensionReason": [] + "upgradableDatabaseVersions": [ + { + "displayName": "MySQL 8.0", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0" + }, + { + "displayName": "MySQL 8.0.18", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_18" + }, + { + "displayName": "MySQL 8.0.26", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_26" + }, + { + "displayName": "MySQL 8.0.27", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_27" + }, + { + "displayName": "MySQL 8.0.28", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_28" + }, + { + "displayName": "MySQL 8.0.29", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_29" + }, + { + "displayName": "MySQL 8.0.30", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_30" + }, + { + "displayName": "MySQL 8.0.31", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_31" + }, + { + "displayName": "MySQL 8.0.32", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_32" + }, + { + "displayName": "MySQL 8.0.33", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_33" + }, + { + "displayName": "MySQL 8.0.34", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_34" + }, + { + "displayName": "MySQL 8.0.35", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_35" + }, + { + "displayName": "MySQL 8.0.36", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_36" + }, + { + "displayName": "MySQL 8.0.37", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_37" + } + ] } --- @@ -273,7 +328,7 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr "binaryLogEnabled": false, "enabled": false, "pointInTimeRecoveryEnabled": false, - "startTime": "21:00", + "startTime": "12:00", "transactionLogRetentionDays": 7 }, "connectorEnforcement": "NOT_REQUIRED", @@ -286,10 +341,10 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr "requireSsl": false }, "locationPreference": { - "zone": "us-central1-c" + "zone": "us-central1-a" }, "pricingPlan": "PER_USE", - "settingsVersion": "1", + "settingsVersion": "123", "storageAutoResize": false, "tier": "db-n1-standard-1", "userLabels": { @@ -301,22 +356,22 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr } 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "UPDATE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-sample-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", @@ -330,45 +385,41 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqlinstance-sample-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, "databaseInstalledVersion": "MYSQL_5_7_44", "databaseVersion": "MYSQL_5_7", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", + "gceZone": "us-central1-a", + "geminiConfig": { + "entitled": false, + "flagRecommenderEnabled": false, + "indexAdvisorEnabled": false + }, "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" } ], - "ipv6Address": "", "kind": "sql#instance", "maintenanceVersion": "MYSQL_5_7_44.R20231105.01_03", - "masterInstanceName": "", - "maxDiskSize": null, "name": "sqlinstance-sample-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -378,14 +429,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqlinstance-sample-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "ZONAL", "backupConfiguration": { @@ -396,50 +444,33 @@ Grpc-Metadata-Content-Type: application/grpc "binaryLogEnabled": false, "enabled": false, "kind": "sql#backupConfiguration", - "location": "", - "pointInTimeRecoveryEnabled": false, - "replicationLogArchivingEnabled": null, - "startTime": "21:00", - "transactionLogRetentionDays": 7 + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "20", "dataDiskType": "PD_SSD", - "databaseFlags": [], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", - "insightsConfig": null, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], "enablePrivatePathForGoogleCloudServices": false, "ipv4Enabled": true, - "privateNetwork": "", "requireSsl": false, "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, - "maintenanceWindow": null, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "2", - "sqlServerAuditConfig": null, + "settingsVersion": "123", "storageAutoResize": false, "storageAutoResizeLimit": "0", "tier": "db-n1-standard-1", - "timeZone": "", "userLabels": { "cnrm-test": "true", "label-one": "value-one", @@ -448,7 +479,78 @@ Grpc-Metadata-Content-Type: application/grpc }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", "state": "RUNNABLE", - "suspensionReason": [] + "upgradableDatabaseVersions": [ + { + "displayName": "MySQL 8.0", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0" + }, + { + "displayName": "MySQL 8.0.18", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_18" + }, + { + "displayName": "MySQL 8.0.26", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_26" + }, + { + "displayName": "MySQL 8.0.27", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_27" + }, + { + "displayName": "MySQL 8.0.28", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_28" + }, + { + "displayName": "MySQL 8.0.29", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_29" + }, + { + "displayName": "MySQL 8.0.30", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_30" + }, + { + "displayName": "MySQL 8.0.31", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_31" + }, + { + "displayName": "MySQL 8.0.32", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_32" + }, + { + "displayName": "MySQL 8.0.33", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_33" + }, + { + "displayName": "MySQL 8.0.34", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_34" + }, + { + "displayName": "MySQL 8.0.35", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_35" + }, + { + "displayName": "MySQL 8.0.36", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_36" + }, + { + "displayName": "MySQL 8.0.37", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_37" + } + ] } --- @@ -457,22 +559,22 @@ DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instanc User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "DELETE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-sample-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstancebasic/_generated_object_mysqlinstancebasic.golden.yaml b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstancebasic/_generated_object_mysqlinstancebasic.golden.yaml new file mode 100644 index 0000000000..ce7b5cc438 --- /dev/null +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstancebasic/_generated_object_mysqlinstancebasic.golden.yaml @@ -0,0 +1,48 @@ +apiVersion: sql.cnrm.cloud.google.com/v1beta1 +kind: SQLInstance +metadata: + annotations: + cnrm.cloud.google.com/management-conflict-prevention-policy: none + cnrm.cloud.google.com/mutable-but-unreadable-fields: '{}' + cnrm.cloud.google.com/observed-secret-versions: (removed) + cnrm.cloud.google.com/project-id: ${projectId} + cnrm.cloud.google.com/state-into-spec: absent + finalizers: + - cnrm.cloud.google.com/finalizer + - cnrm.cloud.google.com/deletion-defender + generation: 3 + labels: + cnrm-test: "true" + name: mysqlbasic-${uniqueId} + namespace: ${uniqueId} +spec: + databaseVersion: MYSQL_8_0 + region: us-central1 + resourceID: mysqlbasic-${uniqueId} + settings: + locationPreference: + zone: us-central1-a + tier: db-custom-2-7680 +status: + conditions: + - lastTransitionTime: "1970-01-01T00:00:00Z" + message: The resource is up to date + reason: UpToDate + status: "True" + type: Ready + connectionName: ${projectId}:us-central1:mysqlbasic-${uniqueId} + firstIpAddress: 10.1.2.3 + instanceType: CLOUD_SQL_INSTANCE + ipAddress: 10.1.2.3 + observedGeneration: 3 + publicIpAddress: 10.1.2.3 + selfLink: https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId} + serverCaCert: + cert: | + -----BEGIN CERTIFICATE----- + -----END CERTIFICATE----- + commonName: common-name + createTime: "1970-01-01T00:00:00Z" + expirationTime: "1970-01-01T00:00:00Z" + sha1Fingerprint: "12345678" + serviceAccountEmailAddress: p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstancebasic/_http.log b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstancebasic/_http.log new file mode 100644 index 0000000000..e29992875b --- /dev/null +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstancebasic/_http.log @@ -0,0 +1,765 @@ +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +404 Not Found +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "error": { + "code": 404, + "errors": [ + { + "domain": "global", + "message": "The Cloud SQL instance does not exist.", + "reason": "instanceDoesNotExist" + } + ], + "message": "The Cloud SQL instance does not exist." + } +} + +--- + +POST https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances?alt=json&prettyPrint=false +Content-Type: application/json +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +{ + "databaseVersion": "MYSQL_5_7", + "name": "mysqlbasic-${uniqueId}", + "region": "us-central1", + "settings": { + "activationPolicy": "ALWAYS", + "availabilityType": "ZONAL", + "dataDiskType": "PD_SSD", + "edition": "ENTERPRISE", + "locationPreference": { + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "storageAutoResize": true, + "tier": "db-custom-1-3840", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + } +} + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "insertTime": "2024-04-01T12:34:56.123456Z", + "kind": "sql#operation", + "name": "${operationID}", + "operationType": "CREATE", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", + "status": "PENDING", + "targetId": "mysqlbasic-${uniqueId}", + "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}", + "targetProject": "${projectId}", + "user": "user@example.com" +} + +--- + +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}/users?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "items": [ + { + "etag": "abcdef0123A=", + "host": "", + "instance": "mysqlbasic-${uniqueId}", + "kind": "sql#user", + "name": "root", + "project": "${projectId}" + } + ], + "kind": "sql#usersList" +} + +--- + +DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}/users?alt=json&host=%25&name=root&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "insertTime": "2024-04-01T12:34:56.123456Z", + "kind": "sql#operation", + "name": "${operationID}", + "operationType": "DELETE_USER", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", + "status": "PENDING", + "targetId": "mysqlbasic-${uniqueId}", + "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}", + "targetProject": "${projectId}", + "user": "user@example.com" +} + +--- + +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "backendType": "SECOND_GEN", + "connectionName": "${projectId}:us-central1:mysqlbasic-${uniqueId}", + "createTime": "2024-04-01T12:34:56.123456Z", + "databaseInstalledVersion": "MYSQL_5_7_44", + "databaseVersion": "MYSQL_5_7", + "etag": "abcdef0123A=", + "gceZone": "us-central1-a", + "geminiConfig": { + "entitled": false, + "flagRecommenderEnabled": false, + "indexAdvisorEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", + "ipAddresses": [ + { + "ipAddress": "10.1.2.3", + "type": "PRIMARY" + } + ], + "kind": "sql#instance", + "maintenanceVersion": "MYSQL_5_7_44.R20231105.01_03", + "name": "mysqlbasic-${uniqueId}", + "project": "${projectId}", + "region": "us-central1", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}", + "serverCaCert": { + "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", + "certSerialNumber": "0", + "commonName": "common-name", + "createTime": "2024-04-01T12:34:56.123456Z", + "expirationTime": "2024-04-01T12:34:56.123456Z", + "instance": "mysqlbasic-${uniqueId}", + "kind": "sql#sslCert", + "sha1Fingerprint": "12345678" + }, + "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", + "settings": { + "activationPolicy": "ALWAYS", + "authorizedGaeApplications": [], + "availabilityType": "ZONAL", + "backupConfiguration": { + "backupRetentionSettings": { + "retainedBackups": 7, + "retentionUnit": "COUNT" + }, + "enabled": false, + "kind": "sql#backupConfiguration", + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" + }, + "connectorEnforcement": "NOT_REQUIRED", + "dataDiskSizeGb": "10", + "dataDiskType": "PD_SSD", + "deletionProtectionEnabled": false, + "edition": "ENTERPRISE", + "ipConfiguration": { + "authorizedNetworks": [], + "ipv4Enabled": true, + "requireSsl": false, + "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" + }, + "kind": "sql#settings", + "locationPreference": { + "kind": "sql#locationPreference", + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "replicationType": "SYNCHRONOUS", + "settingsVersion": "123", + "storageAutoResize": true, + "storageAutoResizeLimit": "0", + "tier": "db-custom-1-3840", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + }, + "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", + "state": "RUNNABLE", + "upgradableDatabaseVersions": [ + { + "displayName": "MySQL 8.0", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0" + }, + { + "displayName": "MySQL 8.0.18", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_18" + }, + { + "displayName": "MySQL 8.0.26", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_26" + }, + { + "displayName": "MySQL 8.0.27", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_27" + }, + { + "displayName": "MySQL 8.0.28", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_28" + }, + { + "displayName": "MySQL 8.0.29", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_29" + }, + { + "displayName": "MySQL 8.0.30", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_30" + }, + { + "displayName": "MySQL 8.0.31", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_31" + }, + { + "displayName": "MySQL 8.0.32", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_32" + }, + { + "displayName": "MySQL 8.0.33", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_33" + }, + { + "displayName": "MySQL 8.0.34", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_34" + }, + { + "displayName": "MySQL 8.0.35", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_35" + }, + { + "displayName": "MySQL 8.0.36", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_36" + }, + { + "displayName": "MySQL 8.0.37", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_37" + } + ] +} + +--- + +PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}?alt=json&prettyPrint=false +Content-Type: application/json +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +{ + "databaseVersion": "MYSQL_8_0" +} + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "insertTime": "2024-04-01T12:34:56.123456Z", + "kind": "sql#operation", + "name": "${operationID}", + "operationType": "UPDATE", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", + "status": "PENDING", + "targetId": "mysqlbasic-${uniqueId}", + "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}", + "targetProject": "${projectId}", + "user": "user@example.com" +} + +--- + +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "backendType": "SECOND_GEN", + "connectionName": "${projectId}:us-central1:mysqlbasic-${uniqueId}", + "createTime": "2024-04-01T12:34:56.123456Z", + "databaseInstalledVersion": "MYSQL_8_0_31", + "databaseVersion": "MYSQL_8_0", + "etag": "abcdef0123A=", + "gceZone": "us-central1-a", + "geminiConfig": { + "entitled": false, + "flagRecommenderEnabled": false, + "indexAdvisorEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", + "ipAddresses": [ + { + "ipAddress": "10.1.2.3", + "type": "PRIMARY" + } + ], + "kind": "sql#instance", + "maintenanceVersion": "MYSQL_8_0_31.R20240527.01_00", + "name": "mysqlbasic-${uniqueId}", + "project": "${projectId}", + "region": "us-central1", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}", + "serverCaCert": { + "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", + "certSerialNumber": "0", + "commonName": "common-name", + "createTime": "2024-04-01T12:34:56.123456Z", + "expirationTime": "2024-04-01T12:34:56.123456Z", + "instance": "mysqlbasic-${uniqueId}", + "kind": "sql#sslCert", + "sha1Fingerprint": "12345678" + }, + "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", + "settings": { + "activationPolicy": "ALWAYS", + "authorizedGaeApplications": [], + "availabilityType": "ZONAL", + "backupConfiguration": { + "backupRetentionSettings": { + "retainedBackups": 7, + "retentionUnit": "COUNT" + }, + "enabled": false, + "kind": "sql#backupConfiguration", + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" + }, + "connectorEnforcement": "NOT_REQUIRED", + "dataDiskSizeGb": "10", + "dataDiskType": "PD_SSD", + "deletionProtectionEnabled": false, + "edition": "ENTERPRISE", + "ipConfiguration": { + "authorizedNetworks": [], + "ipv4Enabled": true, + "requireSsl": false, + "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" + }, + "kind": "sql#settings", + "locationPreference": { + "kind": "sql#locationPreference", + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "replicationType": "SYNCHRONOUS", + "settingsVersion": "123", + "storageAutoResize": true, + "storageAutoResizeLimit": "0", + "tier": "db-custom-1-3840", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + }, + "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", + "state": "RUNNABLE", + "upgradableDatabaseVersions": [ + { + "displayName": "MySQL 8.0.18", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_18" + }, + { + "displayName": "MySQL 8.0.26", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_26" + }, + { + "displayName": "MySQL 8.0.27", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_27" + }, + { + "displayName": "MySQL 8.0.28", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_28" + }, + { + "displayName": "MySQL 8.0.29", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_29" + }, + { + "displayName": "MySQL 8.0.30", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_30" + }, + { + "displayName": "MySQL 8.0.32", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_32" + }, + { + "displayName": "MySQL 8.0.33", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_33" + }, + { + "displayName": "MySQL 8.0.34", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_34" + }, + { + "displayName": "MySQL 8.0.35", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_35" + }, + { + "displayName": "MySQL 8.0.36", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_36" + }, + { + "displayName": "MySQL 8.0.37", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_37" + } + ] +} + +--- + +PUT https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}?alt=json&prettyPrint=false +Content-Type: application/json +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +{ + "instanceType": "CLOUD_SQL_INSTANCE", + "settings": { + "activationPolicy": "ALWAYS", + "availabilityType": "ZONAL", + "backupConfiguration": { + "backupRetentionSettings": { + "retainedBackups": 7, + "retentionUnit": "COUNT" + }, + "binaryLogEnabled": false, + "enabled": false, + "pointInTimeRecoveryEnabled": false, + "startTime": "12:00", + "transactionLogRetentionDays": 7 + }, + "connectorEnforcement": "NOT_REQUIRED", + "dataDiskSizeGb": "10", + "dataDiskType": "PD_SSD", + "edition": "ENTERPRISE", + "ipConfiguration": { + "enablePrivatePathForGoogleCloudServices": false, + "ipv4Enabled": true, + "requireSsl": false + }, + "locationPreference": { + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "settingsVersion": "123", + "storageAutoResize": true, + "tier": "db-custom-2-7680", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + } +} + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "insertTime": "2024-04-01T12:34:56.123456Z", + "kind": "sql#operation", + "name": "${operationID}", + "operationType": "UPDATE", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", + "status": "PENDING", + "targetId": "mysqlbasic-${uniqueId}", + "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}", + "targetProject": "${projectId}", + "user": "user@example.com" +} + +--- + +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "backendType": "SECOND_GEN", + "connectionName": "${projectId}:us-central1:mysqlbasic-${uniqueId}", + "createTime": "2024-04-01T12:34:56.123456Z", + "databaseInstalledVersion": "MYSQL_8_0_31", + "databaseVersion": "MYSQL_8_0", + "etag": "abcdef0123A=", + "gceZone": "us-central1-a", + "geminiConfig": { + "entitled": false, + "flagRecommenderEnabled": false, + "indexAdvisorEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", + "ipAddresses": [ + { + "ipAddress": "10.1.2.3", + "type": "PRIMARY" + } + ], + "kind": "sql#instance", + "maintenanceVersion": "MYSQL_8_0_31.R20240527.01_00", + "name": "mysqlbasic-${uniqueId}", + "project": "${projectId}", + "region": "us-central1", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}", + "serverCaCert": { + "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", + "certSerialNumber": "0", + "commonName": "common-name", + "createTime": "2024-04-01T12:34:56.123456Z", + "expirationTime": "2024-04-01T12:34:56.123456Z", + "instance": "mysqlbasic-${uniqueId}", + "kind": "sql#sslCert", + "sha1Fingerprint": "12345678" + }, + "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", + "settings": { + "activationPolicy": "ALWAYS", + "authorizedGaeApplications": [], + "availabilityType": "ZONAL", + "backupConfiguration": { + "backupRetentionSettings": { + "retainedBackups": 7, + "retentionUnit": "COUNT" + }, + "binaryLogEnabled": false, + "enabled": false, + "kind": "sql#backupConfiguration", + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" + }, + "connectorEnforcement": "NOT_REQUIRED", + "dataDiskSizeGb": "10", + "dataDiskType": "PD_SSD", + "deletionProtectionEnabled": false, + "edition": "ENTERPRISE", + "ipConfiguration": { + "authorizedNetworks": [], + "enablePrivatePathForGoogleCloudServices": false, + "ipv4Enabled": true, + "requireSsl": false, + "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" + }, + "kind": "sql#settings", + "locationPreference": { + "kind": "sql#locationPreference", + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "replicationType": "SYNCHRONOUS", + "settingsVersion": "123", + "storageAutoResize": true, + "storageAutoResizeLimit": "0", + "tier": "db-custom-2-7680", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + }, + "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", + "state": "RUNNABLE", + "upgradableDatabaseVersions": [ + { + "displayName": "MySQL 8.0.18", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_18" + }, + { + "displayName": "MySQL 8.0.26", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_26" + }, + { + "displayName": "MySQL 8.0.27", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_27" + }, + { + "displayName": "MySQL 8.0.28", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_28" + }, + { + "displayName": "MySQL 8.0.29", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_29" + }, + { + "displayName": "MySQL 8.0.30", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_30" + }, + { + "displayName": "MySQL 8.0.32", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_32" + }, + { + "displayName": "MySQL 8.0.33", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_33" + }, + { + "displayName": "MySQL 8.0.34", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_34" + }, + { + "displayName": "MySQL 8.0.35", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_35" + }, + { + "displayName": "MySQL 8.0.36", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_36" + }, + { + "displayName": "MySQL 8.0.37", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_37" + } + ] +} + +--- + +DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "insertTime": "2024-04-01T12:34:56.123456Z", + "kind": "sql#operation", + "name": "${operationID}", + "operationType": "DELETE", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", + "status": "PENDING", + "targetId": "mysqlbasic-${uniqueId}", + "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/mysqlbasic-${uniqueId}", + "targetProject": "${projectId}", + "user": "user@example.com" +} \ No newline at end of file diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstancebasic/create.yaml b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstancebasic/create.yaml new file mode 100644 index 0000000000..36dd2c0384 --- /dev/null +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstancebasic/create.yaml @@ -0,0 +1,31 @@ +# Copyright 2024 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: sql.cnrm.cloud.google.com/v1beta1 +kind: SQLInstance +metadata: + name: mysqlbasic-${uniqueId} + annotations: + cnrm.cloud.google.com/state-into-spec: absent +spec: + databaseVersion: MYSQL_5_7 + region: us-central1 + settings: + # Location preference is not actually a required field. However, setting it for tests + # helps with with normalizing the GCP responses, because otherwise GCP chooses a zone + # preference based on availability. Therefore it could potentially vary if not + # explicity specified. + locationPreference: + zone: us-central1-a + tier: db-custom-1-3840 diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstancebasic/update.yaml b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstancebasic/update.yaml new file mode 100644 index 0000000000..f74581cb80 --- /dev/null +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/mysqlinstancebasic/update.yaml @@ -0,0 +1,31 @@ +# Copyright 2024 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: sql.cnrm.cloud.google.com/v1beta1 +kind: SQLInstance +metadata: + name: mysqlbasic-${uniqueId} + annotations: + cnrm.cloud.google.com/state-into-spec: absent +spec: + databaseVersion: MYSQL_8_0 + region: us-central1 + settings: + # Location preference is not actually a required field. However, setting it for tests + # helps with with normalizing the GCP responses, because otherwise GCP chooses a zone + # preference based on availability. Therefore it could potentially vary if not + # explicity specified. + locationPreference: + zone: us-central1-a + tier: db-custom-2-7680 diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstance/_generated_object_postgresinstance.golden.yaml b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstance/_generated_object_postgresinstance.golden.yaml index 769aa3ebec..a8e72557ab 100644 --- a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstance/_generated_object_postgresinstance.golden.yaml +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstance/_generated_object_postgresinstance.golden.yaml @@ -17,7 +17,7 @@ metadata: namespace: ${uniqueId} spec: databaseVersion: POSTGRES_9_6 - instanceType: SQL_INSTANCE_TYPE_UNSPECIFIED + instanceType: CLOUD_SQL_INSTANCE region: us-central1 resourceID: sqlinstance-${uniqueId} settings: @@ -57,7 +57,7 @@ spec: requireSsl: false sslMode: ENCRYPTED_ONLY locationPreference: - zone: us-central1-c + zone: us-central1-a pricingPlan: PER_USE tier: db-custom-1-3840 status: @@ -68,11 +68,11 @@ status: status: "True" type: Ready connectionName: ${projectId}:us-central1:sqlinstance-${uniqueId} - firstIpAddress: 10.10.10.10 - instanceType: SQL_INSTANCE_TYPE_UNSPECIFIED + firstIpAddress: 10.1.2.3 + instanceType: CLOUD_SQL_INSTANCE ipAddress: 10.1.2.3 observedGeneration: 3 - publicIpAddress: 10.10.10.10 + publicIpAddress: 10.1.2.3 selfLink: https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-${uniqueId} serverCaCert: cert: | diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstance/_http.log b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstance/_http.log index 22ba3284eb..d858ff08af 100644 --- a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstance/_http.log +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstance/_http.log @@ -448,12 +448,28 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 404 Not Found -Content-Type: application/json +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "code": 5, - "details": [], - "message": "databaseInstance \"projects/${projectId}/SQLInstances/sqlinstance-${uniqueId}\" not found" + "error": { + "code": 404, + "errors": [ + { + "domain": "global", + "message": "The Cloud SQL instance does not exist.", + "reason": "instanceDoesNotExist" + } + ], + "message": "The Cloud SQL instance does not exist." + } } --- @@ -529,7 +545,7 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr "binaryLogEnabled": false, "enabled": true, "pointInTimeRecoveryEnabled": true, - "startTime": "06:00", + "startTime": "12:00", "transactionLogRetentionDays": 3 }, "dataDiskSizeGb": "100", @@ -573,22 +589,22 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr } 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "CREATE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-${uniqueId}", @@ -602,13 +618,28 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "items": [], - "kind": "sql#usersList", - "nextPageToken": "" + "items": [ + { + "etag": "abcdef0123A=", + "host": "", + "instance": "sqlinstance-${uniqueId}", + "kind": "sql#user", + "name": "postgres", + "project": "${projectId}" + } + ], + "kind": "sql#usersList" } --- @@ -617,45 +648,46 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqlinstance-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, "databaseInstalledVersion": "POSTGRES_9_6", "databaseVersion": "POSTGRES_9_6", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "gceZone": "us-central1-a", + "geminiConfig": { + "activeQueryEnabled": false, + "entitled": false, + "googleVacuumMgmtEnabled": false, + "indexAdvisorEnabled": false, + "oomSessionCancelEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" + }, + { + "ipAddress": "10.1.2.3", + "type": "OUTGOING" } ], - "ipv6Address": "", "kind": "sql#instance", - "maintenanceVersion": "", - "masterInstanceName": "", - "maxDiskSize": null, "name": "sqlinstance-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -665,14 +697,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqlinstance-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "REGIONAL", "backupConfiguration": { @@ -680,19 +709,15 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 7, "retentionUnit": "COUNT" }, - "binaryLogEnabled": false, "enabled": true, "kind": "sql#backupConfiguration", - "location": "", "pointInTimeRecoveryEnabled": true, - "replicationLogArchivingEnabled": null, - "startTime": "06:00", - "transactionLogRetentionDays": 3 + "replicationLogArchivingEnabled": false, + "startTime": "12:00", + "transactionLogRetentionDays": 3, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "100", "dataDiskType": "PD_SSD", "databaseFlags": [ @@ -709,19 +734,15 @@ Grpc-Metadata-Content-Type: application/grpc "value": "8" } ], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", "insightsConfig": { "queryInsightsEnabled": true, - "queryPlansPerMinute": null, "queryStringLength": 1024, "recordApplicationTags": true, "recordClientAddress": true }, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], "enablePrivatePathForGoogleCloudServices": false, "ipv4Enabled": false, @@ -731,29 +752,22 @@ Grpc-Metadata-Content-Type: application/grpc }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, - "maintenanceWindow": null, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "1", - "sqlServerAuditConfig": null, + "settingsVersion": "123", "storageAutoResize": false, "storageAutoResizeLimit": "0", "tier": "db-custom-1-3840", - "timeZone": "", "userLabels": { "cnrm-test": "true", "managed-by-cnrm": "true" } }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", - "state": "RUNNABLE", - "suspensionReason": [] + "state": "RUNNABLE" } --- @@ -763,7 +777,7 @@ Content-Type: application/json User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager { - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "instanceType": "CLOUD_SQL_INSTANCE", "settings": { "activationPolicy": "ALWAYS", "availabilityType": "REGIONAL", @@ -775,7 +789,7 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr "binaryLogEnabled": false, "enabled": true, "pointInTimeRecoveryEnabled": true, - "startTime": "05:00", + "startTime": "12:00", "transactionLogRetentionDays": 3 }, "connectorEnforcement": "NOT_REQUIRED", @@ -810,10 +824,10 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr "sslMode": "ENCRYPTED_ONLY" }, "locationPreference": { - "zone": "us-central1-c" + "zone": "us-central1-a" }, "pricingPlan": "PER_USE", - "settingsVersion": "1", + "settingsVersion": "123", "storageAutoResize": false, "tier": "db-custom-1-3840", "userLabels": { @@ -824,22 +838,22 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr } 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "UPDATE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-${uniqueId}", @@ -853,45 +867,46 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqlinstance-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, "databaseInstalledVersion": "POSTGRES_9_6", "databaseVersion": "POSTGRES_9_6", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "gceZone": "us-central1-a", + "geminiConfig": { + "activeQueryEnabled": false, + "entitled": false, + "googleVacuumMgmtEnabled": false, + "indexAdvisorEnabled": false, + "oomSessionCancelEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" + }, + { + "ipAddress": "10.1.2.3", + "type": "OUTGOING" } ], - "ipv6Address": "", "kind": "sql#instance", - "maintenanceVersion": "", - "masterInstanceName": "", - "maxDiskSize": null, "name": "sqlinstance-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -901,14 +916,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqlinstance-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "REGIONAL", "backupConfiguration": { @@ -916,19 +928,15 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 7, "retentionUnit": "COUNT" }, - "binaryLogEnabled": false, "enabled": true, "kind": "sql#backupConfiguration", - "location": "", "pointInTimeRecoveryEnabled": true, - "replicationLogArchivingEnabled": null, - "startTime": "05:00", - "transactionLogRetentionDays": 3 + "replicationLogArchivingEnabled": false, + "startTime": "12:00", + "transactionLogRetentionDays": 3, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "100", "dataDiskType": "PD_SSD", "databaseFlags": [ @@ -945,19 +953,15 @@ Grpc-Metadata-Content-Type: application/grpc "value": "8" } ], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", "insightsConfig": { "queryInsightsEnabled": true, - "queryPlansPerMinute": null, "queryStringLength": 1024, "recordApplicationTags": true, "recordClientAddress": true }, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], "enablePrivatePathForGoogleCloudServices": false, "ipv4Enabled": false, @@ -967,29 +971,22 @@ Grpc-Metadata-Content-Type: application/grpc }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, - "maintenanceWindow": null, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "2", - "sqlServerAuditConfig": null, + "settingsVersion": "123", "storageAutoResize": false, "storageAutoResizeLimit": "0", "tier": "db-custom-1-3840", - "timeZone": "", "userLabels": { "cnrm-test": "true", "managed-by-cnrm": "true" } }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", - "state": "RUNNABLE", - "suspensionReason": [] + "state": "RUNNABLE" } --- @@ -998,22 +995,22 @@ DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instanc User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "DELETE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-${uniqueId}", diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstancebasic/_generated_object_postgresinstancebasic.golden.yaml b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstancebasic/_generated_object_postgresinstancebasic.golden.yaml new file mode 100644 index 0000000000..31e151bf73 --- /dev/null +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstancebasic/_generated_object_postgresinstancebasic.golden.yaml @@ -0,0 +1,48 @@ +apiVersion: sql.cnrm.cloud.google.com/v1beta1 +kind: SQLInstance +metadata: + annotations: + cnrm.cloud.google.com/management-conflict-prevention-policy: none + cnrm.cloud.google.com/mutable-but-unreadable-fields: '{}' + cnrm.cloud.google.com/observed-secret-versions: (removed) + cnrm.cloud.google.com/project-id: ${projectId} + cnrm.cloud.google.com/state-into-spec: absent + finalizers: + - cnrm.cloud.google.com/finalizer + - cnrm.cloud.google.com/deletion-defender + generation: 3 + labels: + cnrm-test: "true" + name: postgresbasic-${uniqueId} + namespace: ${uniqueId} +spec: + databaseVersion: POSTGRES_16 + region: us-central1 + resourceID: postgresbasic-${uniqueId} + settings: + locationPreference: + zone: us-central1-a + tier: db-custom-2-7680 +status: + conditions: + - lastTransitionTime: "1970-01-01T00:00:00Z" + message: The resource is up to date + reason: UpToDate + status: "True" + type: Ready + connectionName: ${projectId}:us-central1:postgresbasic-${uniqueId} + firstIpAddress: 10.1.2.3 + instanceType: CLOUD_SQL_INSTANCE + ipAddress: 10.1.2.3 + observedGeneration: 3 + publicIpAddress: 10.1.2.3 + selfLink: https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId} + serverCaCert: + cert: | + -----BEGIN CERTIFICATE----- + -----END CERTIFICATE----- + commonName: common-name + createTime: "1970-01-01T00:00:00Z" + expirationTime: "1970-01-01T00:00:00Z" + sha1Fingerprint: "12345678" + serviceAccountEmailAddress: p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstancebasic/_http.log b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstancebasic/_http.log new file mode 100644 index 0000000000..482f5f2246 --- /dev/null +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstancebasic/_http.log @@ -0,0 +1,566 @@ +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +404 Not Found +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "error": { + "code": 404, + "errors": [ + { + "domain": "global", + "message": "The Cloud SQL instance does not exist.", + "reason": "instanceDoesNotExist" + } + ], + "message": "The Cloud SQL instance does not exist." + } +} + +--- + +POST https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances?alt=json&prettyPrint=false +Content-Type: application/json +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +{ + "databaseVersion": "POSTGRES_15", + "name": "postgresbasic-${uniqueId}", + "region": "us-central1", + "settings": { + "activationPolicy": "ALWAYS", + "availabilityType": "ZONAL", + "dataDiskType": "PD_SSD", + "edition": "ENTERPRISE", + "locationPreference": { + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "storageAutoResize": true, + "tier": "db-custom-1-3840", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + } +} + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "insertTime": "2024-04-01T12:34:56.123456Z", + "kind": "sql#operation", + "name": "${operationID}", + "operationType": "CREATE", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", + "status": "PENDING", + "targetId": "postgresbasic-${uniqueId}", + "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}", + "targetProject": "${projectId}", + "user": "user@example.com" +} + +--- + +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}/users?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "items": [ + { + "etag": "abcdef0123A=", + "host": "", + "instance": "postgresbasic-${uniqueId}", + "kind": "sql#user", + "name": "postgres", + "project": "${projectId}" + } + ], + "kind": "sql#usersList" +} + +--- + +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "backendType": "SECOND_GEN", + "connectionName": "${projectId}:us-central1:postgresbasic-${uniqueId}", + "createTime": "2024-04-01T12:34:56.123456Z", + "databaseInstalledVersion": "POSTGRES_15_7", + "databaseVersion": "POSTGRES_15", + "etag": "abcdef0123A=", + "gceZone": "us-central1-a", + "geminiConfig": { + "activeQueryEnabled": false, + "entitled": false, + "googleVacuumMgmtEnabled": false, + "indexAdvisorEnabled": false, + "oomSessionCancelEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", + "ipAddresses": [ + { + "ipAddress": "10.1.2.3", + "type": "PRIMARY" + }, + { + "ipAddress": "10.1.2.3", + "type": "OUTGOING" + } + ], + "kind": "sql#instance", + "maintenanceVersion": "POSTGRES_15_7.R20240514.00_08", + "name": "postgresbasic-${uniqueId}", + "project": "${projectId}", + "region": "us-central1", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}", + "serverCaCert": { + "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", + "certSerialNumber": "0", + "commonName": "common-name", + "createTime": "2024-04-01T12:34:56.123456Z", + "expirationTime": "2024-04-01T12:34:56.123456Z", + "instance": "postgresbasic-${uniqueId}", + "kind": "sql#sslCert", + "sha1Fingerprint": "12345678" + }, + "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", + "settings": { + "activationPolicy": "ALWAYS", + "authorizedGaeApplications": [], + "availabilityType": "ZONAL", + "backupConfiguration": { + "backupRetentionSettings": { + "retainedBackups": 7, + "retentionUnit": "COUNT" + }, + "enabled": false, + "kind": "sql#backupConfiguration", + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" + }, + "connectorEnforcement": "NOT_REQUIRED", + "dataDiskSizeGb": "10", + "dataDiskType": "PD_SSD", + "deletionProtectionEnabled": false, + "edition": "ENTERPRISE", + "ipConfiguration": { + "authorizedNetworks": [], + "ipv4Enabled": true, + "requireSsl": false, + "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" + }, + "kind": "sql#settings", + "locationPreference": { + "kind": "sql#locationPreference", + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "replicationType": "SYNCHRONOUS", + "settingsVersion": "123", + "storageAutoResize": true, + "storageAutoResizeLimit": "0", + "tier": "db-custom-1-3840", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + }, + "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", + "state": "RUNNABLE", + "upgradableDatabaseVersions": [ + { + "displayName": "PostgreSQL 16", + "majorVersion": "POSTGRES_16", + "name": "POSTGRES_16" + } + ] +} + +--- + +PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}?alt=json&prettyPrint=false +Content-Type: application/json +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +{ + "databaseVersion": "POSTGRES_16" +} + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "insertTime": "2024-04-01T12:34:56.123456Z", + "kind": "sql#operation", + "name": "${operationID}", + "operationType": "UPDATE", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", + "status": "PENDING", + "targetId": "postgresbasic-${uniqueId}", + "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}", + "targetProject": "${projectId}", + "user": "user@example.com" +} + +--- + +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "backendType": "SECOND_GEN", + "connectionName": "${projectId}:us-central1:postgresbasic-${uniqueId}", + "createTime": "2024-04-01T12:34:56.123456Z", + "databaseInstalledVersion": "POSTGRES_16_3", + "databaseVersion": "POSTGRES_16", + "etag": "abcdef0123A=", + "gceZone": "us-central1-a", + "geminiConfig": { + "activeQueryEnabled": false, + "entitled": false, + "googleVacuumMgmtEnabled": false, + "indexAdvisorEnabled": false, + "oomSessionCancelEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", + "ipAddresses": [ + { + "ipAddress": "10.1.2.3", + "type": "PRIMARY" + }, + { + "ipAddress": "10.1.2.3", + "type": "OUTGOING" + } + ], + "kind": "sql#instance", + "maintenanceVersion": "POSTGRES_16_3.R20240527.01_10", + "name": "postgresbasic-${uniqueId}", + "project": "${projectId}", + "region": "us-central1", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}", + "serverCaCert": { + "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", + "certSerialNumber": "0", + "commonName": "common-name", + "createTime": "2024-04-01T12:34:56.123456Z", + "expirationTime": "2024-04-01T12:34:56.123456Z", + "instance": "postgresbasic-${uniqueId}", + "kind": "sql#sslCert", + "sha1Fingerprint": "12345678" + }, + "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", + "settings": { + "activationPolicy": "ALWAYS", + "authorizedGaeApplications": [], + "availabilityType": "ZONAL", + "backupConfiguration": { + "backupRetentionSettings": { + "retainedBackups": 7, + "retentionUnit": "COUNT" + }, + "enabled": false, + "kind": "sql#backupConfiguration", + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" + }, + "connectorEnforcement": "NOT_REQUIRED", + "dataDiskSizeGb": "10", + "dataDiskType": "PD_SSD", + "deletionProtectionEnabled": false, + "edition": "ENTERPRISE", + "ipConfiguration": { + "authorizedNetworks": [], + "ipv4Enabled": true, + "requireSsl": false, + "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" + }, + "kind": "sql#settings", + "locationPreference": { + "kind": "sql#locationPreference", + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "replicationType": "SYNCHRONOUS", + "settingsVersion": "123", + "storageAutoResize": true, + "storageAutoResizeLimit": "0", + "tier": "db-custom-1-3840", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + }, + "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", + "state": "RUNNABLE" +} + +--- + +PUT https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}?alt=json&prettyPrint=false +Content-Type: application/json +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +{ + "instanceType": "CLOUD_SQL_INSTANCE", + "settings": { + "activationPolicy": "ALWAYS", + "availabilityType": "ZONAL", + "backupConfiguration": { + "backupRetentionSettings": { + "retainedBackups": 7, + "retentionUnit": "COUNT" + }, + "binaryLogEnabled": false, + "enabled": false, + "pointInTimeRecoveryEnabled": false, + "startTime": "12:00", + "transactionLogRetentionDays": 7 + }, + "connectorEnforcement": "NOT_REQUIRED", + "dataDiskSizeGb": "10", + "dataDiskType": "PD_SSD", + "edition": "ENTERPRISE", + "ipConfiguration": { + "enablePrivatePathForGoogleCloudServices": false, + "ipv4Enabled": true, + "requireSsl": false + }, + "locationPreference": { + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "settingsVersion": "123", + "storageAutoResize": true, + "tier": "db-custom-2-7680", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + } +} + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "insertTime": "2024-04-01T12:34:56.123456Z", + "kind": "sql#operation", + "name": "${operationID}", + "operationType": "UPDATE", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", + "status": "PENDING", + "targetId": "postgresbasic-${uniqueId}", + "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}", + "targetProject": "${projectId}", + "user": "user@example.com" +} + +--- + +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "backendType": "SECOND_GEN", + "connectionName": "${projectId}:us-central1:postgresbasic-${uniqueId}", + "createTime": "2024-04-01T12:34:56.123456Z", + "databaseInstalledVersion": "POSTGRES_16_3", + "databaseVersion": "POSTGRES_16", + "etag": "abcdef0123A=", + "gceZone": "us-central1-a", + "geminiConfig": { + "activeQueryEnabled": false, + "entitled": false, + "googleVacuumMgmtEnabled": false, + "indexAdvisorEnabled": false, + "oomSessionCancelEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", + "ipAddresses": [ + { + "ipAddress": "10.1.2.3", + "type": "PRIMARY" + }, + { + "ipAddress": "10.1.2.3", + "type": "OUTGOING" + } + ], + "kind": "sql#instance", + "maintenanceVersion": "POSTGRES_16_3.R20240527.01_10", + "name": "postgresbasic-${uniqueId}", + "project": "${projectId}", + "region": "us-central1", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}", + "serverCaCert": { + "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", + "certSerialNumber": "0", + "commonName": "common-name", + "createTime": "2024-04-01T12:34:56.123456Z", + "expirationTime": "2024-04-01T12:34:56.123456Z", + "instance": "postgresbasic-${uniqueId}", + "kind": "sql#sslCert", + "sha1Fingerprint": "12345678" + }, + "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", + "settings": { + "activationPolicy": "ALWAYS", + "authorizedGaeApplications": [], + "availabilityType": "ZONAL", + "backupConfiguration": { + "backupRetentionSettings": { + "retainedBackups": 7, + "retentionUnit": "COUNT" + }, + "enabled": false, + "kind": "sql#backupConfiguration", + "pointInTimeRecoveryEnabled": false, + "replicationLogArchivingEnabled": false, + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" + }, + "connectorEnforcement": "NOT_REQUIRED", + "dataDiskSizeGb": "10", + "dataDiskType": "PD_SSD", + "deletionProtectionEnabled": false, + "edition": "ENTERPRISE", + "ipConfiguration": { + "authorizedNetworks": [], + "enablePrivatePathForGoogleCloudServices": false, + "ipv4Enabled": true, + "requireSsl": false, + "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" + }, + "kind": "sql#settings", + "locationPreference": { + "kind": "sql#locationPreference", + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "replicationType": "SYNCHRONOUS", + "settingsVersion": "123", + "storageAutoResize": true, + "storageAutoResizeLimit": "0", + "tier": "db-custom-2-7680", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + }, + "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", + "state": "RUNNABLE" +} + +--- + +DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "insertTime": "2024-04-01T12:34:56.123456Z", + "kind": "sql#operation", + "name": "${operationID}", + "operationType": "DELETE", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", + "status": "PENDING", + "targetId": "postgresbasic-${uniqueId}", + "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/postgresbasic-${uniqueId}", + "targetProject": "${projectId}", + "user": "user@example.com" +} \ No newline at end of file diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstancebasic/create.yaml b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstancebasic/create.yaml new file mode 100644 index 0000000000..432fd9a9fe --- /dev/null +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstancebasic/create.yaml @@ -0,0 +1,31 @@ +# Copyright 2024 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: sql.cnrm.cloud.google.com/v1beta1 +kind: SQLInstance +metadata: + name: postgresbasic-${uniqueId} + annotations: + cnrm.cloud.google.com/state-into-spec: absent +spec: + databaseVersion: POSTGRES_15 + region: us-central1 + settings: + # Location preference is not actually a required field. However, setting it for tests + # helps with with normalizing the GCP responses, because otherwise GCP chooses a zone + # preference based on availability. Therefore it could potentially vary if not + # explicity specified. + locationPreference: + zone: us-central1-a + tier: db-custom-1-3840 diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstancebasic/update.yaml b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstancebasic/update.yaml new file mode 100644 index 0000000000..c505e7f11e --- /dev/null +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/postgresinstancebasic/update.yaml @@ -0,0 +1,31 @@ +# Copyright 2024 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: sql.cnrm.cloud.google.com/v1beta1 +kind: SQLInstance +metadata: + name: postgresbasic-${uniqueId} + annotations: + cnrm.cloud.google.com/state-into-spec: absent +spec: + databaseVersion: POSTGRES_16 + region: us-central1 + settings: + # Location preference is not actually a required field. However, setting it for tests + # helps with with normalizing the GCP responses, because otherwise GCP chooses a zone + # preference based on availability. Therefore it could potentially vary if not + # explicity specified. + locationPreference: + zone: us-central1-a + tier: db-custom-2-7680 diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlinstanceencryptionkey/_generated_object_sqlinstanceencryptionkey.golden.yaml b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlinstanceencryptionkey/_generated_object_sqlinstanceencryptionkey.golden.yaml index c08920cd9e..71ee26dcbd 100644 --- a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlinstanceencryptionkey/_generated_object_sqlinstanceencryptionkey.golden.yaml +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlinstanceencryptionkey/_generated_object_sqlinstanceencryptionkey.golden.yaml @@ -20,7 +20,8 @@ spec: databaseVersion: POSTGRES_15 encryptionKMSCryptoKeyRef: external: projects/${projectId}/locations/us-central1/keyRings/kmskeyring-${uniqueId}/cryptoKeys/kmscryptokey-${uniqueId} - instanceType: SQL_INSTANCE_TYPE_UNSPECIFIED + instanceType: CLOUD_SQL_INSTANCE + maintenanceVersion: POSTGRES_15_7.R20240514.00_08 region: us-central1 resourceID: sqlinstance-sample-${uniqueId} settings: @@ -71,11 +72,11 @@ status: status: "True" type: Ready connectionName: ${projectId}:us-central1:sqlinstance-sample-${uniqueId} - firstIpAddress: 10.10.10.10 - instanceType: SQL_INSTANCE_TYPE_UNSPECIFIED + firstIpAddress: 10.1.2.3 + instanceType: CLOUD_SQL_INSTANCE ipAddress: 10.1.2.3 observedGeneration: 2 - publicIpAddress: 10.10.10.10 + publicIpAddress: 10.1.2.3 selfLink: https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId} serverCaCert: cert: | diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlinstanceencryptionkey/_http.log b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlinstanceencryptionkey/_http.log index 77c8ba5ae2..b5090178ac 100644 --- a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlinstanceencryptionkey/_http.log +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlinstanceencryptionkey/_http.log @@ -829,12 +829,28 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 404 Not Found -Content-Type: application/json +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "code": 5, - "details": [], - "message": "databaseInstance \"projects/${projectId}/SQLInstances/sqlinstance-sample-${uniqueId}\" not found" + "error": { + "code": 404, + "errors": [ + { + "domain": "global", + "message": "The Cloud SQL instance does not exist.", + "reason": "instanceDoesNotExist" + } + ], + "message": "The Cloud SQL instance does not exist." + } } --- @@ -913,7 +929,7 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr "binaryLogEnabled": false, "enabled": true, "pointInTimeRecoveryEnabled": true, - "startTime": "01:00", + "startTime": "12:00", "transactionLogRetentionDays": 5 }, "dataDiskSizeGb": "100", @@ -958,22 +974,22 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr } 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "CREATE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-sample-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", @@ -987,13 +1003,28 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "items": [], - "kind": "sql#usersList", - "nextPageToken": "" + "items": [ + { + "etag": "abcdef0123A=", + "host": "", + "instance": "sqlinstance-sample-${uniqueId}", + "kind": "sql#user", + "name": "postgres", + "project": "${projectId}" + } + ], + "kind": "sql#usersList" } --- @@ -1002,48 +1033,50 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqlinstance-sample-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, - "databaseInstalledVersion": "POSTGRES_15", + "databaseInstalledVersion": "POSTGRES_15_7", "databaseVersion": "POSTGRES_15", "diskEncryptionConfiguration": { - "kind": "", "kmsKeyName": "projects/${projectId}/locations/us-central1/keyRings/kmskeyring-${uniqueId}/cryptoKeys/kmscryptokey-${uniqueId}" }, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "gceZone": "us-central1-a", + "geminiConfig": { + "activeQueryEnabled": false, + "entitled": false, + "googleVacuumMgmtEnabled": false, + "indexAdvisorEnabled": false, + "oomSessionCancelEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" + }, + { + "ipAddress": "10.1.2.3", + "type": "OUTGOING" } ], - "ipv6Address": "", "kind": "sql#instance", - "maintenanceVersion": "", - "masterInstanceName": "", - "maxDiskSize": null, + "maintenanceVersion": "POSTGRES_15_7.R20240514.00_08", "name": "sqlinstance-sample-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -1053,14 +1086,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqlinstance-sample-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "REGIONAL", "backupConfiguration": { @@ -1068,19 +1098,15 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 5, "retentionUnit": "COUNT" }, - "binaryLogEnabled": false, "enabled": true, "kind": "sql#backupConfiguration", - "location": "", "pointInTimeRecoveryEnabled": true, - "replicationLogArchivingEnabled": null, - "startTime": "01:00", - "transactionLogRetentionDays": 5 + "replicationLogArchivingEnabled": false, + "startTime": "12:00", + "transactionLogRetentionDays": 5, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "100", "dataDiskType": "PD_SSD", "databaseFlags": [ @@ -1089,9 +1115,7 @@ Grpc-Metadata-Content-Type: application/grpc "value": "on" } ], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", "insightsConfig": { "queryInsightsEnabled": true, @@ -1101,7 +1125,6 @@ Grpc-Metadata-Content-Type: application/grpc "recordClientAddress": true }, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], "enablePrivatePathForGoogleCloudServices": false, "ipv4Enabled": false, @@ -1111,26 +1134,20 @@ Grpc-Metadata-Content-Type: application/grpc }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, "maintenanceWindow": { "day": 6, "hour": 2, - "kind": "", "updateTrack": "stable" }, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "1", - "sqlServerAuditConfig": null, + "settingsVersion": "123", "storageAutoResize": true, "storageAutoResizeLimit": "0", "tier": "db-custom-8-30720", - "timeZone": "", "userLabels": { "cnrm-test": "true", "label-one": "value-one", @@ -1139,7 +1156,13 @@ Grpc-Metadata-Content-Type: application/grpc }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", "state": "RUNNABLE", - "suspensionReason": [] + "upgradableDatabaseVersions": [ + { + "displayName": "PostgreSQL 16", + "majorVersion": "POSTGRES_16", + "name": "POSTGRES_16" + } + ] } --- @@ -1149,7 +1172,7 @@ Content-Type: application/json User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager { - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "instanceType": "CLOUD_SQL_INSTANCE", "settings": { "activationPolicy": "ALWAYS", "availabilityType": "REGIONAL", @@ -1161,7 +1184,7 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr "binaryLogEnabled": false, "enabled": true, "pointInTimeRecoveryEnabled": true, - "startTime": "01:00", + "startTime": "12:00", "transactionLogRetentionDays": 5 }, "connectorEnforcement": "NOT_REQUIRED", @@ -1196,7 +1219,7 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr "updateTrack": "stable" }, "pricingPlan": "PER_USE", - "settingsVersion": "1", + "settingsVersion": "123", "storageAutoResize": true, "tier": "db-custom-8-30720", "userLabels": { @@ -1208,22 +1231,22 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr } 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "UPDATE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-sample-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", @@ -1237,45 +1260,47 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqlinstance-sample-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, - "databaseInstalledVersion": "POSTGRES_15", + "databaseInstalledVersion": "POSTGRES_15_7", "databaseVersion": "POSTGRES_15", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "gceZone": "us-central1-a", + "geminiConfig": { + "activeQueryEnabled": false, + "entitled": false, + "googleVacuumMgmtEnabled": false, + "indexAdvisorEnabled": false, + "oomSessionCancelEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" + }, + { + "ipAddress": "10.1.2.3", + "type": "OUTGOING" } ], - "ipv6Address": "", "kind": "sql#instance", - "maintenanceVersion": "", - "masterInstanceName": "", - "maxDiskSize": null, + "maintenanceVersion": "POSTGRES_15_7.R20240514.00_08", "name": "sqlinstance-sample-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -1285,14 +1310,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqlinstance-sample-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "REGIONAL", "backupConfiguration": { @@ -1300,19 +1322,15 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 5, "retentionUnit": "COUNT" }, - "binaryLogEnabled": false, "enabled": true, "kind": "sql#backupConfiguration", - "location": "", "pointInTimeRecoveryEnabled": true, - "replicationLogArchivingEnabled": null, - "startTime": "01:00", - "transactionLogRetentionDays": 5 + "replicationLogArchivingEnabled": false, + "startTime": "12:00", + "transactionLogRetentionDays": 5, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "100", "dataDiskType": "PD_SSD", "databaseFlags": [ @@ -1321,9 +1339,7 @@ Grpc-Metadata-Content-Type: application/grpc "value": "on" } ], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", "insightsConfig": { "queryInsightsEnabled": true, @@ -1333,7 +1349,6 @@ Grpc-Metadata-Content-Type: application/grpc "recordClientAddress": true }, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], "enablePrivatePathForGoogleCloudServices": false, "ipv4Enabled": false, @@ -1343,26 +1358,20 @@ Grpc-Metadata-Content-Type: application/grpc }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, "maintenanceWindow": { "day": 6, "hour": 2, - "kind": "", "updateTrack": "stable" }, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "2", - "sqlServerAuditConfig": null, + "settingsVersion": "123", "storageAutoResize": true, "storageAutoResizeLimit": "0", "tier": "db-custom-8-30720", - "timeZone": "", "userLabels": { "cnrm-test": "true", "label-one": "value-one", @@ -1371,7 +1380,13 @@ Grpc-Metadata-Content-Type: application/grpc }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", "state": "RUNNABLE", - "suspensionReason": [] + "upgradableDatabaseVersions": [ + { + "displayName": "PostgreSQL 16", + "majorVersion": "POSTGRES_16", + "name": "POSTGRES_16" + } + ] } --- @@ -1380,22 +1395,22 @@ DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instanc User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "DELETE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-sample-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstance/_generated_object_sqlserverinstance.golden.yaml b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstance/_generated_object_sqlserverinstance.golden.yaml index 16887bd3b7..3239777480 100644 --- a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstance/_generated_object_sqlserverinstance.golden.yaml +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstance/_generated_object_sqlserverinstance.golden.yaml @@ -18,7 +18,7 @@ metadata: namespace: ${uniqueId} spec: databaseVersion: SQLSERVER_2017_EXPRESS - instanceType: SQL_INSTANCE_TYPE_UNSPECIFIED + instanceType: CLOUD_SQL_INSTANCE maintenanceVersion: SQLSERVER_2017_EXPRESS_CU31_GDR.R20231029.00_02 region: us-central1 resourceID: sqlinstance-sample-${uniqueId} @@ -31,7 +31,7 @@ spec: backupRetentionSettings: retainedBackups: 7 retentionUnit: COUNT - startTime: "21:00" + startTime: "12:00" transactionLogRetentionDays: 7 connectorEnforcement: NOT_REQUIRED diskAutoresize: false @@ -42,7 +42,7 @@ spec: ipConfiguration: ipv4Enabled: true locationPreference: - zone: us-central1-c + zone: us-central1-a pricingPlan: PER_USE sqlServerAuditConfig: bucketRef: @@ -56,11 +56,11 @@ status: status: "True" type: Ready connectionName: ${projectId}:us-central1:sqlinstance-sample-${uniqueId} - firstIpAddress: 10.10.10.10 - instanceType: SQL_INSTANCE_TYPE_UNSPECIFIED + firstIpAddress: 10.1.2.3 + instanceType: CLOUD_SQL_INSTANCE ipAddress: 10.1.2.3 observedGeneration: 3 - publicIpAddress: 10.10.10.10 + publicIpAddress: 10.1.2.3 selfLink: https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId} serverCaCert: cert: | diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstance/_http.log b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstance/_http.log index a5f76624c3..610b482b49 100644 --- a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstance/_http.log +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstance/_http.log @@ -143,12 +143,28 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 404 Not Found -Content-Type: application/json +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "code": 5, - "details": [], - "message": "databaseInstance \"projects/${projectId}/SQLInstances/sqlinstance-sample-${uniqueId}\" not found" + "error": { + "code": 404, + "errors": [ + { + "domain": "global", + "message": "The Cloud SQL instance does not exist.", + "reason": "instanceDoesNotExist" + } + ], + "message": "The Cloud SQL instance does not exist." + } } --- @@ -183,22 +199,22 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr } 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "CREATE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-sample-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", @@ -212,8 +228,15 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { "items": [ @@ -223,23 +246,10 @@ Grpc-Metadata-Content-Type: application/grpc "instance": "sqlinstance-sample-${uniqueId}", "kind": "sql#user", "name": "##MS_PolicyEventProcessingLogin##", - "password": "", - "passwordPolicy": { - "allowedFailedAttempts": 0, - "enableFailedAttemptsCheck": false, - "enablePasswordVerification": false, - "passwordExpirationDuration": null, - "status": { - "locked": false, - "passwordExpirationTime": null - } - }, "project": "${projectId}", "sqlserverUserDetails": { - "disabled": true, - "serverRoles": [] - }, - "type": "BUILT_IN" + "disabled": true + } }, { "etag": "abcdef0123A=", @@ -247,23 +257,10 @@ Grpc-Metadata-Content-Type: application/grpc "instance": "sqlinstance-sample-${uniqueId}", "kind": "sql#user", "name": "##MS_PolicyTsqlExecutionLogin##", - "password": "", - "passwordPolicy": { - "allowedFailedAttempts": 0, - "enableFailedAttemptsCheck": false, - "enablePasswordVerification": false, - "passwordExpirationDuration": null, - "status": { - "locked": false, - "passwordExpirationTime": null - } - }, "project": "${projectId}", "sqlserverUserDetails": { - "disabled": true, - "serverRoles": [] - }, - "type": "BUILT_IN" + "disabled": true + } }, { "etag": "abcdef0123A=", @@ -271,29 +268,15 @@ Grpc-Metadata-Content-Type: application/grpc "instance": "sqlinstance-sample-${uniqueId}", "kind": "sql#user", "name": "sqlserver", - "password": "", - "passwordPolicy": { - "allowedFailedAttempts": 0, - "enableFailedAttemptsCheck": false, - "enablePasswordVerification": false, - "passwordExpirationDuration": null, - "status": { - "locked": false, - "passwordExpirationTime": null - } - }, "project": "${projectId}", "sqlserverUserDetails": { - "disabled": false, "serverRoles": [ "CustomerDbRootRole" ] - }, - "type": "BUILT_IN" + } } ], - "kind": "sql#usersList", - "nextPageToken": "" + "kind": "sql#usersList" } --- @@ -302,45 +285,36 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqlinstance-sample-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, "databaseInstalledVersion": "SQLSERVER_2017_EXPRESS_CU31_GDR", "databaseVersion": "SQLSERVER_2017_EXPRESS", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "gceZone": "us-central1-a", + "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" } ], - "ipv6Address": "", "kind": "sql#instance", "maintenanceVersion": "SQLSERVER_2017_EXPRESS_CU31_GDR.R20231029.00_02", - "masterInstanceName": "", - "maxDiskSize": null, "name": "sqlinstance-sample-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "1234", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -350,14 +324,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqlinstance-sample-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "ZONAL", "backupConfiguration": { @@ -365,58 +336,37 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 7, "retentionUnit": "COUNT" }, - "binaryLogEnabled": null, "enabled": false, "kind": "sql#backupConfiguration", - "location": "", - "pointInTimeRecoveryEnabled": false, - "replicationLogArchivingEnabled": null, - "startTime": "21:00", - "transactionLogRetentionDays": 7 + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "10", "dataDiskType": "PD_SSD", - "databaseFlags": [], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", - "insightsConfig": null, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], - "enablePrivatePathForGoogleCloudServices": null, "ipv4Enabled": true, - "privateNetwork": "", "requireSsl": false, "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, - "maintenanceWindow": null, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "1", + "settingsVersion": "123", "sqlServerAuditConfig": { - "bucket": "gs://storagebucket-${uniqueId}", - "kind": "", - "retentionInterval": null, - "uploadInterval": null + "bucket": "gs://storagebucket-${uniqueId}" }, "storageAutoResize": false, "storageAutoResizeLimit": "0", "tier": "db-custom-1-3840", - "timeZone": "", "userLabels": { "cnrm-test": "true", "label-one": "value-one", @@ -424,8 +374,7 @@ Grpc-Metadata-Content-Type: application/grpc } }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", - "state": "RUNNABLE", - "suspensionReason": [] + "state": "RUNNABLE" } --- @@ -435,7 +384,7 @@ Content-Type: application/json User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager { - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "instanceType": "CLOUD_SQL_INSTANCE", "settings": { "activationPolicy": "ALWAYS", "availabilityType": "ZONAL", @@ -447,7 +396,7 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr "binaryLogEnabled": false, "enabled": false, "pointInTimeRecoveryEnabled": false, - "startTime": "21:00", + "startTime": "12:00", "transactionLogRetentionDays": 7 }, "connectorEnforcement": "NOT_REQUIRED", @@ -459,10 +408,10 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr "requireSsl": false }, "locationPreference": { - "zone": "us-central1-c" + "zone": "us-central1-a" }, "pricingPlan": "PER_USE", - "settingsVersion": "1", + "settingsVersion": "123", "sqlServerAuditConfig": { "bucket": "gs://storagebucket-${uniqueId}" }, @@ -477,22 +426,22 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr } 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "UPDATE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-sample-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", @@ -506,45 +455,36 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqlinstance-sample-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, "databaseInstalledVersion": "SQLSERVER_2017_EXPRESS_CU31_GDR", "databaseVersion": "SQLSERVER_2017_EXPRESS", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "gceZone": "us-central1-a", + "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" } ], - "ipv6Address": "", "kind": "sql#instance", "maintenanceVersion": "SQLSERVER_2017_EXPRESS_CU31_GDR.R20231029.00_02", - "masterInstanceName": "", - "maxDiskSize": null, "name": "sqlinstance-sample-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -554,14 +494,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqlinstance-sample-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "ZONAL", "backupConfiguration": { @@ -569,58 +506,38 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 7, "retentionUnit": "COUNT" }, - "binaryLogEnabled": false, "enabled": false, "kind": "sql#backupConfiguration", - "location": "", "pointInTimeRecoveryEnabled": false, - "replicationLogArchivingEnabled": null, - "startTime": "21:00", - "transactionLogRetentionDays": 7 + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "20", "dataDiskType": "PD_SSD", - "databaseFlags": [], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", - "insightsConfig": null, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], - "enablePrivatePathForGoogleCloudServices": null, "ipv4Enabled": true, - "privateNetwork": "", "requireSsl": false, "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, - "maintenanceWindow": null, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "2", + "settingsVersion": "123", "sqlServerAuditConfig": { - "bucket": "gs://storagebucket-${uniqueId}", - "kind": "", - "retentionInterval": null, - "uploadInterval": null + "bucket": "gs://storagebucket-${uniqueId}" }, "storageAutoResize": false, "storageAutoResizeLimit": "0", "tier": "db-custom-1-3840", - "timeZone": "", "userLabels": { "cnrm-test": "true", "label-one": "value-one", @@ -628,8 +545,7 @@ Grpc-Metadata-Content-Type: application/grpc } }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", - "state": "RUNNABLE", - "suspensionReason": [] + "state": "RUNNABLE" } --- @@ -638,22 +554,22 @@ DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instanc User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "DELETE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-sample-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-sample-${uniqueId}", diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstancebasic/_generated_object_sqlserverinstancebasic.golden.yaml b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstancebasic/_generated_object_sqlserverinstancebasic.golden.yaml new file mode 100644 index 0000000000..de6b8d121c --- /dev/null +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstancebasic/_generated_object_sqlserverinstancebasic.golden.yaml @@ -0,0 +1,50 @@ +apiVersion: sql.cnrm.cloud.google.com/v1beta1 +kind: SQLInstance +metadata: + annotations: + cnrm.cloud.google.com/management-conflict-prevention-policy: none + cnrm.cloud.google.com/mutable-but-unreadable-fields: '{"spec":{"rootPassword":{"value":"4321"}}}' + cnrm.cloud.google.com/observed-secret-versions: (removed) + cnrm.cloud.google.com/project-id: ${projectId} + cnrm.cloud.google.com/state-into-spec: absent + finalizers: + - cnrm.cloud.google.com/finalizer + - cnrm.cloud.google.com/deletion-defender + generation: 3 + labels: + cnrm-test: "true" + name: sqlserverbasic-${uniqueId} + namespace: ${uniqueId} +spec: + databaseVersion: SQLSERVER_2022_EXPRESS + region: us-central1 + resourceID: sqlserverbasic-${uniqueId} + rootPassword: + value: "4321" + settings: + locationPreference: + zone: us-central1-a + tier: db-custom-2-7680 +status: + conditions: + - lastTransitionTime: "1970-01-01T00:00:00Z" + message: The resource is up to date + reason: UpToDate + status: "True" + type: Ready + connectionName: ${projectId}:us-central1:sqlserverbasic-${uniqueId} + firstIpAddress: 10.1.2.3 + instanceType: CLOUD_SQL_INSTANCE + ipAddress: 10.1.2.3 + observedGeneration: 3 + publicIpAddress: 10.1.2.3 + selfLink: https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId} + serverCaCert: + cert: | + -----BEGIN CERTIFICATE----- + -----END CERTIFICATE----- + commonName: common-name + createTime: "1970-01-01T00:00:00Z" + expirationTime: "1970-01-01T00:00:00Z" + sha1Fingerprint: "12345678" + serviceAccountEmailAddress: p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstancebasic/_http.log b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstancebasic/_http.log new file mode 100644 index 0000000000..8fabeec220 --- /dev/null +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstancebasic/_http.log @@ -0,0 +1,658 @@ +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +404 Not Found +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "error": { + "code": 404, + "errors": [ + { + "domain": "global", + "message": "The Cloud SQL instance does not exist.", + "reason": "instanceDoesNotExist" + } + ], + "message": "The Cloud SQL instance does not exist." + } +} + +--- + +POST https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances?alt=json&prettyPrint=false +Content-Type: application/json +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +{ + "databaseVersion": "SQLSERVER_2019_EXPRESS", + "name": "sqlserverbasic-${uniqueId}", + "region": "us-central1", + "rootPassword": "1234", + "settings": { + "activationPolicy": "ALWAYS", + "availabilityType": "ZONAL", + "dataDiskType": "PD_SSD", + "edition": "ENTERPRISE", + "locationPreference": { + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "storageAutoResize": true, + "tier": "db-custom-1-3840", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + } +} + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "insertTime": "2024-04-01T12:34:56.123456Z", + "kind": "sql#operation", + "name": "${operationID}", + "operationType": "CREATE", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", + "status": "PENDING", + "targetId": "sqlserverbasic-${uniqueId}", + "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}", + "targetProject": "${projectId}", + "user": "user@example.com" +} + +--- + +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}/users?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "items": [ + { + "etag": "abcdef0123A=", + "host": "", + "instance": "sqlserverbasic-${uniqueId}", + "kind": "sql#user", + "name": "##MS_PolicyEventProcessingLogin##", + "project": "${projectId}", + "sqlserverUserDetails": { + "disabled": true + } + }, + { + "etag": "abcdef0123A=", + "host": "", + "instance": "sqlserverbasic-${uniqueId}", + "kind": "sql#user", + "name": "##MS_PolicyTsqlExecutionLogin##", + "project": "${projectId}", + "sqlserverUserDetails": { + "disabled": true + } + }, + { + "etag": "abcdef0123A=", + "host": "", + "instance": "sqlserverbasic-${uniqueId}", + "kind": "sql#user", + "name": "sqlserver", + "project": "${projectId}", + "sqlserverUserDetails": { + "serverRoles": [ + "CustomerDbRootRole" + ] + } + } + ], + "kind": "sql#usersList" +} + +--- + +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "backendType": "SECOND_GEN", + "connectionName": "${projectId}:us-central1:sqlserverbasic-${uniqueId}", + "createTime": "2024-04-01T12:34:56.123456Z", + "databaseInstalledVersion": "SQLSERVER_2019_EXPRESS_CU26", + "databaseVersion": "SQLSERVER_2019_EXPRESS", + "etag": "abcdef0123A=", + "gceZone": "us-central1-a", + "instanceType": "CLOUD_SQL_INSTANCE", + "ipAddresses": [ + { + "ipAddress": "10.1.2.3", + "type": "PRIMARY" + } + ], + "kind": "sql#instance", + "maintenanceVersion": "SQLSERVER_2019_EXPRESS_CU26.R20240501.00_05", + "name": "sqlserverbasic-${uniqueId}", + "project": "${projectId}", + "region": "us-central1", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}", + "serverCaCert": { + "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", + "certSerialNumber": "0", + "commonName": "common-name", + "createTime": "2024-04-01T12:34:56.123456Z", + "expirationTime": "2024-04-01T12:34:56.123456Z", + "instance": "sqlserverbasic-${uniqueId}", + "kind": "sql#sslCert", + "sha1Fingerprint": "12345678" + }, + "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", + "settings": { + "activationPolicy": "ALWAYS", + "authorizedGaeApplications": [], + "availabilityType": "ZONAL", + "backupConfiguration": { + "backupRetentionSettings": { + "retainedBackups": 7, + "retentionUnit": "COUNT" + }, + "enabled": false, + "kind": "sql#backupConfiguration", + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" + }, + "connectorEnforcement": "NOT_REQUIRED", + "dataDiskSizeGb": "10", + "dataDiskType": "PD_SSD", + "deletionProtectionEnabled": false, + "edition": "ENTERPRISE", + "ipConfiguration": { + "authorizedNetworks": [], + "ipv4Enabled": true, + "requireSsl": false, + "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" + }, + "kind": "sql#settings", + "locationPreference": { + "kind": "sql#locationPreference", + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "replicationType": "SYNCHRONOUS", + "settingsVersion": "123", + "storageAutoResize": true, + "storageAutoResizeLimit": "0", + "tier": "db-custom-1-3840", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + }, + "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", + "state": "RUNNABLE", + "upgradableDatabaseVersions": [ + { + "displayName": "SQL Server 2019 Standard", + "majorVersion": "SQLSERVER_2019_STANDARD", + "name": "SQLSERVER_2019_STANDARD" + }, + { + "displayName": "SQL Server 2019 Enterprise", + "majorVersion": "SQLSERVER_2019_ENTERPRISE", + "name": "SQLSERVER_2019_ENTERPRISE" + }, + { + "displayName": "SQL Server 2019 Web", + "majorVersion": "SQLSERVER_2019_WEB", + "name": "SQLSERVER_2019_WEB" + }, + { + "displayName": "SQL Server 2022 Standard", + "majorVersion": "SQLSERVER_2022_STANDARD", + "name": "SQLSERVER_2022_STANDARD" + }, + { + "displayName": "SQL Server 2022 Enterprise", + "majorVersion": "SQLSERVER_2022_ENTERPRISE", + "name": "SQLSERVER_2022_ENTERPRISE" + }, + { + "displayName": "SQL Server 2022 Express", + "majorVersion": "SQLSERVER_2022_EXPRESS", + "name": "SQLSERVER_2022_EXPRESS" + }, + { + "displayName": "SQL Server 2022 Web", + "majorVersion": "SQLSERVER_2022_WEB", + "name": "SQLSERVER_2022_WEB" + } + ] +} + +--- + +PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}?alt=json&prettyPrint=false +Content-Type: application/json +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +{ + "databaseVersion": "SQLSERVER_2022_EXPRESS" +} + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "insertTime": "2024-04-01T12:34:56.123456Z", + "kind": "sql#operation", + "name": "${operationID}", + "operationType": "UPDATE", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", + "status": "PENDING", + "targetId": "sqlserverbasic-${uniqueId}", + "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}", + "targetProject": "${projectId}", + "user": "user@example.com" +} + +--- + +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "backendType": "SECOND_GEN", + "connectionName": "${projectId}:us-central1:sqlserverbasic-${uniqueId}", + "createTime": "2024-04-01T12:34:56.123456Z", + "databaseInstalledVersion": "SQLSERVER_2022_EXPRESS_CU12_GDR", + "databaseVersion": "SQLSERVER_2022_EXPRESS", + "etag": "abcdef0123A=", + "gceZone": "us-central1-a", + "instanceType": "CLOUD_SQL_INSTANCE", + "ipAddresses": [ + { + "ipAddress": "10.1.2.3", + "type": "PRIMARY" + } + ], + "kind": "sql#instance", + "maintenanceVersion": "SQLSERVER_2022_EXPRESS_CU12_GDR.R20240501.00_05", + "name": "sqlserverbasic-${uniqueId}", + "project": "${projectId}", + "region": "us-central1", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}", + "serverCaCert": { + "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", + "certSerialNumber": "0", + "commonName": "common-name", + "createTime": "2024-04-01T12:34:56.123456Z", + "expirationTime": "2024-04-01T12:34:56.123456Z", + "instance": "sqlserverbasic-${uniqueId}", + "kind": "sql#sslCert", + "sha1Fingerprint": "12345678" + }, + "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", + "settings": { + "activationPolicy": "ALWAYS", + "authorizedGaeApplications": [], + "availabilityType": "ZONAL", + "backupConfiguration": { + "backupRetentionSettings": { + "retainedBackups": 7, + "retentionUnit": "COUNT" + }, + "enabled": false, + "kind": "sql#backupConfiguration", + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" + }, + "connectorEnforcement": "NOT_REQUIRED", + "dataDiskSizeGb": "10", + "dataDiskType": "PD_SSD", + "deletionProtectionEnabled": false, + "edition": "ENTERPRISE", + "ipConfiguration": { + "authorizedNetworks": [], + "ipv4Enabled": true, + "requireSsl": false, + "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" + }, + "kind": "sql#settings", + "locationPreference": { + "kind": "sql#locationPreference", + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "replicationType": "SYNCHRONOUS", + "settingsVersion": "123", + "storageAutoResize": true, + "storageAutoResizeLimit": "0", + "tier": "db-custom-1-3840", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + }, + "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", + "state": "RUNNABLE", + "upgradableDatabaseVersions": [ + { + "displayName": "SQL Server 2022 Standard", + "majorVersion": "SQLSERVER_2022_STANDARD", + "name": "SQLSERVER_2022_STANDARD" + }, + { + "displayName": "SQL Server 2022 Enterprise", + "majorVersion": "SQLSERVER_2022_ENTERPRISE", + "name": "SQLSERVER_2022_ENTERPRISE" + }, + { + "displayName": "SQL Server 2022 Web", + "majorVersion": "SQLSERVER_2022_WEB", + "name": "SQLSERVER_2022_WEB" + } + ] +} + +--- + +PUT https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}/users?alt=json&host=&name=sqlserver&prettyPrint=false +Content-Type: application/json +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +{ + "instance": "sqlserverbasic-${uniqueId}", + "name": "sqlserver", + "password": "4321" +} + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "insertTime": "2024-04-01T12:34:56.123456Z", + "kind": "sql#operation", + "name": "${operationID}", + "operationType": "UPDATE_USER", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", + "status": "PENDING", + "targetId": "sqlserverbasic-${uniqueId}", + "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}", + "targetProject": "${projectId}", + "user": "user@example.com" +} + +--- + +PUT https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}?alt=json&prettyPrint=false +Content-Type: application/json +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +{ + "instanceType": "CLOUD_SQL_INSTANCE", + "settings": { + "activationPolicy": "ALWAYS", + "availabilityType": "ZONAL", + "backupConfiguration": { + "backupRetentionSettings": { + "retainedBackups": 7, + "retentionUnit": "COUNT" + }, + "binaryLogEnabled": false, + "enabled": false, + "pointInTimeRecoveryEnabled": false, + "startTime": "12:00", + "transactionLogRetentionDays": 7 + }, + "connectorEnforcement": "NOT_REQUIRED", + "dataDiskSizeGb": "10", + "dataDiskType": "PD_SSD", + "edition": "ENTERPRISE", + "ipConfiguration": { + "ipv4Enabled": true, + "requireSsl": false + }, + "locationPreference": { + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "settingsVersion": "123", + "storageAutoResize": true, + "tier": "db-custom-2-7680", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + } +} + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "insertTime": "2024-04-01T12:34:56.123456Z", + "kind": "sql#operation", + "name": "${operationID}", + "operationType": "UPDATE", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", + "status": "PENDING", + "targetId": "sqlserverbasic-${uniqueId}", + "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}", + "targetProject": "${projectId}", + "user": "user@example.com" +} + +--- + +GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "backendType": "SECOND_GEN", + "connectionName": "${projectId}:us-central1:sqlserverbasic-${uniqueId}", + "createTime": "2024-04-01T12:34:56.123456Z", + "databaseInstalledVersion": "SQLSERVER_2022_EXPRESS_CU12_GDR", + "databaseVersion": "SQLSERVER_2022_EXPRESS", + "etag": "abcdef0123A=", + "gceZone": "us-central1-a", + "instanceType": "CLOUD_SQL_INSTANCE", + "ipAddresses": [ + { + "ipAddress": "10.1.2.3", + "type": "PRIMARY" + } + ], + "kind": "sql#instance", + "maintenanceVersion": "SQLSERVER_2022_EXPRESS_CU12_GDR.R20240501.00_05", + "name": "sqlserverbasic-${uniqueId}", + "project": "${projectId}", + "region": "us-central1", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}", + "serverCaCert": { + "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", + "certSerialNumber": "0", + "commonName": "common-name", + "createTime": "2024-04-01T12:34:56.123456Z", + "expirationTime": "2024-04-01T12:34:56.123456Z", + "instance": "sqlserverbasic-${uniqueId}", + "kind": "sql#sslCert", + "sha1Fingerprint": "12345678" + }, + "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", + "settings": { + "activationPolicy": "ALWAYS", + "authorizedGaeApplications": [], + "availabilityType": "ZONAL", + "backupConfiguration": { + "backupRetentionSettings": { + "retainedBackups": 7, + "retentionUnit": "COUNT" + }, + "enabled": false, + "kind": "sql#backupConfiguration", + "pointInTimeRecoveryEnabled": false, + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" + }, + "connectorEnforcement": "NOT_REQUIRED", + "dataDiskSizeGb": "10", + "dataDiskType": "PD_SSD", + "deletionProtectionEnabled": false, + "edition": "ENTERPRISE", + "ipConfiguration": { + "authorizedNetworks": [], + "ipv4Enabled": true, + "requireSsl": false, + "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" + }, + "kind": "sql#settings", + "locationPreference": { + "kind": "sql#locationPreference", + "zone": "us-central1-a" + }, + "pricingPlan": "PER_USE", + "replicationType": "SYNCHRONOUS", + "settingsVersion": "123", + "storageAutoResize": true, + "storageAutoResizeLimit": "0", + "tier": "db-custom-2-7680", + "userLabels": { + "cnrm-test": "true", + "managed-by-cnrm": "true" + } + }, + "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", + "state": "RUNNABLE", + "upgradableDatabaseVersions": [ + { + "displayName": "SQL Server 2022 Standard", + "majorVersion": "SQLSERVER_2022_STANDARD", + "name": "SQLSERVER_2022_STANDARD" + }, + { + "displayName": "SQL Server 2022 Enterprise", + "majorVersion": "SQLSERVER_2022_ENTERPRISE", + "name": "SQLSERVER_2022_ENTERPRISE" + }, + { + "displayName": "SQL Server 2022 Web", + "majorVersion": "SQLSERVER_2022_WEB", + "name": "SQLSERVER_2022_WEB" + } + ] +} + +--- + +DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}?alt=json&prettyPrint=false +User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager + +200 OK +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 + +{ + "insertTime": "2024-04-01T12:34:56.123456Z", + "kind": "sql#operation", + "name": "${operationID}", + "operationType": "DELETE", + "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", + "status": "PENDING", + "targetId": "sqlserverbasic-${uniqueId}", + "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlserverbasic-${uniqueId}", + "targetProject": "${projectId}", + "user": "user@example.com" +} \ No newline at end of file diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstancebasic/create.yaml b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstancebasic/create.yaml new file mode 100644 index 0000000000..da70e92a7f --- /dev/null +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstancebasic/create.yaml @@ -0,0 +1,34 @@ +# Copyright 2024 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: sql.cnrm.cloud.google.com/v1beta1 +kind: SQLInstance +metadata: + name: sqlserverbasic-${uniqueId} + annotations: + cnrm.cloud.google.com/state-into-spec: absent +spec: + databaseVersion: SQLSERVER_2019_EXPRESS + region: us-central1 + # rootPassword is only a required field for SQL Server instances. + rootPassword: + value: "1234" + settings: + # Location preference is not actually a required field. However, setting it for tests + # helps with with normalizing the GCP responses, because otherwise GCP chooses a zone + # preference based on availability. Therefore it could potentially vary if not + # explicity specified. + locationPreference: + zone: us-central1-a + tier: db-custom-1-3840 diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstancebasic/update.yaml b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstancebasic/update.yaml new file mode 100644 index 0000000000..165025a006 --- /dev/null +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqlinstance/sqlserverinstancebasic/update.yaml @@ -0,0 +1,34 @@ +# Copyright 2024 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: sql.cnrm.cloud.google.com/v1beta1 +kind: SQLInstance +metadata: + name: sqlserverbasic-${uniqueId} + annotations: + cnrm.cloud.google.com/state-into-spec: absent +spec: + databaseVersion: SQLSERVER_2022_EXPRESS + region: us-central1 + # rootPassword is only a required field for SQL Server instances. + rootPassword: + value: "4321" + settings: + # Location preference is not actually a required field. However, setting it for tests + # helps with with normalizing the GCP responses, because otherwise GCP chooses a zone + # preference based on availability. Therefore it could potentially vary if not + # explicity specified. + locationPreference: + zone: us-central1-a + tier: db-custom-2-7680 diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqluser/_generated_object_sqluser.golden.yaml b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqluser/_generated_object_sqluser.golden.yaml index 8e4d5f08af..d13687e3d9 100644 --- a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqluser/_generated_object_sqluser.golden.yaml +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqluser/_generated_object_sqluser.golden.yaml @@ -26,7 +26,6 @@ spec: key: password name: sqluser-dep-${uniqueId} resourceID: sqluser-${uniqueId} - type: BUILT_IN status: conditions: - lastTransitionTime: "1970-01-01T00:00:00Z" diff --git a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqluser/_http.log b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqluser/_http.log index 596557b737..67c740710f 100644 --- a/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqluser/_http.log +++ b/pkg/test/resourcefixture/testdata/basic/sql/v1beta1/sqluser/_http.log @@ -2,12 +2,28 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 404 Not Found -Content-Type: application/json +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "code": 5, - "details": [], - "message": "databaseInstance \"projects/${projectId}/SQLInstances/sqluser-dep-${uniqueId}\" not found" + "error": { + "code": 404, + "errors": [ + { + "domain": "global", + "message": "The Cloud SQL instance does not exist.", + "reason": "instanceDoesNotExist" + } + ], + "message": "The Cloud SQL instance does not exist." + } } --- @@ -36,22 +52,22 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr } 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "CREATE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqluser-dep-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqluser-dep-${uniqueId}", @@ -65,34 +81,28 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { "items": [ { "etag": "abcdef0123A=", - "host": "%", + "host": "", "instance": "sqluser-dep-${uniqueId}", "kind": "sql#user", "name": "root", - "password": "", - "passwordPolicy": { - "allowedFailedAttempts": 0, - "enableFailedAttemptsCheck": false, - "enablePasswordVerification": false, - "passwordExpirationDuration": null, - "status": { - "locked": false, - "passwordExpirationTime": null - } - }, - "project": "${projectId}", - "type": "BUILT_IN" + "project": "${projectId}" } ], - "kind": "sql#usersList", - "nextPageToken": "" + "kind": "sql#usersList" } --- @@ -101,22 +111,22 @@ DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instanc User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "DELETE_USER", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqluser-dep-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqluser-dep-${uniqueId}", @@ -130,45 +140,41 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqluser-dep-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, "databaseInstalledVersion": "MYSQL_5_7_44", "databaseVersion": "MYSQL_5_7", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "gceZone": "us-central1-a", + "geminiConfig": { + "entitled": false, + "flagRecommenderEnabled": false, + "indexAdvisorEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" } ], - "ipv6Address": "", "kind": "sql#instance", "maintenanceVersion": "MYSQL_5_7_44.R20231105.01_03", - "masterInstanceName": "", - "maxDiskSize": null, "name": "sqluser-dep-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqluser-dep-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -178,14 +184,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqluser-dep-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "ZONAL", "backupConfiguration": { @@ -193,53 +196,34 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 7, "retentionUnit": "COUNT" }, - "binaryLogEnabled": null, "enabled": false, "kind": "sql#backupConfiguration", - "location": "", - "pointInTimeRecoveryEnabled": false, - "replicationLogArchivingEnabled": null, - "startTime": "21:00", - "transactionLogRetentionDays": 7 + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "10", "dataDiskType": "PD_SSD", - "databaseFlags": [], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", - "insightsConfig": null, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], - "enablePrivatePathForGoogleCloudServices": null, "ipv4Enabled": true, - "privateNetwork": "", "requireSsl": false, "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, - "maintenanceWindow": null, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "1", - "sqlServerAuditConfig": null, + "settingsVersion": "123", "storageAutoResize": true, "storageAutoResizeLimit": "0", "tier": "db-n1-standard-1", - "timeZone": "", "userLabels": { "cnrm-test": "true", "managed-by-cnrm": "true" @@ -247,7 +231,78 @@ Grpc-Metadata-Content-Type: application/grpc }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", "state": "RUNNABLE", - "suspensionReason": [] + "upgradableDatabaseVersions": [ + { + "displayName": "MySQL 8.0", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0" + }, + { + "displayName": "MySQL 8.0.18", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_18" + }, + { + "displayName": "MySQL 8.0.26", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_26" + }, + { + "displayName": "MySQL 8.0.27", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_27" + }, + { + "displayName": "MySQL 8.0.28", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_28" + }, + { + "displayName": "MySQL 8.0.29", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_29" + }, + { + "displayName": "MySQL 8.0.30", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_30" + }, + { + "displayName": "MySQL 8.0.31", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_31" + }, + { + "displayName": "MySQL 8.0.32", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_32" + }, + { + "displayName": "MySQL 8.0.33", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_33" + }, + { + "displayName": "MySQL 8.0.34", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_34" + }, + { + "displayName": "MySQL 8.0.35", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_35" + }, + { + "displayName": "MySQL 8.0.36", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_36" + }, + { + "displayName": "MySQL 8.0.37", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_37" + } + ] } --- @@ -256,13 +311,18 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "items": [], - "kind": "sql#usersList", - "nextPageToken": "" + "kind": "sql#usersList" } --- @@ -271,45 +331,41 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqluser-dep-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, "databaseInstalledVersion": "MYSQL_5_7_44", "databaseVersion": "MYSQL_5_7", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "gceZone": "us-central1-a", + "geminiConfig": { + "entitled": false, + "flagRecommenderEnabled": false, + "indexAdvisorEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" } ], - "ipv6Address": "", "kind": "sql#instance", "maintenanceVersion": "MYSQL_5_7_44.R20231105.01_03", - "masterInstanceName": "", - "maxDiskSize": null, "name": "sqluser-dep-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqluser-dep-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -319,14 +375,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqluser-dep-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "ZONAL", "backupConfiguration": { @@ -334,53 +387,34 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 7, "retentionUnit": "COUNT" }, - "binaryLogEnabled": null, "enabled": false, "kind": "sql#backupConfiguration", - "location": "", - "pointInTimeRecoveryEnabled": false, - "replicationLogArchivingEnabled": null, - "startTime": "21:00", - "transactionLogRetentionDays": 7 + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "10", "dataDiskType": "PD_SSD", - "databaseFlags": [], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", - "insightsConfig": null, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], - "enablePrivatePathForGoogleCloudServices": null, "ipv4Enabled": true, - "privateNetwork": "", "requireSsl": false, "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, - "maintenanceWindow": null, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "1", - "sqlServerAuditConfig": null, + "settingsVersion": "123", "storageAutoResize": true, "storageAutoResizeLimit": "0", "tier": "db-n1-standard-1", - "timeZone": "", "userLabels": { "cnrm-test": "true", "managed-by-cnrm": "true" @@ -388,7 +422,78 @@ Grpc-Metadata-Content-Type: application/grpc }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", "state": "RUNNABLE", - "suspensionReason": [] + "upgradableDatabaseVersions": [ + { + "displayName": "MySQL 8.0", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0" + }, + { + "displayName": "MySQL 8.0.18", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_18" + }, + { + "displayName": "MySQL 8.0.26", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_26" + }, + { + "displayName": "MySQL 8.0.27", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_27" + }, + { + "displayName": "MySQL 8.0.28", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_28" + }, + { + "displayName": "MySQL 8.0.29", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_29" + }, + { + "displayName": "MySQL 8.0.30", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_30" + }, + { + "displayName": "MySQL 8.0.31", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_31" + }, + { + "displayName": "MySQL 8.0.32", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_32" + }, + { + "displayName": "MySQL 8.0.33", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_33" + }, + { + "displayName": "MySQL 8.0.34", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_34" + }, + { + "displayName": "MySQL 8.0.35", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_35" + }, + { + "displayName": "MySQL 8.0.36", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_36" + }, + { + "displayName": "MySQL 8.0.37", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_37" + } + ] } --- @@ -405,22 +510,22 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr } 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "CREATE_USER", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqluser-dep-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqluser-dep-${uniqueId}", @@ -434,34 +539,29 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { "items": [ { "etag": "abcdef0123A=", - "host": "foo", + "host": "", "instance": "sqluser-dep-${uniqueId}", "kind": "sql#user", "name": "sqluser-${uniqueId}", "password": "password", - "passwordPolicy": { - "allowedFailedAttempts": 0, - "enableFailedAttemptsCheck": false, - "enablePasswordVerification": false, - "passwordExpirationDuration": null, - "status": { - "locked": false, - "passwordExpirationTime": null - } - }, - "project": "${projectId}", - "type": "BUILT_IN" + "project": "${projectId}" } ], - "kind": "sql#usersList", - "nextPageToken": "" + "kind": "sql#usersList" } --- @@ -470,45 +570,41 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqluser-dep-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, "databaseInstalledVersion": "MYSQL_5_7_44", "databaseVersion": "MYSQL_5_7", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "gceZone": "us-central1-a", + "geminiConfig": { + "entitled": false, + "flagRecommenderEnabled": false, + "indexAdvisorEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" } ], - "ipv6Address": "", "kind": "sql#instance", "maintenanceVersion": "MYSQL_5_7_44.R20231105.01_03", - "masterInstanceName": "", - "maxDiskSize": null, "name": "sqluser-dep-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqluser-dep-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -518,14 +614,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqluser-dep-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "ZONAL", "backupConfiguration": { @@ -533,53 +626,34 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 7, "retentionUnit": "COUNT" }, - "binaryLogEnabled": null, "enabled": false, "kind": "sql#backupConfiguration", - "location": "", - "pointInTimeRecoveryEnabled": false, - "replicationLogArchivingEnabled": null, - "startTime": "21:00", - "transactionLogRetentionDays": 7 + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "10", "dataDiskType": "PD_SSD", - "databaseFlags": [], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", - "insightsConfig": null, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], - "enablePrivatePathForGoogleCloudServices": null, "ipv4Enabled": true, - "privateNetwork": "", "requireSsl": false, "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, - "maintenanceWindow": null, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "1", - "sqlServerAuditConfig": null, + "settingsVersion": "123", "storageAutoResize": true, "storageAutoResizeLimit": "0", "tier": "db-n1-standard-1", - "timeZone": "", "userLabels": { "cnrm-test": "true", "managed-by-cnrm": "true" @@ -587,7 +661,78 @@ Grpc-Metadata-Content-Type: application/grpc }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", "state": "RUNNABLE", - "suspensionReason": [] + "upgradableDatabaseVersions": [ + { + "displayName": "MySQL 8.0", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0" + }, + { + "displayName": "MySQL 8.0.18", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_18" + }, + { + "displayName": "MySQL 8.0.26", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_26" + }, + { + "displayName": "MySQL 8.0.27", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_27" + }, + { + "displayName": "MySQL 8.0.28", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_28" + }, + { + "displayName": "MySQL 8.0.29", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_29" + }, + { + "displayName": "MySQL 8.0.30", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_30" + }, + { + "displayName": "MySQL 8.0.31", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_31" + }, + { + "displayName": "MySQL 8.0.32", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_32" + }, + { + "displayName": "MySQL 8.0.33", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_33" + }, + { + "displayName": "MySQL 8.0.34", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_34" + }, + { + "displayName": "MySQL 8.0.35", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_35" + }, + { + "displayName": "MySQL 8.0.36", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_36" + }, + { + "displayName": "MySQL 8.0.37", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_37" + } + ] } --- @@ -596,34 +741,29 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { "items": [ { "etag": "abcdef0123A=", - "host": "foo", + "host": "", "instance": "sqluser-dep-${uniqueId}", "kind": "sql#user", "name": "sqluser-${uniqueId}", "password": "password", - "passwordPolicy": { - "allowedFailedAttempts": 0, - "enableFailedAttemptsCheck": false, - "enablePasswordVerification": false, - "passwordExpirationDuration": null, - "status": { - "locked": false, - "passwordExpirationTime": null - } - }, - "project": "${projectId}", - "type": "BUILT_IN" + "project": "${projectId}" } ], - "kind": "sql#usersList", - "nextPageToken": "" + "kind": "sql#usersList" } --- @@ -632,45 +772,41 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqluser-dep-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, "databaseInstalledVersion": "MYSQL_5_7_44", "databaseVersion": "MYSQL_5_7", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "gceZone": "us-central1-a", + "geminiConfig": { + "entitled": false, + "flagRecommenderEnabled": false, + "indexAdvisorEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" } ], - "ipv6Address": "", "kind": "sql#instance", "maintenanceVersion": "MYSQL_5_7_44.R20231105.01_03", - "masterInstanceName": "", - "maxDiskSize": null, "name": "sqluser-dep-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqluser-dep-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -680,14 +816,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqluser-dep-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "ZONAL", "backupConfiguration": { @@ -695,53 +828,34 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 7, "retentionUnit": "COUNT" }, - "binaryLogEnabled": null, "enabled": false, "kind": "sql#backupConfiguration", - "location": "", - "pointInTimeRecoveryEnabled": false, - "replicationLogArchivingEnabled": null, - "startTime": "21:00", - "transactionLogRetentionDays": 7 + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "10", "dataDiskType": "PD_SSD", - "databaseFlags": [], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", - "insightsConfig": null, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], - "enablePrivatePathForGoogleCloudServices": null, "ipv4Enabled": true, - "privateNetwork": "", "requireSsl": false, "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, - "maintenanceWindow": null, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "1", - "sqlServerAuditConfig": null, + "settingsVersion": "123", "storageAutoResize": true, "storageAutoResizeLimit": "0", "tier": "db-n1-standard-1", - "timeZone": "", "userLabels": { "cnrm-test": "true", "managed-by-cnrm": "true" @@ -749,7 +863,78 @@ Grpc-Metadata-Content-Type: application/grpc }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", "state": "RUNNABLE", - "suspensionReason": [] + "upgradableDatabaseVersions": [ + { + "displayName": "MySQL 8.0", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0" + }, + { + "displayName": "MySQL 8.0.18", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_18" + }, + { + "displayName": "MySQL 8.0.26", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_26" + }, + { + "displayName": "MySQL 8.0.27", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_27" + }, + { + "displayName": "MySQL 8.0.28", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_28" + }, + { + "displayName": "MySQL 8.0.29", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_29" + }, + { + "displayName": "MySQL 8.0.30", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_30" + }, + { + "displayName": "MySQL 8.0.31", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_31" + }, + { + "displayName": "MySQL 8.0.32", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_32" + }, + { + "displayName": "MySQL 8.0.33", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_33" + }, + { + "displayName": "MySQL 8.0.34", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_34" + }, + { + "displayName": "MySQL 8.0.35", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_35" + }, + { + "displayName": "MySQL 8.0.36", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_36" + }, + { + "displayName": "MySQL 8.0.37", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_37" + } + ] } --- @@ -758,34 +943,29 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { "items": [ { "etag": "abcdef0123A=", - "host": "foo", + "host": "", "instance": "sqluser-dep-${uniqueId}", "kind": "sql#user", "name": "sqluser-${uniqueId}", "password": "password", - "passwordPolicy": { - "allowedFailedAttempts": 0, - "enableFailedAttemptsCheck": false, - "enablePasswordVerification": false, - "passwordExpirationDuration": null, - "status": { - "locked": false, - "passwordExpirationTime": null - } - }, - "project": "${projectId}", - "type": "BUILT_IN" + "project": "${projectId}" } ], - "kind": "sql#usersList", - "nextPageToken": "" + "kind": "sql#usersList" } --- @@ -794,45 +974,41 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqluser-dep-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, "databaseInstalledVersion": "MYSQL_5_7_44", "databaseVersion": "MYSQL_5_7", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "gceZone": "us-central1-a", + "geminiConfig": { + "entitled": false, + "flagRecommenderEnabled": false, + "indexAdvisorEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" } ], - "ipv6Address": "", "kind": "sql#instance", "maintenanceVersion": "MYSQL_5_7_44.R20231105.01_03", - "masterInstanceName": "", - "maxDiskSize": null, "name": "sqluser-dep-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqluser-dep-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -842,14 +1018,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqluser-dep-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "ZONAL", "backupConfiguration": { @@ -857,53 +1030,34 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 7, "retentionUnit": "COUNT" }, - "binaryLogEnabled": null, "enabled": false, "kind": "sql#backupConfiguration", - "location": "", - "pointInTimeRecoveryEnabled": false, - "replicationLogArchivingEnabled": null, - "startTime": "21:00", - "transactionLogRetentionDays": 7 + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "10", "dataDiskType": "PD_SSD", - "databaseFlags": [], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", - "insightsConfig": null, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], - "enablePrivatePathForGoogleCloudServices": null, "ipv4Enabled": true, - "privateNetwork": "", "requireSsl": false, "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, - "maintenanceWindow": null, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "1", - "sqlServerAuditConfig": null, + "settingsVersion": "123", "storageAutoResize": true, "storageAutoResizeLimit": "0", "tier": "db-n1-standard-1", - "timeZone": "", "userLabels": { "cnrm-test": "true", "managed-by-cnrm": "true" @@ -911,7 +1065,78 @@ Grpc-Metadata-Content-Type: application/grpc }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", "state": "RUNNABLE", - "suspensionReason": [] + "upgradableDatabaseVersions": [ + { + "displayName": "MySQL 8.0", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0" + }, + { + "displayName": "MySQL 8.0.18", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_18" + }, + { + "displayName": "MySQL 8.0.26", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_26" + }, + { + "displayName": "MySQL 8.0.27", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_27" + }, + { + "displayName": "MySQL 8.0.28", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_28" + }, + { + "displayName": "MySQL 8.0.29", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_29" + }, + { + "displayName": "MySQL 8.0.30", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_30" + }, + { + "displayName": "MySQL 8.0.31", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_31" + }, + { + "displayName": "MySQL 8.0.32", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_32" + }, + { + "displayName": "MySQL 8.0.33", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_33" + }, + { + "displayName": "MySQL 8.0.34", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_34" + }, + { + "displayName": "MySQL 8.0.35", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_35" + }, + { + "displayName": "MySQL 8.0.36", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_36" + }, + { + "displayName": "MySQL 8.0.37", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_37" + } + ] } --- @@ -920,22 +1145,22 @@ DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instanc User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "DELETE_USER", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqluser-dep-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqluser-dep-${uniqueId}", @@ -949,45 +1174,41 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqluser-dep-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, "databaseInstalledVersion": "MYSQL_5_7_44", "databaseVersion": "MYSQL_5_7", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "gceZone": "us-central1-a", + "geminiConfig": { + "entitled": false, + "flagRecommenderEnabled": false, + "indexAdvisorEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" } ], - "ipv6Address": "", "kind": "sql#instance", "maintenanceVersion": "MYSQL_5_7_44.R20231105.01_03", - "masterInstanceName": "", - "maxDiskSize": null, "name": "sqluser-dep-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqluser-dep-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -997,14 +1218,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqluser-dep-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "ZONAL", "backupConfiguration": { @@ -1012,53 +1230,34 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 7, "retentionUnit": "COUNT" }, - "binaryLogEnabled": null, "enabled": false, "kind": "sql#backupConfiguration", - "location": "", - "pointInTimeRecoveryEnabled": false, - "replicationLogArchivingEnabled": null, - "startTime": "21:00", - "transactionLogRetentionDays": 7 + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "10", "dataDiskType": "PD_SSD", - "databaseFlags": [], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", - "insightsConfig": null, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], - "enablePrivatePathForGoogleCloudServices": null, "ipv4Enabled": true, - "privateNetwork": "", "requireSsl": false, "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, - "maintenanceWindow": null, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "1", - "sqlServerAuditConfig": null, + "settingsVersion": "123", "storageAutoResize": true, "storageAutoResizeLimit": "0", "tier": "db-n1-standard-1", - "timeZone": "", "userLabels": { "cnrm-test": "true", "managed-by-cnrm": "true" @@ -1066,7 +1265,78 @@ Grpc-Metadata-Content-Type: application/grpc }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", "state": "RUNNABLE", - "suspensionReason": [] + "upgradableDatabaseVersions": [ + { + "displayName": "MySQL 8.0", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0" + }, + { + "displayName": "MySQL 8.0.18", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_18" + }, + { + "displayName": "MySQL 8.0.26", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_26" + }, + { + "displayName": "MySQL 8.0.27", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_27" + }, + { + "displayName": "MySQL 8.0.28", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_28" + }, + { + "displayName": "MySQL 8.0.29", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_29" + }, + { + "displayName": "MySQL 8.0.30", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_30" + }, + { + "displayName": "MySQL 8.0.31", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_31" + }, + { + "displayName": "MySQL 8.0.32", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_32" + }, + { + "displayName": "MySQL 8.0.33", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_33" + }, + { + "displayName": "MySQL 8.0.34", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_34" + }, + { + "displayName": "MySQL 8.0.35", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_35" + }, + { + "displayName": "MySQL 8.0.36", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_36" + }, + { + "displayName": "MySQL 8.0.37", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_37" + } + ] } --- @@ -1075,22 +1345,22 @@ DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instanc User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "DELETE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqluser-dep-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqluser-dep-${uniqueId}", diff --git a/pkg/test/resourcefixture/testdata/iammemberreferences/sqlinstanceref/_http.log b/pkg/test/resourcefixture/testdata/iammemberreferences/sqlinstanceref/_http.log index 7ba9a44b48..5bb032b5bf 100644 --- a/pkg/test/resourcefixture/testdata/iammemberreferences/sqlinstanceref/_http.log +++ b/pkg/test/resourcefixture/testdata/iammemberreferences/sqlinstanceref/_http.log @@ -2,12 +2,28 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 404 Not Found -Content-Type: application/json +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "code": 5, - "details": [], - "message": "databaseInstance \"projects/${projectId}/SQLInstances/sqlinstance-${uniqueId}\" not found" + "error": { + "code": 404, + "errors": [ + { + "domain": "global", + "message": "The Cloud SQL instance does not exist.", + "reason": "instanceDoesNotExist" + } + ], + "message": "The Cloud SQL instance does not exist." + } } --- @@ -36,22 +52,22 @@ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terr } 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "CREATE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-${uniqueId}", @@ -65,34 +81,28 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { "items": [ { "etag": "abcdef0123A=", - "host": "%", + "host": "", "instance": "sqlinstance-${uniqueId}", "kind": "sql#user", "name": "root", - "password": "", - "passwordPolicy": { - "allowedFailedAttempts": 0, - "enableFailedAttemptsCheck": false, - "enablePasswordVerification": false, - "passwordExpirationDuration": null, - "status": { - "locked": false, - "passwordExpirationTime": null - } - }, - "project": "${projectId}", - "type": "BUILT_IN" + "project": "${projectId}" } ], - "kind": "sql#usersList", - "nextPageToken": "" + "kind": "sql#usersList" } --- @@ -101,22 +111,22 @@ DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instanc User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "DELETE_USER", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-${uniqueId}", @@ -130,45 +140,41 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqlinstance-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, "databaseInstalledVersion": "MYSQL_5_7_44", "databaseVersion": "MYSQL_5_7", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "gceZone": "us-central1-a", + "geminiConfig": { + "entitled": false, + "flagRecommenderEnabled": false, + "indexAdvisorEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" } ], - "ipv6Address": "", "kind": "sql#instance", "maintenanceVersion": "MYSQL_5_7_44.R20231105.01_03", - "masterInstanceName": "", - "maxDiskSize": null, "name": "sqlinstance-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -178,14 +184,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqlinstance-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "ZONAL", "backupConfiguration": { @@ -193,53 +196,34 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 7, "retentionUnit": "COUNT" }, - "binaryLogEnabled": null, "enabled": false, "kind": "sql#backupConfiguration", - "location": "", - "pointInTimeRecoveryEnabled": false, - "replicationLogArchivingEnabled": null, - "startTime": "21:00", - "transactionLogRetentionDays": 7 + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "10", "dataDiskType": "PD_SSD", - "databaseFlags": [], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", - "insightsConfig": null, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], - "enablePrivatePathForGoogleCloudServices": null, "ipv4Enabled": true, - "privateNetwork": "", "requireSsl": false, "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, - "maintenanceWindow": null, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "1", - "sqlServerAuditConfig": null, + "settingsVersion": "123", "storageAutoResize": true, "storageAutoResizeLimit": "0", "tier": "db-n1-standard-1", - "timeZone": "", "userLabels": { "cnrm-test": "true", "managed-by-cnrm": "true" @@ -247,7 +231,78 @@ Grpc-Metadata-Content-Type: application/grpc }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", "state": "RUNNABLE", - "suspensionReason": [] + "upgradableDatabaseVersions": [ + { + "displayName": "MySQL 8.0", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0" + }, + { + "displayName": "MySQL 8.0.18", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_18" + }, + { + "displayName": "MySQL 8.0.26", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_26" + }, + { + "displayName": "MySQL 8.0.27", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_27" + }, + { + "displayName": "MySQL 8.0.28", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_28" + }, + { + "displayName": "MySQL 8.0.29", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_29" + }, + { + "displayName": "MySQL 8.0.30", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_30" + }, + { + "displayName": "MySQL 8.0.31", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_31" + }, + { + "displayName": "MySQL 8.0.32", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_32" + }, + { + "displayName": "MySQL 8.0.33", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_33" + }, + { + "displayName": "MySQL 8.0.34", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_34" + }, + { + "displayName": "MySQL 8.0.35", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_35" + }, + { + "displayName": "MySQL 8.0.36", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_36" + }, + { + "displayName": "MySQL 8.0.37", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_37" + } + ] } --- @@ -485,45 +540,41 @@ GET https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/ User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "availableMaintenanceVersions": [], "backendType": "SECOND_GEN", "connectionName": "${projectId}:us-central1:sqlinstance-${uniqueId}", "createTime": "2024-04-01T12:34:56.123456Z", - "currentDiskSize": null, "databaseInstalledVersion": "MYSQL_5_7_44", "databaseVersion": "MYSQL_5_7", - "diskEncryptionConfiguration": null, - "diskEncryptionStatus": null, "etag": "abcdef0123A=", - "failoverReplica": null, - "gceZone": "us-central1-c", - "instanceType": "SQL_INSTANCE_TYPE_UNSPECIFIED", + "gceZone": "us-central1-a", + "geminiConfig": { + "entitled": false, + "flagRecommenderEnabled": false, + "indexAdvisorEnabled": false + }, + "instanceType": "CLOUD_SQL_INSTANCE", "ipAddresses": [ { - "ipAddress": "10.10.10.10", - "timeToRetire": null, + "ipAddress": "10.1.2.3", "type": "PRIMARY" } ], - "ipv6Address": "", "kind": "sql#instance", "maintenanceVersion": "MYSQL_5_7_44.R20231105.01_03", - "masterInstanceName": "", - "maxDiskSize": null, "name": "sqlinstance-${uniqueId}", - "onPremisesConfiguration": null, "project": "${projectId}", "region": "us-central1", - "replicaConfiguration": null, - "replicaNames": [], - "rootPassword": "", - "satisfiesPzs": null, - "scheduledMaintenance": null, - "secondaryGceZone": "", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-${uniqueId}", "serverCaCert": { "cert": "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n", @@ -533,14 +584,11 @@ Grpc-Metadata-Content-Type: application/grpc "expirationTime": "2024-04-01T12:34:56.123456Z", "instance": "sqlinstance-${uniqueId}", "kind": "sql#sslCert", - "selfLink": "", "sha1Fingerprint": "12345678" }, "serviceAccountEmailAddress": "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com", "settings": { "activationPolicy": "ALWAYS", - "activeDirectoryConfig": null, - "advancedMachineFeatures": null, "authorizedGaeApplications": [], "availabilityType": "ZONAL", "backupConfiguration": { @@ -548,53 +596,34 @@ Grpc-Metadata-Content-Type: application/grpc "retainedBackups": 7, "retentionUnit": "COUNT" }, - "binaryLogEnabled": null, "enabled": false, "kind": "sql#backupConfiguration", - "location": "", - "pointInTimeRecoveryEnabled": false, - "replicationLogArchivingEnabled": null, - "startTime": "21:00", - "transactionLogRetentionDays": 7 + "startTime": "12:00", + "transactionLogRetentionDays": 7, + "transactionalLogStorageState": "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" }, - "collation": "", "connectorEnforcement": "NOT_REQUIRED", - "crashSafeReplicationEnabled": null, - "dataCacheConfig": null, "dataDiskSizeGb": "10", "dataDiskType": "PD_SSD", - "databaseFlags": [], - "databaseReplicationEnabled": null, "deletionProtectionEnabled": false, - "denyMaintenancePeriods": [], "edition": "ENTERPRISE", - "insightsConfig": null, "ipConfiguration": { - "allocatedIpRange": "", "authorizedNetworks": [], - "enablePrivatePathForGoogleCloudServices": null, "ipv4Enabled": true, - "privateNetwork": "", "requireSsl": false, "sslMode": "ALLOW_UNENCRYPTED_AND_ENCRYPTED" }, "kind": "sql#settings", "locationPreference": { - "followGaeApplication": "", "kind": "sql#locationPreference", - "secondaryZone": "", - "zone": "us-central1-c" + "zone": "us-central1-a" }, - "maintenanceWindow": null, - "passwordValidationPolicy": null, "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", - "settingsVersion": "1", - "sqlServerAuditConfig": null, + "settingsVersion": "123", "storageAutoResize": true, "storageAutoResizeLimit": "0", "tier": "db-n1-standard-1", - "timeZone": "", "userLabels": { "cnrm-test": "true", "managed-by-cnrm": "true" @@ -602,7 +631,78 @@ Grpc-Metadata-Content-Type: application/grpc }, "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", "state": "RUNNABLE", - "suspensionReason": [] + "upgradableDatabaseVersions": [ + { + "displayName": "MySQL 8.0", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0" + }, + { + "displayName": "MySQL 8.0.18", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_18" + }, + { + "displayName": "MySQL 8.0.26", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_26" + }, + { + "displayName": "MySQL 8.0.27", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_27" + }, + { + "displayName": "MySQL 8.0.28", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_28" + }, + { + "displayName": "MySQL 8.0.29", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_29" + }, + { + "displayName": "MySQL 8.0.30", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_30" + }, + { + "displayName": "MySQL 8.0.31", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_31" + }, + { + "displayName": "MySQL 8.0.32", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_32" + }, + { + "displayName": "MySQL 8.0.33", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_33" + }, + { + "displayName": "MySQL 8.0.34", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_34" + }, + { + "displayName": "MySQL 8.0.35", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_35" + }, + { + "displayName": "MySQL 8.0.36", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_36" + }, + { + "displayName": "MySQL 8.0.37", + "majorVersion": "MYSQL_8_0", + "name": "MYSQL_8_0_37" + } + ] } --- @@ -611,22 +711,22 @@ DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instanc User-Agent: google-api-go-client/0.5 Terraform/ (+https://www.terraform.io) Terraform-Plugin-SDK/2.10.1 terraform-provider-google-beta/kcc/controller-manager 200 OK -Content-Type: application/json -Grpc-Metadata-Content-Type: application/grpc +Cache-Control: private +Content-Type: application/json; charset=UTF-8 +Server: ESF +Vary: Origin +Vary: X-Origin +Vary: Referer +X-Content-Type-Options: nosniff +X-Frame-Options: SAMEORIGIN +X-Xss-Protection: 0 { - "apiWarning": null, - "backupContext": null, - "endTime": null, - "error": null, - "exportContext": null, - "importContext": null, "insertTime": "2024-04-01T12:34:56.123456Z", "kind": "sql#operation", "name": "${operationID}", "operationType": "DELETE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/operations/${operationID}", - "startTime": "2024-04-01T12:34:56.123456Z", "status": "PENDING", "targetId": "sqlinstance-${uniqueId}", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/${projectId}/instances/sqlinstance-${uniqueId}", diff --git a/scripts/generate-google3-docs/resource-reference/generated/resource-docs/sql/sqlinstance.md b/scripts/generate-google3-docs/resource-reference/generated/resource-docs/sql/sqlinstance.md index ae8db87f80..94f17cbac9 100644 --- a/scripts/generate-google3-docs/resource-reference/generated/resource-docs/sql/sqlinstance.md +++ b/scripts/generate-google3-docs/resource-reference/generated/resource-docs/sql/sqlinstance.md @@ -1855,7 +1855,7 @@ spec: ipConfiguration: requireSsl: true locationPreference: - zone: us-central1-c + zone: us-central1-a ``` ### Postgres SQL Instance High Availability diff --git a/tests/e2e/normalize.go b/tests/e2e/normalize.go index fac7fb8148..183ffe98b3 100644 --- a/tests/e2e/normalize.go +++ b/tests/e2e/normalize.go @@ -63,9 +63,6 @@ func normalizeKRMObject(u *unstructured.Unstructured, project testgcp.GCPProject visitor.replacePaths[".status.observedState.etag"] = "abcdef123456" visitor.replacePaths[".status.observedState.creationTimestamp"] = "1970-01-01T00:00:00Z" - // Specific to Sql - visitor.replacePaths[".items[].etag"] = "abcdef0123A=" - // Specific to AlloyDB visitor.replacePaths[".status.continuousBackupInfo[].enabledTime"] = "1970-01-01T00:00:00Z" visitor.replacePaths[".status.ipAddress"] = "10.1.2.3" @@ -73,9 +70,17 @@ func normalizeKRMObject(u *unstructured.Unstructured, project testgcp.GCPProject // Specific to BigQuery visitor.replacePaths[".spec.access[].userByEmail"] = "user@google.com" - // Specific to postgresinstance + // Specific to Sql + visitor.replacePaths[".items[].etag"] = "abcdef0123A=" + visitor.replacePaths[".status.firstIpAddress"] = "10.1.2.3" + visitor.replacePaths[".status.publicIpAddress"] = "10.1.2.3" + visitor.replacePaths[".status.ipAddress"] = "10.1.2.3" + visitor.replacePaths[".status.serverCaCert.cert"] = "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n" + visitor.replacePaths[".status.serverCaCert.commonName"] = "common-name" visitor.replacePaths[".status.serverCaCert.createTime"] = "1970-01-01T00:00:00Z" visitor.replacePaths[".status.serverCaCert.expirationTime"] = "1970-01-01T00:00:00Z" + visitor.replacePaths[".status.serverCaCert.sha1Fingerprint"] = "12345678" + visitor.replacePaths[".status.serviceAccountEmailAddress"] = "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com" // Specific to VertexAI visitor.replacePaths[".status.blobStoragePathPrefix"] = "cloud-ai-platform-00000000-1111-2222-3333-444444444444" diff --git a/tests/e2e/unified_test.go b/tests/e2e/unified_test.go index e974c5ece2..191c744004 100644 --- a/tests/e2e/unified_test.go +++ b/tests/e2e/unified_test.go @@ -395,6 +395,10 @@ func runScenario(ctx context.Context, t *testing.T, testPause bool, fixture reso if !strings.Contains(s, "/") && strings.HasPrefix(s, "operation") { id = s } + // SQL operations require a special case. + if kind, ok := body["kind"]; ok && kind == "sql#operation" { + id = s + } } if id != "" { operationIDs[id] = true @@ -622,8 +626,82 @@ func runScenario(ctx context.Context, t *testing.T, testPause bool, fixture reso addSetStringReplacement(".mutationRecords[].mutatedBy", "user@example.com") // Specific to Sql + addSetStringReplacement(".ipAddresses[].ipAddress", "10.1.2.3") + addReplacement("serverCaCert.cert", "-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n") + addReplacement("serverCaCert.commonName", "common-name") addReplacement("serverCaCert.createTime", "2024-04-01T12:34:56.123456Z") addReplacement("serverCaCert.expirationTime", "2024-04-01T12:34:56.123456Z") + addReplacement("serverCaCert.sha1Fingerprint", "12345678") + addReplacement("serviceAccountEmailAddress", "p${projectNumber}-abcdef@gcp-sa-cloud-sql.iam.gserviceaccount.com") + addReplacement("settings.backupConfiguration.startTime", "12:00") + addReplacement("settings.settingsVersion", "123") + jsonMutators = append(jsonMutators, func(obj map[string]any) { + if val, found, err := unstructured.NestedString(obj, "kind"); err != nil || !found || val != "sql#instance" { + // Only run this mutator for sql instance objects. + return + } + if _, found, _ := unstructured.NestedString(obj, "state"); !found { + // Only run this mutator for response objects. This is a hack to identify response objects + // for database instances, because they include the state field (as opposed to requests, + // which do not). + return + } + if _, found, _ := unstructured.NestedMap(obj, "settings"); found { + if _, found, _ := unstructured.NestedStringSlice(obj, "settings", "authorizedGaeApplications"); !found { + // Include settings.authorizedGaeApplications in response, even if it's empty. + var val []string + if err := unstructured.SetNestedStringSlice(obj, val, "settings", "authorizedGaeApplications"); err != nil { + t.Fatal(err) + } + } + } + if _, found, _ := unstructured.NestedMap(obj, "settings", "ipConfiguration"); found { + if _, found, _ := unstructured.NestedStringSlice(obj, "settings", "ipConfiguration", "authorizedNetworks"); !found { + // Include settings.ipConfiguration.authorizedNetworks in response, even if it's empty. + var val []string + if err := unstructured.SetNestedStringSlice(obj, val, "settings", "ipConfiguration", "authorizedNetworks"); err != nil { + t.Fatal(err) + } + } + } + if _, found, _ := unstructured.NestedString(obj, "gceZone"); found { + // Hardcode the zone. GCP chooses this zone within the + // region, and it varies based on availability. + if err := unstructured.SetNestedField(obj, "us-central1-a", "gceZone"); err != nil { + t.Fatal(err) + } + } + if ipConfig, found, _ := unstructured.NestedMap(obj, "settings", "ipConfiguration"); found { + // Hack fix: remove unpublished field that's suddenly showing up in real gcp proto responses. + delete(ipConfig, "serverCaMode") + if err := unstructured.SetNestedMap(obj, ipConfig, "settings", "ipConfiguration"); err != nil { + t.Fatal(err) + } + } + }) + jsonMutators = append(jsonMutators, func(obj map[string]any) { + if val, found, err := unstructured.NestedString(obj, "kind"); err != nil || !found || val != "sql#usersList" { + // Only run this mutator for sql users list objects. + return + } + if items, found, _ := unstructured.NestedSlice(obj, "items"); found { + // Include items[].host in response, even if it's empty. + newItems := []interface{}{} + for _, item := range items { + if itemMap, ok := item.(map[string]interface{}); ok { + if _, found, _ := unstructured.NestedStringSlice(itemMap, "host"); !found { + if err := unstructured.SetNestedField(itemMap, "", "host"); err != nil { + t.Fatal(err) + } + } + newItems = append(newItems, itemMap) + } + } + if err := unstructured.SetNestedSlice(obj, newItems, "items"); err != nil { + t.Fatal(err) + } + } + }) // Specific to KMS addSetStringReplacement(".cryptoKeyVersions[].createTime", "2024-04-01T12:34:56.123456Z")