diff --git a/backend/pkg/protogen/redpanda/api/common/v1/options.pb.go b/backend/pkg/protogen/redpanda/api/common/v1/options.pb.go index f82686ab4a..632d9b2d89 100644 --- a/backend/pkg/protogen/redpanda/api/common/v1/options.pb.go +++ b/backend/pkg/protogen/redpanda/api/common/v1/options.pb.go @@ -8,6 +8,7 @@ package commonv1 import ( reflect "reflect" + sync "sync" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" @@ -21,6 +22,152 @@ const ( _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) +// MethodAuthorization defines the authorization requirements for a single-resource RPC. +type MethodAuthorization struct { + state protoimpl.MessageState `protogen:"open.v1"` + // resource_type is the type segment appended to the base resource path, + // e.g. "pipelines", "aiagents", "mcpservers", "knowledgebases". + ResourceType string `protobuf:"bytes,1,opt,name=resource_type,json=resourceType,proto3" json:"resource_type,omitempty"` + // id_getter_cel is a CEL expression to extract the resource ID from the request. + // Available variables: + // - request: the request proto message + // + // e.g. "request.id", "request.pipeline.name", "request.name" + // Empty string means the permission applies at the base resource level + // (no sub-resource scoping). + IdGetterCel string `protobuf:"bytes,2,opt,name=id_getter_cel,json=idGetterCel,proto3" json:"id_getter_cel,omitempty"` + // permission is the permission name to check. + // + // e.g. "dataplane_pipeline_create", "dataplane_aiagent_get" + Permission string `protobuf:"bytes,3,opt,name=permission,proto3" json:"permission,omitempty"` + // skip exempts this method from authorization. The interceptor passes + // through without any permission check. Use for RPCs that must remain + // open (e.g. health checks on the same gRPC server). + // + // e.g.: + // + // option (redpanda.api.common.v1.method_authorization) = { skip: true }; + Skip bool `protobuf:"varint,4,opt,name=skip,proto3" json:"skip,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MethodAuthorization) Reset() { + *x = MethodAuthorization{} + mi := &file_redpanda_api_common_v1_options_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MethodAuthorization) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MethodAuthorization) ProtoMessage() {} + +func (x *MethodAuthorization) ProtoReflect() protoreflect.Message { + mi := &file_redpanda_api_common_v1_options_proto_msgTypes[0] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MethodAuthorization.ProtoReflect.Descriptor instead. +func (*MethodAuthorization) Descriptor() ([]byte, []int) { + return file_redpanda_api_common_v1_options_proto_rawDescGZIP(), []int{0} +} + +func (x *MethodAuthorization) GetResourceType() string { + if x != nil { + return x.ResourceType + } + return "" +} + +func (x *MethodAuthorization) GetIdGetterCel() string { + if x != nil { + return x.IdGetterCel + } + return "" +} + +func (x *MethodAuthorization) GetPermission() string { + if x != nil { + return x.Permission + } + return "" +} + +func (x *MethodAuthorization) GetSkip() bool { + if x != nil { + return x.Skip + } + return false +} + +// CollectionAuthorization defines authorization for list RPCs returning collections. +type CollectionAuthorization struct { + state protoimpl.MessageState `protogen:"open.v1"` + // collection_getter_cel is a CEL expression to extract the collection + // from the response message. + // + // e.g. "response.pipelines", "response.agents" + CollectionGetterCel string `protobuf:"bytes,1,opt,name=collection_getter_cel,json=collectionGetterCel,proto3" json:"collection_getter_cel,omitempty"` + // each defines the permission check applied to each element in the collection. + Each *MethodAuthorization `protobuf:"bytes,2,opt,name=each,proto3" json:"each,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *CollectionAuthorization) Reset() { + *x = CollectionAuthorization{} + mi := &file_redpanda_api_common_v1_options_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *CollectionAuthorization) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CollectionAuthorization) ProtoMessage() {} + +func (x *CollectionAuthorization) ProtoReflect() protoreflect.Message { + mi := &file_redpanda_api_common_v1_options_proto_msgTypes[1] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CollectionAuthorization.ProtoReflect.Descriptor instead. +func (*CollectionAuthorization) Descriptor() ([]byte, []int) { + return file_redpanda_api_common_v1_options_proto_rawDescGZIP(), []int{1} +} + +func (x *CollectionAuthorization) GetCollectionGetterCel() string { + if x != nil { + return x.CollectionGetterCel + } + return "" +} + +func (x *CollectionAuthorization) GetEach() *MethodAuthorization { + if x != nil { + return x.Each + } + return nil +} + var file_redpanda_api_common_v1_options_proto_extTypes = []protoimpl.ExtensionInfo{ { ExtendedType: (*descriptorpb.MethodOptions)(nil), @@ -30,12 +177,74 @@ var file_redpanda_api_common_v1_options_proto_extTypes = []protoimpl.ExtensionIn Tag: "bytes,15351,rep,name=required_permission", Filename: "redpanda/api/common/v1/options.proto", }, + { + ExtendedType: (*descriptorpb.MethodOptions)(nil), + ExtensionType: (*MethodAuthorization)(nil), + Field: 15355, + Name: "redpanda.api.common.v1.method_authorization", + Tag: "bytes,15355,opt,name=method_authorization", + Filename: "redpanda/api/common/v1/options.proto", + }, + { + ExtendedType: (*descriptorpb.MethodOptions)(nil), + ExtensionType: (*CollectionAuthorization)(nil), + Field: 15356, + Name: "redpanda.api.common.v1.collection_authorization", + Tag: "bytes,15356,opt,name=collection_authorization", + Filename: "redpanda/api/common/v1/options.proto", + }, } // Extension fields to descriptorpb.MethodOptions. var ( + // required_permission is a simple permission string required to call this method. + // Use this for methods that don't need per-resource scoping. + // + // e.g.: + // + // option (redpanda.api.common.v1.required_permission) = "dataplane_pipeline_create"; + // // repeated string required_permission = 15351; E_RequiredPermission = &file_redpanda_api_common_v1_options_proto_extTypes[0] + // method_authorization defines the permission and resource extraction + // for single-resource RPCs (create, get, update, delete, start, stop). + // Can also be used to skip authorization entirely via the skip field. + // + // When used together with collection_authorization on the same RPC, + // the interceptor performs BOTH a pre-call permission check (using this + // annotation) AND post-call per-item filtering (using collection_authorization). + // + // e.g.: + // + // option (redpanda.api.common.v1.method_authorization) = { + // resource_type: "pipelines", + // id_getter_cel: "request.pipeline.id", + // permission: "dataplane_pipeline_create" + // }; + // + // optional redpanda.api.common.v1.MethodAuthorization method_authorization = 15355; + E_MethodAuthorization = &file_redpanda_api_common_v1_options_proto_extTypes[1] + // collection_authorization defines per-item filtering for list RPCs that + // return collections of resources. After the handler runs, items the + // principal lacks permission for are removed from the response. + // + // When used alone, the pre-call permission check is skipped — the principal + // may only have permission on specific resources, not at the parent level. + // When used together with method_authorization, the pre-call check also runs. + // + // e.g.: + // + // option (redpanda.api.common.v1.collection_authorization) = { + // collection_getter_cel: "response.pipelines", + // each: { + // resource_type: "pipelines", + // id_getter_cel: "each.id", + // permission: "dataplane_pipeline_list" + // } + // }; + // + // optional redpanda.api.common.v1.CollectionAuthorization collection_authorization = 15356; + E_CollectionAuthorization = &file_redpanda_api_common_v1_options_proto_extTypes[2] ) var File_redpanda_api_common_v1_options_proto protoreflect.FileDescriptor @@ -47,40 +256,95 @@ var file_redpanda_api_common_v1_options_proto_rawDesc = []byte{ 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x3a, 0x50, 0x0a, 0x13, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x65, 0x72, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, - 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xf7, 0x77, 0x20, 0x03, 0x28, 0x09, 0x52, 0x12, - 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x42, 0xfe, 0x01, 0x0a, 0x1a, 0x63, 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, - 0x31, 0x42, 0x0c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, - 0x01, 0x5a, 0x57, 0x62, 0x75, 0x66, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2f, 0x67, 0x65, 0x6e, - 0x2f, 0x67, 0x6f, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, - 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x73, 0x2f, 0x67, 0x6f, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, - 0x31, 0x3b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x43, - 0xaa, 0x02, 0x16, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, - 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x16, 0x52, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5c, - 0x56, 0x31, 0xe2, 0x02, 0x22, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, - 0x69, 0x5c, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x19, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x3a, - 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x22, 0x92, 0x01, 0x0a, 0x13, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x41, 0x75, 0x74, 0x68, 0x6f, + 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, + 0x0d, 0x69, 0x64, 0x5f, 0x67, 0x65, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x65, 0x6c, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x64, 0x47, 0x65, 0x74, 0x74, 0x65, 0x72, 0x43, 0x65, + 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x04, 0x73, 0x6b, 0x69, 0x70, 0x22, 0x8e, 0x01, 0x0a, 0x17, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x67, 0x65, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x13, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x65, 0x74, 0x74, + 0x65, 0x72, 0x43, 0x65, 0x6c, 0x12, 0x3f, 0x0a, 0x04, 0x65, 0x61, 0x63, 0x68, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, + 0x68, 0x6f, 0x64, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x04, 0x65, 0x61, 0x63, 0x68, 0x3a, 0x50, 0x0a, 0x13, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, + 0x65, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xf7, 0x77, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x12, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x50, 0x65, + 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x7f, 0x0a, 0x14, 0x6d, 0x65, 0x74, 0x68, + 0x6f, 0x64, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x18, 0xfb, 0x77, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, + 0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x41, 0x75, 0x74, 0x68, + 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x8b, 0x01, 0x0a, 0x18, 0x63, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xfc, 0x77, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x17, + 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, + 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0xfe, 0x01, 0x0a, 0x1a, 0x63, 0x6f, 0x6d, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x42, 0x0c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x57, 0x62, 0x75, 0x66, 0x2e, 0x62, 0x75, 0x69, 0x6c, + 0x64, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x67, 0x6f, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x73, 0x2f, 0x67, 0x6f, 0x2f, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x3b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x76, 0x31, 0xa2, + 0x02, 0x03, 0x52, 0x41, 0x43, 0xaa, 0x02, 0x16, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x56, 0x31, 0xca, 0x02, + 0x16, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x22, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5c, 0x56, 0x31, + 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x19, 0x52, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x43, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_redpanda_api_common_v1_options_proto_rawDescOnce sync.Once + file_redpanda_api_common_v1_options_proto_rawDescData = file_redpanda_api_common_v1_options_proto_rawDesc +) + +func file_redpanda_api_common_v1_options_proto_rawDescGZIP() []byte { + file_redpanda_api_common_v1_options_proto_rawDescOnce.Do(func() { + file_redpanda_api_common_v1_options_proto_rawDescData = protoimpl.X.CompressGZIP(file_redpanda_api_common_v1_options_proto_rawDescData) + }) + return file_redpanda_api_common_v1_options_proto_rawDescData } +var file_redpanda_api_common_v1_options_proto_msgTypes = make([]protoimpl.MessageInfo, 2) var file_redpanda_api_common_v1_options_proto_goTypes = []any{ - (*descriptorpb.MethodOptions)(nil), // 0: google.protobuf.MethodOptions + (*MethodAuthorization)(nil), // 0: redpanda.api.common.v1.MethodAuthorization + (*CollectionAuthorization)(nil), // 1: redpanda.api.common.v1.CollectionAuthorization + (*descriptorpb.MethodOptions)(nil), // 2: google.protobuf.MethodOptions } var file_redpanda_api_common_v1_options_proto_depIdxs = []int32{ - 0, // 0: redpanda.api.common.v1.required_permission:extendee -> google.protobuf.MethodOptions - 1, // [1:1] is the sub-list for method output_type - 1, // [1:1] is the sub-list for method input_type - 1, // [1:1] is the sub-list for extension type_name - 0, // [0:1] is the sub-list for extension extendee - 0, // [0:0] is the sub-list for field type_name + 0, // 0: redpanda.api.common.v1.CollectionAuthorization.each:type_name -> redpanda.api.common.v1.MethodAuthorization + 2, // 1: redpanda.api.common.v1.required_permission:extendee -> google.protobuf.MethodOptions + 2, // 2: redpanda.api.common.v1.method_authorization:extendee -> google.protobuf.MethodOptions + 2, // 3: redpanda.api.common.v1.collection_authorization:extendee -> google.protobuf.MethodOptions + 0, // 4: redpanda.api.common.v1.method_authorization:type_name -> redpanda.api.common.v1.MethodAuthorization + 1, // 5: redpanda.api.common.v1.collection_authorization:type_name -> redpanda.api.common.v1.CollectionAuthorization + 6, // [6:6] is the sub-list for method output_type + 6, // [6:6] is the sub-list for method input_type + 4, // [4:6] is the sub-list for extension type_name + 1, // [1:4] is the sub-list for extension extendee + 0, // [0:1] is the sub-list for field type_name } func init() { file_redpanda_api_common_v1_options_proto_init() } @@ -94,12 +358,13 @@ func file_redpanda_api_common_v1_options_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_redpanda_api_common_v1_options_proto_rawDesc, NumEnums: 0, - NumMessages: 0, - NumExtensions: 1, + NumMessages: 2, + NumExtensions: 3, NumServices: 0, }, GoTypes: file_redpanda_api_common_v1_options_proto_goTypes, DependencyIndexes: file_redpanda_api_common_v1_options_proto_depIdxs, + MessageInfos: file_redpanda_api_common_v1_options_proto_msgTypes, ExtensionInfos: file_redpanda_api_common_v1_options_proto_extTypes, }.Build() File_redpanda_api_common_v1_options_proto = out.File diff --git a/backend/pkg/protogen/redpanda/api/console/v1alpha1/list_messages.pb.go b/backend/pkg/protogen/redpanda/api/console/v1alpha1/list_messages.pb.go index 430afee288..cb1c63c375 100644 --- a/backend/pkg/protogen/redpanda/api/console/v1alpha1/list_messages.pb.go +++ b/backend/pkg/protogen/redpanda/api/console/v1alpha1/list_messages.pb.go @@ -777,7 +777,7 @@ var file_redpanda_api_console_v1alpha1_list_messages_proto_rawDesc = []byte{ 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x27, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, - 0x42, 0x0a, 0xba, 0x48, 0x07, 0x1a, 0x05, 0x18, 0x90, 0x4e, 0x28, 0x01, 0x52, 0x08, 0x70, 0x61, + 0x42, 0x0a, 0xba, 0x48, 0x07, 0x1a, 0x05, 0x18, 0xf4, 0x03, 0x28, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x64, 0x65, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x64, 0x65, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, diff --git a/backend/pkg/protogen/redpanda/api/dataplane/v1/mcp.pb.go b/backend/pkg/protogen/redpanda/api/dataplane/v1/mcp.pb.go index 3b3dc64462..26db39e00c 100644 --- a/backend/pkg/protogen/redpanda/api/dataplane/v1/mcp.pb.go +++ b/backend/pkg/protogen/redpanda/api/dataplane/v1/mcp.pb.go @@ -1581,142 +1581,27 @@ var file_redpanda_api_dataplane_v1_mcp_proto_rawDesc = []byte{ 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x25, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6c, 0x69, 0x6e, 0x74, - 0x68, 0x69, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf6, 0x0e, 0x0a, 0x09, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, - 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, - 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, - 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, - 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, - 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0xc0, 0x01, 0x0a, 0x05, 0x74, 0x6f, 0x6f, 0x6c, - 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, - 0x6f, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x79, 0x92, 0x41, 0x68, 0x32, 0x66, 0x4d, - 0x61, 0x70, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, - 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20, 0x45, 0x61, 0x63, 0x68, 0x20, 0x74, - 0x6f, 0x6f, 0x6c, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x20, 0x63, 0x61, - 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, - 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x65, 0x78, 0x70, - 0x6f, 0x73, 0x65, 0x73, 0x2e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, 0x9a, 0x01, - 0x02, 0x08, 0x01, 0x52, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x87, 0x02, 0x0a, 0x09, 0x72, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x42, 0xb9, 0x01, - 0x92, 0x41, 0xb5, 0x01, 0x32, 0xb2, 0x01, 0x54, 0x68, 0x65, 0x20, 0x72, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, - 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x20, 0x44, 0x65, 0x70, - 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x62, 0x61, - 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x73, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, 0x75, - 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x64, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x6d, 0x69, 0x67, - 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x74, 0x77, 0x65, 0x61, 0x6b, 0x65, 0x64, 0x20, 0x62, 0x61, - 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x74, 0x69, 0x6c, 0x69, - 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x43, - 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x73, 0x12, 0x71, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, - 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, - 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, - 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, - 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x45, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x48, - 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, - 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x15, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, - 0x67, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x53, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x09, 0xe0, - 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0xc1, 0x02, 0x0a, 0x04, 0x54, 0x6f, 0x6f, - 0x6c, 0x12, 0x6a, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x54, 0x6f, 0x6f, 0x6c, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, - 0x70, 0x65, 0x42, 0x0a, 0xba, 0x48, 0x07, 0x82, 0x01, 0x04, 0x10, 0x01, 0x20, 0x00, 0x52, 0x0d, - 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, - 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x0d, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x07, 0xc8, 0x01, 0x01, 0x72, 0x02, 0x10, - 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x59, 0x61, 0x6d, 0x6c, 0x22, 0x9c, 0x01, - 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x1e, 0x0a, 0x1a, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, - 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, - 0x1c, 0x0a, 0x18, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, - 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x4f, 0x52, 0x10, 0x01, 0x12, 0x18, 0x0a, - 0x14, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, - 0x43, 0x41, 0x43, 0x48, 0x45, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x4d, 0x50, 0x4f, - 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x50, 0x55, 0x54, 0x10, - 0x03, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, - 0x59, 0x50, 0x45, 0x5f, 0x4f, 0x55, 0x54, 0x50, 0x55, 0x54, 0x10, 0x04, 0x1a, 0x63, 0x0a, 0x0a, - 0x54, 0x6f, 0x6f, 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, 0x3f, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x1a, 0x1e, 0x0a, 0x06, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x1a, 0xae, 0x01, 0x0a, 0x0e, 0x53, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, - 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x74, 0x0a, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, - 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x4f, 0xe0, 0x41, - 0x02, 0xba, 0x48, 0x49, 0xc8, 0x01, 0x01, 0x72, 0x44, 0x32, 0x42, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, - 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, - 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x28, - 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, - 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x29, 0x3f, 0x5c, 0x7d, 0x24, 0x52, 0x0c, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x7d, 0x0a, 0x05, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, - 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, - 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, - 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, - 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, - 0x50, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, - 0x53, 0x54, 0x4f, 0x50, 0x50, 0x45, 0x44, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x54, 0x41, - 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x3a, 0x41, 0xea, 0x41, 0x3e, 0x0a, - 0x23, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4d, 0x43, 0x50, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x73, 0x32, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0xfe, 0x06, - 0x0a, 0x0f, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, - 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, - 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, - 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0xdf, 0x01, 0x0a, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x91, 0x01, + 0x68, 0x69, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, + 0x76, 0x31, 0x2f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x1a, 0x28, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf6, 0x0e, 0x0a, 0x09, 0x4d, + 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, + 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, + 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, + 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, + 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, + 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, + 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, + 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0xc0, 0x01, + 0x0a, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x79, 0x92, 0x41, 0x68, 0x32, 0x66, 0x4d, 0x61, 0x70, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20, @@ -1724,504 +1609,652 @@ var file_redpanda_api_dataplane_v1_mcp_proto_rawDesc = []byte{ 0x73, 0x20, 0x61, 0x20, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x73, 0x2e, 0xe0, 0x41, 0x02, 0xba, 0x48, - 0x20, 0xc8, 0x01, 0x01, 0x9a, 0x01, 0x1a, 0x08, 0x01, 0x22, 0x16, 0x72, 0x14, 0x18, 0x40, 0x32, - 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, - 0x24, 0x52, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x77, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, - 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, - 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, - 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, - 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x67, - 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x53, 0x65, - 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x09, 0xe0, 0x41, - 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x63, 0x0a, 0x0a, 0x54, 0x6f, 0x6f, 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, 0x3f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, - 0x6c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, - 0x54, 0x61, 0x67, 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, 0x3a, 0x47, 0xea, 0x41, 0x44, 0x0a, 0x29, 0x72, 0x65, 0x64, 0x70, + 0x08, 0xc8, 0x01, 0x01, 0x9a, 0x01, 0x02, 0x08, 0x01, 0x52, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, + 0x12, 0x87, 0x02, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x73, 0x42, 0xb9, 0x01, 0x92, 0x41, 0xb5, 0x01, 0x32, 0xb2, 0x01, 0x54, 0x68, 0x65, + 0x20, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x2e, 0x20, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, + 0x20, 0x62, 0x65, 0x20, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x64, 0x2c, 0x20, + 0x6f, 0x72, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x74, 0x77, 0x65, 0x61, + 0x6b, 0x65, 0x64, 0x20, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x52, + 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x71, 0x0a, 0x04, 0x74, 0x61, + 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, + 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, + 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, + 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, + 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x45, 0x0a, + 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, + 0x74, 0x61, 0x74, 0x65, 0x12, 0x48, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x15, + 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, + 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x67, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0e, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0xc1, + 0x02, 0x0a, 0x04, 0x54, 0x6f, 0x6f, 0x6c, 0x12, 0x6a, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x42, 0x0a, 0xba, 0x48, 0x07, 0x82, 0x01, 0x04, + 0x10, 0x01, 0x20, 0x00, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x79, 0x61, + 0x6d, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x07, + 0xc8, 0x01, 0x01, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x59, + 0x61, 0x6d, 0x6c, 0x22, 0x9c, 0x01, 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, + 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, + 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, + 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x4f, + 0x52, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x10, 0x02, 0x12, 0x18, 0x0a, + 0x14, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x49, 0x4e, 0x50, 0x55, 0x54, 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x4f, 0x4d, 0x50, 0x4f, + 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4f, 0x55, 0x54, 0x50, 0x55, 0x54, + 0x10, 0x04, 0x1a, 0x63, 0x0a, 0x0a, 0x54, 0x6f, 0x6f, 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, 0x3f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, + 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x52, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, + 0x1a, 0x1e, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, + 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, + 0x1a, 0xae, 0x01, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, + 0x01, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x74, 0x0a, 0x0d, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x4f, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x49, 0xc8, 0x01, 0x01, 0x72, 0x44, 0x32, + 0x42, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, + 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, + 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x28, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, + 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x29, 0x3f, + 0x5c, 0x7d, 0x24, 0x52, 0x0c, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, + 0x74, 0x22, 0x7d, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, + 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, + 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, + 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, + 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, + 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x45, 0x44, 0x10, 0x04, 0x12, + 0x0f, 0x0a, 0x0b, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, + 0x3a, 0x41, 0xea, 0x41, 0x3e, 0x0a, 0x23, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x2f, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x32, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x22, 0xfe, 0x06, 0x0a, 0x0f, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, + 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, + 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, + 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, + 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, + 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0xdf, 0x01, 0x0a, + 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x42, 0x91, 0x01, 0x92, 0x41, 0x68, 0x32, 0x66, 0x4d, 0x61, 0x70, 0x20, 0x6f, + 0x66, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, + 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20, 0x45, 0x61, 0x63, 0x68, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x20, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x20, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x43, + 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x73, + 0x2e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x20, 0xc8, 0x01, 0x01, 0x9a, 0x01, 0x1a, 0x08, 0x01, 0x22, + 0x16, 0x72, 0x14, 0x18, 0x40, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, + 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x4b, + 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, + 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x77, 0x0a, 0x04, 0x74, + 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x2a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x73, 0x32, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x63, - 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x49, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, + 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, + 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, + 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, + 0x74, 0x61, 0x67, 0x73, 0x12, 0x67, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0e, 0x73, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x63, 0x0a, + 0x0a, 0x54, 0x6f, 0x6f, 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, 0x3f, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, + 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x3a, 0x47, 0xea, 0x41, 0x44, + 0x0a, 0x29, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4d, 0x43, 0x50, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2a, 0x0b, 0x6d, 0x63, 0x70, + 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x32, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x22, 0x63, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, + 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x49, + 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, + 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x09, + 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x5e, 0x0a, 0x17, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x09, + 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x45, 0x0a, 0x13, 0x47, 0x65, 0x74, + 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, + 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, + 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, + 0x22, 0x5b, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x22, 0x5e, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, + 0x65, 0x72, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0xb3, 0x06, + 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, + 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0xa8, 0x01, 0x0a, 0x09, 0x70, 0x61, 0x67, + 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x8a, 0x01, 0x92, + 0x41, 0x75, 0x32, 0x61, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x61, + 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20, + 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x20, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x73, 0x20, + 0x74, 0x6f, 0x20, 0x31, 0x30, 0x30, 0x2e, 0x20, 0x55, 0x73, 0x65, 0x20, 0x2d, 0x31, 0x20, 0x74, + 0x6f, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x40, 0x69, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xbf, 0xba, 0x48, 0x0f, 0x1a, 0x0d, 0x18, 0x32, 0x28, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, + 0x69, 0x7a, 0x65, 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, 0x1a, 0xfe, 0x03, 0x0a, 0x06, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x8b, 0x01, + 0x0a, 0x15, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x63, + 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x57, 0x92, + 0x41, 0x35, 0x32, 0x33, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x4d, 0x43, 0x50, 0x20, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x20, 0x74, 0x68, 0x69, + 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0xba, 0x48, 0x1c, 0xd8, 0x01, 0x01, 0x72, 0x17, 0x18, + 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, + 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x13, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, + 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x12, 0xf2, 0x01, 0x0a, 0x04, + 0x74, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x9a, 0x01, + 0x92, 0x41, 0x6a, 0x32, 0x68, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x20, 0x62, 0x79, 0x20, + 0x74, 0x61, 0x67, 0x73, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x65, 0x78, 0x61, 0x63, 0x74, + 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x20, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, + 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, + 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x6b, 0x65, 0x79, + 0x2d, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x70, 0x61, 0x69, 0x72, 0x73, 0x2e, 0xba, 0x48, 0x2a, + 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, + 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, + 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, + 0x12, 0x38, 0x0a, 0x09, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x1b, 0xba, 0x48, 0x18, 0xd8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, + 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x24, + 0x52, 0x08, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x49, 0x64, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, + 0x67, 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, 0x87, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, + 0x0a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, + 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x0a, 0x6d, 0x63, 0x70, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, + 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, + 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xe5, 0x06, + 0x0a, 0x0f, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xba, 0x48, 0x1b, 0x72, 0x19, 0x10, 0x03, + 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, + 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, + 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0xd7, 0x01, 0x0a, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x6f, 0x6f, + 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x89, 0x01, 0x92, 0x41, 0x68, 0x32, 0x66, 0x4d, + 0x61, 0x70, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20, 0x45, 0x61, 0x63, 0x68, 0x20, 0x74, + 0x6f, 0x6f, 0x6c, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x20, 0x63, 0x61, + 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x65, 0x78, 0x70, + 0x6f, 0x73, 0x65, 0x73, 0x2e, 0xba, 0x48, 0x1b, 0x9a, 0x01, 0x18, 0x22, 0x16, 0x72, 0x14, 0x18, + 0x40, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, + 0x5d, 0x2b, 0x24, 0x52, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x72, 0x65, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x77, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, + 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, + 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, + 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, + 0x12, 0x5c, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, + 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x63, + 0x0a, 0x0a, 0x54, 0x6f, 0x6f, 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, 0x3f, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x3a, 0x47, 0xea, 0x41, + 0x44, 0x0a, 0x29, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4d, 0x43, 0x50, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2a, 0x0b, 0x6d, 0x63, + 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x32, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0xdb, 0x01, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, + 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, + 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, + 0x12, 0x54, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x09, 0x6d, 0x63, 0x70, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x5f, 0x6d, 0x61, 0x73, 0x6b, 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, 0x46, 0x69, + 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, + 0x61, 0x73, 0x6b, 0x22, 0x5e, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x22, 0x45, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, - 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, - 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x5b, 0x0a, 0x14, 0x47, 0x65, - 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x09, 0x6d, 0x63, - 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0xb3, 0x06, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, - 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x4f, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, - 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, - 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, - 0x65, 0x72, 0x12, 0xa8, 0x01, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x8a, 0x01, 0x92, 0x41, 0x75, 0x32, 0x61, 0x4c, 0x69, - 0x6d, 0x69, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, - 0x64, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, - 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, - 0x20, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x30, 0x30, - 0x2e, 0x20, 0x55, 0x73, 0x65, 0x20, 0x2d, 0x31, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x69, 0x73, 0x61, - 0x62, 0x6c, 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x59, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x40, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, - 0xbf, 0xba, 0x48, 0x0f, 0x1a, 0x0d, 0x18, 0x32, 0x28, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 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, 0x1a, 0xfe, 0x03, 0x0a, - 0x06, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x8b, 0x01, 0x0a, 0x15, 0x64, 0x69, 0x73, 0x70, - 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x57, 0x92, 0x41, 0x35, 0x32, 0x33, 0x52, 0x65, - 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, - 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, - 0x2e, 0xba, 0x48, 0x1c, 0xd8, 0x01, 0x01, 0x72, 0x17, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, - 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, - 0x52, 0x13, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x6e, - 0x74, 0x61, 0x69, 0x6e, 0x73, 0x12, 0xf2, 0x01, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x54, 0x61, - 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x9a, 0x01, 0x92, 0x41, 0x6a, 0x32, 0x68, 0x46, - 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x20, 0x62, 0x79, 0x20, 0x74, 0x61, 0x67, 0x73, 0x20, 0x75, - 0x73, 0x69, 0x6e, 0x67, 0x20, 0x65, 0x78, 0x61, 0x63, 0x74, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x2e, 0x20, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x4d, - 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, - 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x70, 0x65, - 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x6b, 0x65, 0x79, 0x2d, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x20, 0x70, 0x61, 0x69, 0x72, 0x73, 0x2e, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, - 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, - 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, - 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x38, 0x0a, 0x09, 0x73, 0x65, - 0x63, 0x72, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xba, - 0x48, 0x18, 0xd8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x5b, - 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x24, 0x52, 0x08, 0x73, 0x65, 0x63, 0x72, - 0x65, 0x74, 0x49, 0x64, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x87, 0x01, - 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, + 0x76, 0x65, 0x72, 0x22, 0x48, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, + 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, + 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x19, 0x0a, + 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x46, 0x0a, 0x14, 0x53, 0x74, 0x6f, 0x70, + 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, + 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, + 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, + 0x22, 0x5c, 0x0a, 0x15, 0x53, 0x74, 0x6f, 0x70, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x6d, 0x63, 0x70, + 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x52, 0x0a, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, - 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, - 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, - 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xe5, 0x06, 0x0a, 0x0f, 0x4d, 0x43, 0x50, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x64, - 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x1e, 0xba, 0x48, 0x1b, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, - 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, - 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, - 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0xd7, 0x01, 0x0a, 0x05, 0x74, - 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x42, 0x89, 0x01, 0x92, 0x41, 0x68, 0x32, 0x66, 0x4d, 0x61, 0x70, 0x20, 0x6f, 0x66, 0x20, - 0x74, 0x6f, 0x6f, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, - 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x2e, 0x20, 0x45, 0x61, 0x63, 0x68, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x20, 0x64, 0x65, - 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x20, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x79, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x73, 0x2e, 0xba, - 0x48, 0x1b, 0x9a, 0x01, 0x18, 0x22, 0x16, 0x72, 0x14, 0x18, 0x40, 0x32, 0x10, 0x5e, 0x5b, 0x41, - 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x05, 0x74, - 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x73, 0x12, 0x77, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, - 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, - 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, - 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x5c, 0x0a, 0x0f, 0x73, 0x65, - 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x63, 0x0a, 0x0a, 0x54, 0x6f, 0x6f, 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, 0x3f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, - 0x6f, 0x6c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, - 0x09, 0x54, 0x61, 0x67, 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, 0x3a, 0x47, 0xea, 0x41, 0x44, 0x0a, 0x29, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x73, 0x32, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, - 0xdb, 0x01, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, - 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, - 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x54, 0x0a, 0x0a, 0x6d, 0x63, - 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, - 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 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, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, - 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x5e, 0x0a, - 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x48, 0x0a, - 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x47, + 0x0a, 0x15, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, - 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x19, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x46, 0x0a, 0x14, 0x53, 0x74, 0x6f, 0x70, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, - 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, - 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x5c, 0x0a, 0x15, 0x53, 0x74, - 0x6f, 0x70, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x5d, 0x0a, 0x16, 0x53, 0x74, 0x61, 0x72, 0x74, + 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x09, 0x6d, 0x63, 0x70, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x28, 0x0a, 0x26, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x22, 0x93, 0x03, 0x0a, 0x27, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xc6, 0x01, 0x0a, + 0x13, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x79, + 0x61, 0x6d, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x5a, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x41, 0x4d, 0x4c, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x42, 0x39, 0x92, 0x41, 0x2e, 0x32, 0x2c, 0x54, 0x68, 0x65, + 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x43, + 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0xba, 0x48, 0x05, 0x92, 0x01, 0x02, 0x08, + 0x01, 0x52, 0x12, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x59, 0x61, 0x6d, 0x6c, 0x73, 0x1a, 0x9e, 0x01, 0x0a, 0x17, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x41, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x12, 0x5e, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, + 0x54, 0x6f, 0x6f, 0x6c, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0xd8, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x6e, 0x74, 0x4d, + 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x5b, 0x0a, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, + 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, + 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, + 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x1a, 0x63, 0x0a, 0x0a, + 0x54, 0x6f, 0x6f, 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, 0x3f, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x22, 0xd7, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x0a, 0x6c, + 0x69, 0x6e, 0x74, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x3f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, + 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x52, 0x09, 0x6c, 0x69, 0x6e, 0x74, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x5e, 0x0a, 0x0e, 0x4c, + 0x69, 0x6e, 0x74, 0x48, 0x69, 0x6e, 0x74, 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, + 0x36, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x48, 0x69, 0x6e, 0x74, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x32, 0xac, 0x1d, 0x0a, 0x10, + 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x12, 0xca, 0x02, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x12, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x09, 0x6d, - 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x47, 0x0a, 0x15, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, - 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, - 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, - 0x64, 0x22, 0x5d, 0x0a, 0x16, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x6d, - 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xcf, 0x01, 0x92, 0x41, + 0x64, 0x12, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x1a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, + 0x65, 0x77, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4a, 0x35, + 0x0a, 0x03, 0x32, 0x30, 0x31, 0x12, 0x2e, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x28, 0x0a, 0x26, 0x1a, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x22, 0x28, 0x0a, 0x26, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x93, 0x03, 0x0a, 0x27, 0x47, - 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xc6, 0x01, 0x0a, 0x13, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x5a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x41, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x42, 0x39, 0x92, 0x41, 0x2e, 0x32, 0x2c, 0x54, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, - 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0xba, 0x48, 0x05, 0x92, 0x01, 0x02, 0x08, 0x01, 0x52, 0x12, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x61, 0x6d, 0x6c, 0x73, 0x1a, - 0x9e, 0x01, 0x0a, 0x17, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x59, 0x41, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x5e, 0x0a, 0x0e, 0x63, - 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x65, 0x72, 0x76, 0x65, 0x72, 0xda, 0xbf, 0x07, 0x28, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x73, 0x1a, 0x1a, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x5f, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2e, 0x3a, + 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x20, 0x2f, 0x76, 0x31, + 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0xef, 0x02, + 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x2e, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, + 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, + 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0xfd, 0x01, 0x92, 0x41, 0x8f, 0x01, 0x12, 0x0e, 0x47, 0x65, 0x74, 0x20, 0x4d, 0x43, 0x50, 0x20, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x1a, 0x47, 0x65, 0x74, 0x20, 0x61, 0x20, 0x73, 0x70, + 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x2e, 0x4a, 0x35, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x2e, 0x0a, 0x02, 0x4f, 0x4b, 0x12, + 0x28, 0x0a, 0x26, 0x1a, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x2e, 0x43, - 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x63, 0x6f, - 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x22, 0xd8, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5b, 0x0a, 0x05, 0x74, 0x6f, 0x6f, - 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, - 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x1a, 0x63, 0x0a, 0x0a, 0x54, 0x6f, 0x6f, 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, 0x3f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd7, 0x01, 0x0a, 0x15, - 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x0a, 0x6c, 0x69, 0x6e, 0x74, 0x5f, 0x68, 0x69, - 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4c, 0x69, 0x6e, 0x74, - 0x48, 0x69, 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x6c, 0x69, 0x6e, 0x74, - 0x48, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x5e, 0x0a, 0x0e, 0x4c, 0x69, 0x6e, 0x74, 0x48, 0x69, 0x6e, - 0x74, 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, 0x36, 0x0a, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x48, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x32, 0xce, 0x19, 0x0a, 0x10, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x9e, 0x02, 0x0a, 0x0f, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x31, + 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, + 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, + 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0xda, 0xbf, 0x07, 0x31, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, + 0x64, 0x1a, 0x17, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x63, 0x70, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x67, 0x65, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, + 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 0x12, 0x25, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, + 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, + 0x98, 0x03, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x73, 0x12, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, + 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa0, 0x02, 0x92, 0x41, 0xa1, 0x01, 0x12, 0x10, + 0x4c, 0x69, 0x73, 0x74, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, + 0x1a, 0x49, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x73, 0x2e, 0x20, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x20, + 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x62, 0x79, 0x20, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, + 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x74, 0x61, 0x67, 0x73, 0x2c, 0x20, 0x6f, 0x72, + 0x20, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x20, 0x49, 0x44, 0x2e, 0x4a, 0x42, 0x0a, 0x03, 0x32, + 0x30, 0x30, 0x12, 0x3b, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x35, 0x0a, 0x33, 0x1a, 0x31, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0xe2, + 0xbf, 0x07, 0x47, 0x0a, 0x14, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x6d, 0x63, + 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x2f, 0x0a, 0x0a, 0x6d, 0x63, 0x70, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x07, 0x65, 0x61, 0x63, 0x68, 0x2e, 0x69, 0x64, + 0x1a, 0x18, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x63, 0x70, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, + 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x12, 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, + 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0xf0, 0x02, 0x0a, 0x0f, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, - 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa3, 0x01, 0x92, 0x41, 0x64, 0x12, 0x11, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x18, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x4d, 0x43, 0x50, - 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4a, 0x35, 0x0a, 0x03, 0x32, 0x30, 0x31, 0x12, - 0x2e, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x28, 0x0a, 0x26, 0x1a, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x8a, - 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2e, 0x3a, 0x0a, 0x6d, - 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, - 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0xba, 0x02, 0x0a, 0x0c, - 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x2e, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc8, 0x01, - 0x92, 0x41, 0x8f, 0x01, 0x12, 0x0e, 0x47, 0x65, 0x74, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x1a, 0x1a, 0x47, 0x65, 0x74, 0x20, 0x61, 0x20, 0x73, 0x70, 0x65, 0x63, - 0x69, 0x66, 0x69, 0x63, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x4a, 0x35, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x2e, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x28, 0x0a, - 0x26, 0x1a, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, - 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, - 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, - 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, - 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x27, 0x12, 0x25, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xf5, 0x01, 0x92, 0x41, 0x79, 0x12, 0x14, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x1a, 0x2a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x61, + 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4a, 0x35, 0x0a, + 0x03, 0x32, 0x30, 0x30, 0x12, 0x2e, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x28, 0x0a, 0x26, 0x1a, 0x24, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0xda, 0xbf, 0x07, 0x34, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, + 0x1a, 0x1a, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x63, 0x70, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, + 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x33, 0x3a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x25, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, + 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xd8, 0x02, + 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x12, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xdd, 0x01, 0x92, 0x41, 0x6d, 0x12, 0x14, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x1a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, + 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4a, 0x12, 0x0a, 0x03, 0x32, + 0x30, 0x34, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x00, 0x4a, + 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, + 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0xda, 0xbf, 0x07, 0x34, 0x0a, + 0x0a, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x1a, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x5f, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x27, 0x2a, 0x25, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xcd, 0x02, 0x0a, 0x0e, 0x4c, 0x69, 0x73, - 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x30, 0x2e, 0x72, 0x65, + 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x83, 0x03, 0x0a, 0x0d, 0x53, 0x74, 0x6f, + 0x70, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x2f, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x4d, 0x43, 0x50, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, - 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0xd5, 0x01, 0x92, 0x41, 0xa1, 0x01, 0x12, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x4d, 0x43, - 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x1a, 0x49, 0x4c, 0x69, 0x73, 0x74, 0x73, - 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2e, 0x20, 0x4f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, - 0x62, 0x79, 0x20, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2c, - 0x20, 0x74, 0x61, 0x67, 0x73, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, - 0x20, 0x49, 0x44, 0x2e, 0x4a, 0x42, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x3b, 0x0a, 0x02, 0x4f, - 0x4b, 0x12, 0x35, 0x0a, 0x33, 0x1a, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x07, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x12, 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, - 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0xb8, 0x02, 0x0a, 0x0f, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x31, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, - 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0xbd, 0x01, 0x92, 0x41, 0x79, 0x12, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, - 0x2a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x6e, 0x20, - 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4a, 0x35, 0x0a, 0x03, 0x32, - 0x30, 0x30, 0x12, 0x2e, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x28, 0x0a, 0x26, 0x1a, 0x24, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x33, - 0x3a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x25, 0x2f, 0x76, - 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, - 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2f, 0x7b, - 0x69, 0x64, 0x7d, 0x12, 0xa0, 0x02, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, - 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x72, 0x65, 0x64, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x4d, 0x43, 0x50, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8e, 0x02, + 0x92, 0x41, 0x98, 0x01, 0x12, 0x12, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, + 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x1a, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, + 0x20, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x2e, 0x4a, 0x3a, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x33, 0x0a, 0x07, 0x53, + 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x26, 0x1a, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa5, - 0x01, 0x92, 0x41, 0x6d, 0x12, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, - 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x15, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x4a, 0x12, 0x0a, 0x03, 0x32, 0x30, 0x34, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x64, 0x12, 0x00, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, - 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 0x2a, - 0x25, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xcb, 0x02, 0x0a, 0x0d, 0x53, 0x74, 0x6f, 0x70, 0x4d, - 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, + 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0xda, 0xbf, 0x07, 0x34, + 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x0a, 0x72, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x1a, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x64, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x2c, 0x22, 0x2a, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x3a, 0x73, 0x74, 0x6f, 0x70, 0x12, 0x89, + 0x03, 0x0a, 0x0e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x12, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, + 0x61, 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, + 0x53, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x91, 0x02, 0x92, 0x41, 0x9a, 0x01, 0x12, 0x13, 0x53, + 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x1a, 0x1b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, 0x20, 0x73, 0x74, 0x6f, 0x70, + 0x70, 0x65, 0x64, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4a, + 0x3a, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x33, 0x0a, 0x07, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, + 0x64, 0x12, 0x28, 0x0a, 0x26, 0x1a, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4a, 0x2a, 0x0a, 0x03, 0x34, + 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, + 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, + 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0xda, 0xbf, 0x07, 0x34, 0x0a, 0x0a, 0x6d, 0x63, 0x70, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x2e, 0x69, 0x64, 0x1a, 0x1a, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, + 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x8a, + 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x22, 0x2b, 0x2f, + 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2f, + 0x7b, 0x69, 0x64, 0x7d, 0x3a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0xf9, 0x03, 0x0a, 0x1f, 0x47, + 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x41, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, + 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x42, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, + 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xce, 0x02, 0x92, 0x41, 0xe1, 0x01, 0x12, 0x23, 0x47, 0x65, + 0x74, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x1a, 0x65, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x2c, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, + 0x69, 0x6e, 0x67, 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x63, 0x6f, + 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x2e, 0x4a, 0x53, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, + 0x4c, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x46, 0x0a, 0x44, 0x1a, 0x42, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd6, 0x01, 0x92, 0x41, - 0x98, 0x01, 0x12, 0x12, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x1a, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, 0x20, 0x72, - 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x4a, 0x3a, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x33, 0x0a, 0x07, 0x53, 0x74, 0x6f, - 0x70, 0x70, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x26, 0x1a, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0xda, 0xbf, 0x07, + 0x25, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x1a, 0x17, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x5f, 0x67, 0x65, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x07, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x32, 0x12, 0x30, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x3a, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x97, 0x04, 0x0a, 0x0d, 0x4c, 0x69, 0x6e, 0x74, 0x4d, + 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4a, 0x2a, - 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, - 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, - 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2c, 0x22, 0x2a, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, - 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x3a, - 0x73, 0x74, 0x6f, 0x70, 0x12, 0xd1, 0x02, 0x0a, 0x0e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x43, - 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd9, 0x01, 0x92, - 0x41, 0x9a, 0x01, 0x12, 0x13, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, - 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x1b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, - 0x61, 0x20, 0x73, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4a, 0x3a, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x33, 0x0a, 0x07, - 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x26, 0x1a, 0x24, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, - 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, - 0x04, 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x22, 0x2b, 0x2f, 0x76, 0x31, - 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, - 0x64, 0x7d, 0x3a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0xd0, 0x03, 0x0a, 0x1f, 0x47, 0x65, 0x74, - 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x41, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x42, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4d, - 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0xa5, 0x02, 0x92, 0x41, 0xe1, 0x01, 0x12, 0x23, 0x47, 0x65, 0x74, 0x20, - 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x1a, - 0x65, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x2c, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, - 0x67, 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70, - 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, - 0x73, 0x73, 0x6f, 0x72, 0x73, 0x2e, 0x4a, 0x53, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x4c, 0x0a, - 0x02, 0x4f, 0x4b, 0x12, 0x46, 0x0a, 0x44, 0x1a, 0x42, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, - 0x01, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x32, 0x12, 0x30, 0x2f, 0x76, 0x31, 0x2f, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, - 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x3a, 0x67, 0x65, 0x74, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0xee, 0x03, 0x0a, 0x0d, - 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2f, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, - 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, - 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0xf9, 0x02, 0x92, 0x41, 0xb6, 0x02, 0x12, 0x1e, 0x4c, 0x69, 0x6e, 0x74, 0x20, 0x61, 0x20, - 0x4d, 0x43, 0x50, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0xa3, 0x01, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x65, 0x73, 0x20, 0x61, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, - 0x74, 0x6f, 0x6f, 0x6c, 0x27, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, - 0x20, 0x6c, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x2e, 0x20, - 0x45, 0x61, 0x63, 0x68, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x27, 0x73, 0x20, 0x59, 0x41, 0x4d, 0x4c, - 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, - 0x73, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x64, 0x2e, 0x20, 0x49, 0x66, 0x20, - 0x6e, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, - 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x20, 0x69, 0x73, 0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x4a, 0x6e, 0x0a, - 0x03, 0x32, 0x30, 0x30, 0x12, 0x67, 0x0a, 0x2f, 0x4c, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, - 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x60, 0x6c, - 0x69, 0x6e, 0x74, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x60, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, 0x12, 0x34, 0x0a, 0x32, 0x1a, 0x30, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x8a, 0xa6, 0x1d, - 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x31, 0x3a, 0x01, 0x2a, 0x22, 0x2c, - 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, - 0x3a, 0x6c, 0x69, 0x6e, 0x74, 0x2d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x48, 0x92, 0x41, - 0x45, 0x0a, 0x0a, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x12, 0x37, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, - 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x20, 0x61, 0x6e, 0x64, - 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x42, 0x8d, 0x02, 0x0a, 0x1d, 0x63, 0x6f, 0x6d, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x08, 0x4d, 0x63, 0x70, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x5b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, - 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, - 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x76, - 0x31, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x44, 0xaa, 0x02, 0x19, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x56, 0x31, 0xca, 0x02, 0x19, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, - 0x70, 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0xe2, - 0x02, 0x25, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x1c, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa2, 0x03, 0x92, 0x41, + 0xb6, 0x02, 0x12, 0x1e, 0x4c, 0x69, 0x6e, 0x74, 0x20, 0x61, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x74, + 0x6f, 0x6f, 0x6c, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x1a, 0xa3, 0x01, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x73, 0x20, 0x61, + 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x27, + 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x6c, 0x69, 0x6e, 0x74, + 0x69, 0x6e, 0x67, 0x20, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x2e, 0x20, 0x45, 0x61, 0x63, 0x68, 0x20, + 0x74, 0x6f, 0x6f, 0x6c, 0x27, 0x73, 0x20, 0x59, 0x41, 0x4d, 0x4c, 0x20, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x73, 0x20, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x64, 0x2e, 0x20, 0x49, 0x66, 0x20, 0x6e, 0x6f, 0x20, 0x70, 0x72, + 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, + 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x20, 0x69, + 0x73, 0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x4a, 0x6e, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, + 0x67, 0x0a, 0x2f, 0x4c, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x66, 0x69, 0x6e, 0x69, 0x73, + 0x68, 0x65, 0x64, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x60, 0x6c, 0x69, 0x6e, 0x74, 0x5f, 0x68, + 0x69, 0x6e, 0x74, 0x73, 0x60, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x2e, 0x12, 0x34, 0x0a, 0x32, 0x1a, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, + 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0xda, 0xbf, 0x07, 0x25, 0x0a, 0x0a, 0x6d, 0x63, + 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x1a, 0x17, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x67, 0x65, + 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x31, 0x3a, + 0x01, 0x2a, 0x22, 0x2c, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x73, 0x3a, 0x6c, 0x69, 0x6e, 0x74, 0x2d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x1a, 0x48, 0x92, 0x41, 0x45, 0x0a, 0x0a, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x20, 0x4d, 0x43, + 0x50, 0x12, 0x37, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6d, 0x61, + 0x6e, 0x61, 0x67, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x42, 0x8d, 0x02, 0x0a, 0x1d, 0x63, + 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x08, 0x4d, 0x63, + 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x5b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, + 0x74, 0x61, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, + 0x6e, 0x64, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x44, 0xaa, 0x02, 0x19, 0x52, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x19, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x25, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, + 0x70, 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x5c, + 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x1c, 0x52, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x44, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x33, } var ( diff --git a/backend/pkg/protogen/redpanda/api/dataplane/v1/pipeline.pb.go b/backend/pkg/protogen/redpanda/api/dataplane/v1/pipeline.pb.go index f0aa254577..82bf98105c 100644 --- a/backend/pkg/protogen/redpanda/api/dataplane/v1/pipeline.pb.go +++ b/backend/pkg/protogen/redpanda/api/dataplane/v1/pipeline.pb.go @@ -2601,70 +2601,139 @@ var file_redpanda_api_dataplane_v1_pipeline_proto_rawDesc = []byte{ 0x68, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x25, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31, - 0x2f, 0x6c, 0x69, 0x6e, 0x74, 0x68, 0x69, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, - 0x80, 0x0d, 0x0a, 0x08, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x2e, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, - 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, - 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x47, 0x0a, 0x0c, - 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, - 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, - 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, - 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, - 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x84, 0x02, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x79, 0x61, 0x6d, - 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0xe2, 0x01, 0x92, 0x41, 0xd5, 0x01, 0x32, 0xd2, - 0x01, 0x54, 0x68, 0x65, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x20, - 0x59, 0x41, 0x4d, 0x4c, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x20, 0x53, 0x65, 0x65, - 0x20, 0x74, 0x68, 0x65, 0x20, 0x5b, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x5d, 0x28, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x6f, - 0x63, 0x73, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, - 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61, 0x62, 0x6f, - 0x75, 0x74, 0x29, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x64, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x2e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0a, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x83, 0x02, 0x0a, 0x09, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x42, 0xb5, 0x01, 0x92, 0x41, - 0xb1, 0x01, 0x32, 0xae, 0x01, 0x54, 0x68, 0x65, 0x20, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x65, 0x64, 0x20, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x20, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, - 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, - 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, - 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, - 0x74, 0x65, 0x65, 0x64, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, - 0x65, 0x20, 0x74, 0x77, 0x65, 0x61, 0x6b, 0x65, 0x64, 0x20, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, - 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x2e, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x44, - 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, - 0x74, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x10, 0x0a, - 0x03, 0x75, 0x72, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, - 0x70, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, + 0x2f, 0x6c, 0x69, 0x6e, 0x74, 0x68, 0x69, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, + 0x24, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x80, 0x0d, 0x0a, 0x08, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, + 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, + 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, + 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, + 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, + 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x84, 0x02, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0xe2, 0x01, + 0x92, 0x41, 0xd5, 0x01, 0x32, 0xd2, 0x01, 0x54, 0x68, 0x65, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x59, 0x41, 0x4d, 0x4c, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x5b, 0x52, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5d, 0x28, 0x68, 0x74, 0x74, 0x70, + 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x6f, 0x63, 0x73, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x2f, 0x63, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2f, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x29, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x6d, 0x6f, 0x72, 0x65, + 0x20, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, + 0x01, 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x83, + 0x02, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x73, 0x42, 0xb5, 0x01, 0x92, 0x41, 0xb1, 0x01, 0x32, 0xae, 0x01, 0x54, 0x68, 0x65, 0x20, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x20, + 0x6f, 0x66, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x20, 0x44, + 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, + 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x64, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x6d, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x74, 0x77, 0x65, 0x61, 0x6b, 0x65, 0x64, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x74, 0x69, + 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x73, 0x12, 0x44, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, + 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, + 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x70, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x0b, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, + 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, + 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, + 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, + 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x60, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, + 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, 0x1a, 0x65, 0x0a, 0x09, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, + 0x2e, 0x0a, 0x0d, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, + 0x01, 0x52, 0x0c, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, + 0x28, 0x0a, 0x0a, 0x63, 0x70, 0x75, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x09, + 0x63, 0x70, 0x75, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x1a, 0x1e, 0x0a, 0x06, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x1a, 0x9d, 0x01, 0x0a, 0x0e, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x6e, 0x0a, 0x0d, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x49, 0xba, 0x48, 0x46, 0x72, 0x44, 0x32, 0x42, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, + 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, + 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x28, 0x5c, 0x2e, + 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, + 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x29, 0x3f, 0x5c, 0x7d, 0x24, 0x52, 0x0c, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x92, 0x01, 0x0a, 0x05, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, + 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, + 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x11, + 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, + 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, 0x50, + 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, + 0x54, 0x4f, 0x50, 0x50, 0x45, 0x44, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x54, 0x41, 0x54, + 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x54, 0x41, + 0x54, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x06, 0x3a, 0x3c, + 0xea, 0x41, 0x39, 0x0a, 0x22, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x50, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x73, 0x32, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x04, 0x08, 0x05, + 0x10, 0x06, 0x4a, 0x04, 0x08, 0x06, 0x10, 0x07, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0xf1, 0x04, 0x0a, 0x0e, 0x50, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x64, + 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, + 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, + 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, + 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x2a, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, + 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x4b, 0x0a, 0x09, + 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, + 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x76, 0x0a, 0x04, 0x74, 0x61, 0x67, + 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x60, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x03, @@ -2672,408 +2741,369 @@ var file_redpanda_api_dataplane_v1_pipeline_proto_rawDesc = []byte{ 0x75, 0x6e, 0x74, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x1a, 0x65, 0x0a, 0x09, - 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x0d, 0x6d, 0x65, 0x6d, - 0x6f, 0x72, 0x79, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0c, 0x6d, 0x65, 0x6d, - 0x6f, 0x72, 0x79, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x0a, 0x63, 0x70, 0x75, - 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, - 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x09, 0x63, 0x70, 0x75, 0x53, 0x68, 0x61, - 0x72, 0x65, 0x73, 0x1a, 0x1e, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, - 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, - 0x72, 0x6f, 0x72, 0x1a, 0x9d, 0x01, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x6e, 0x0a, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, - 0x63, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x49, 0xba, 0x48, 0x46, 0x72, - 0x44, 0x32, 0x42, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, - 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, - 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x28, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, - 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, - 0x29, 0x3f, 0x5c, 0x7d, 0x24, 0x52, 0x0c, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, - 0x72, 0x65, 0x74, 0x22, 0x92, 0x01, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, - 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, - 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, - 0x41, 0x52, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, - 0x45, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x53, - 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, - 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x45, 0x44, - 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, - 0x52, 0x10, 0x05, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x4f, 0x4d, - 0x50, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x06, 0x3a, 0x3c, 0xea, 0x41, 0x39, 0x0a, 0x22, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x2a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x32, 0x08, 0x70, 0x69, - 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x4a, 0x04, 0x08, 0x06, - 0x10, 0x07, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x05, 0x6c, 0x69, 0x6d, - 0x69, 0x74, 0x22, 0xf1, 0x04, 0x0a, 0x0e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, - 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, - 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, - 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, - 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x0b, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x4b, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x73, 0x12, 0x76, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, - 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, - 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, - 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, - 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, - 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x60, 0x0a, 0x0f, 0x73, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x73, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x37, 0x0a, - 0x09, 0x54, 0x61, 0x67, 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, 0x3a, 0x42, 0xea, 0x41, 0x3f, 0x0a, 0x28, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x2a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, - 0x32, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, - 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, - 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x5e, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x45, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, - 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, - 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x08, 0x70, 0x69, - 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x59, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x3f, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x22, 0x44, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, - 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, - 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x56, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x50, 0x69, - 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, - 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, - 0xe3, 0x05, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4e, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, - 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0xa9, 0x01, 0x0a, 0x09, 0x70, 0x61, 0x67, - 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x8b, 0x01, 0x92, - 0x41, 0x75, 0x32, 0x61, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x61, - 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20, - 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x20, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x73, 0x20, - 0x74, 0x6f, 0x20, 0x31, 0x30, 0x30, 0x2e, 0x20, 0x55, 0x73, 0x65, 0x20, 0x2d, 0x31, 0x20, 0x74, - 0x6f, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x8f, 0x40, 0x69, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xbf, 0xba, 0x48, 0x10, 0x1a, 0x0e, 0x18, 0xe8, 0x07, 0x28, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, - 0x53, 0x69, 0x7a, 0x65, 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, 0x1a, 0xaf, 0x03, 0x0a, 0x06, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x87, - 0x01, 0x0a, 0x0d, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x62, 0x92, 0x41, 0x40, 0x32, 0x3e, 0x41, 0x6e, 0x79, - 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, - 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x20, - 0x74, 0x68, 0x69, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, - 0x65, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x2e, 0xba, 0x48, 0x1c, 0xd8, 0x01, - 0x01, 0x72, 0x17, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, - 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0c, 0x6e, 0x61, 0x6d, 0x65, - 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x12, 0xc4, 0x01, 0x0a, 0x04, 0x74, 0x61, 0x67, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x3a, 0x42, 0xea, 0x41, + 0x3f, 0x0a, 0x28, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x50, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2a, 0x09, 0x70, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x32, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x52, 0x07, 0x72, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x5e, 0x0a, 0x15, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, - 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x6e, 0x92, 0x41, 0x3e, 0x32, 0x3c, - 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x72, 0x6f, - 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x74, 0x61, 0x67, 0x73, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, - 0x62, 0x65, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x2e, 0xba, 0x48, 0x2a, 0x9a, - 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, - 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, - 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, - 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x49, 0x64, 0x1a, 0x37, 0x0a, 0x09, - 0x54, 0x61, 0x67, 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, 0x82, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, - 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x41, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, - 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, - 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xf4, 0x04, 0x0a, 0x0e, 0x50, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, - 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, - 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, - 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, - 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xba, 0x48, 0x08, - 0xd8, 0x01, 0x01, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, - 0x79, 0x61, 0x6d, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, - 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x59, 0x61, 0x6d, - 0x6c, 0x12, 0x4b, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x76, - 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, - 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, - 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, - 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x60, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x3a, 0x42, 0xea, 0x41, 0x3f, 0x0a, 0x28, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x2f, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x2a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x32, 0x08, 0x70, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x4a, 0x04, 0x08, 0x05, 0x10, - 0x06, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, - 0x74, 0x22, 0xd6, 0x01, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, - 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, - 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x50, 0x0a, 0x08, 0x70, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, - 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x3b, 0x0a, - 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 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, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x59, 0x0a, 0x16, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x59, 0x0a, 0x16, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x70, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x44, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x50, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, + 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, + 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x56, 0x0a, + 0x13, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x70, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x47, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, - 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, - 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x18, - 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x45, 0x0a, 0x13, 0x53, 0x74, 0x6f, 0x70, - 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, - 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, - 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, - 0x57, 0x0a, 0x14, 0x53, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x08, - 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x46, 0x0a, 0x14, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, - 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, - 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, - 0x22, 0x58, 0x0a, 0x15, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x70, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x27, 0x0a, 0x25, 0x47, 0x65, - 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x22, 0x4d, 0x0a, 0x26, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, - 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x22, 0x50, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, - 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x09, 0x72, - 0x65, 0x61, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 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, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, - 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x62, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, - 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, - 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x0a, 0x63, 0x6f, - 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x93, 0x08, 0x0a, 0x0d, 0x43, 0x6f, 0x6d, - 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0xd8, 0x01, 0x0a, 0x07, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0xbd, 0x01, 0xba, - 0x48, 0xb9, 0x01, 0x72, 0xb6, 0x01, 0x32, 0xb3, 0x01, 0x5e, 0x28, 0x30, 0x7c, 0x5b, 0x31, 0x2d, - 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x5c, 0x2e, 0x28, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, - 0x5c, 0x64, 0x2a, 0x29, 0x5c, 0x2e, 0x28, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, - 0x2a, 0x29, 0x28, 0x3f, 0x3a, 0x2d, 0x28, 0x28, 0x3f, 0x3a, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, - 0x5d, 0x5c, 0x64, 0x2a, 0x7c, 0x5c, 0x64, 0x2a, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, - 0x5d, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2a, 0x29, 0x28, - 0x3f, 0x3a, 0x5c, 0x2e, 0x28, 0x3f, 0x3a, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, - 0x2a, 0x7c, 0x5c, 0x64, 0x2a, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x5b, 0x30, - 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2a, 0x29, 0x29, 0x2a, 0x29, 0x29, - 0x3f, 0x28, 0x3f, 0x3a, 0x5c, 0x2b, 0x28, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, - 0x5a, 0x2d, 0x5d, 0x2b, 0x28, 0x3f, 0x3a, 0x5c, 0x2e, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, - 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2b, 0x29, 0x2a, 0x29, 0x29, 0x3f, 0x24, 0x52, 0x07, 0x76, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x42, 0x0a, 0x07, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, - 0x52, 0x07, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x73, 0x12, 0x40, 0x0a, 0x06, 0x63, 0x61, 0x63, - 0x68, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, - 0x70, 0x65, 0x63, 0x52, 0x06, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, 0x12, 0x40, 0x0a, 0x06, 0x69, - 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, - 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x42, 0x0a, - 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0xe3, 0x05, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4e, + 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, - 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, - 0x73, 0x12, 0x48, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x18, - 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0xa9, + 0x01, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x42, 0x8b, 0x01, 0x92, 0x41, 0x75, 0x32, 0x61, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x20, 0x72, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x6e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x20, 0x44, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x30, 0x30, 0x2e, 0x20, 0x55, 0x73, + 0x65, 0x20, 0x2d, 0x31, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x20, + 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x59, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x40, 0x8f, 0x40, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xbf, 0xba, 0x48, 0x10, + 0x1a, 0x0e, 0x18, 0xe8, 0x07, 0x28, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, + 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 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, 0x1a, 0xaf, 0x03, 0x0a, 0x06, 0x46, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x12, 0x87, 0x01, 0x0a, 0x0d, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x6f, + 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x62, 0x92, 0x41, + 0x40, 0x32, 0x3e, 0x41, 0x6e, 0x79, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, + 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x20, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, + 0x2e, 0xba, 0x48, 0x1c, 0xd8, 0x01, 0x01, 0x72, 0x17, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, + 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, + 0x52, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x12, 0xc4, + 0x01, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, + 0x6e, 0x92, 0x41, 0x3e, 0x32, 0x3c, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, + 0x74, 0x68, 0x61, 0x74, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x74, 0x61, 0x67, 0x73, + 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, + 0x64, 0x2e, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, + 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, + 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, + 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, + 0x49, 0x64, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x82, 0x01, 0x0a, 0x15, + 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x09, 0x70, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, + 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x22, 0xf4, 0x04, 0x0a, 0x0e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, + 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, + 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, + 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x0b, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x0b, 0xba, 0x48, 0x08, 0xd8, 0x01, 0x01, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x0b, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x4b, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, + 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x73, 0x12, 0x76, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x07, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, + 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, + 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, + 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, + 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x60, 0x0a, 0x0f, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, - 0x0a, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x12, 0x49, 0x0a, 0x0b, 0x72, - 0x61, 0x74, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, - 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0a, 0x72, 0x61, 0x74, 0x65, - 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x42, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, - 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, - 0x63, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x42, 0x0a, 0x07, 0x74, 0x72, - 0x61, 0x63, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, + 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x37, + 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x3a, 0x42, 0xea, 0x41, 0x3f, 0x0a, 0x28, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x73, 0x32, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x04, 0x08, 0x04, 0x10, + 0x05, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0xd6, 0x01, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, + 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, + 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x50, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, + 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x09, + 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, + 0x73, 0x6b, 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, 0x46, 0x69, 0x65, 0x6c, 0x64, + 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, + 0x22, 0x59, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x70, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x47, 0x0a, 0x15, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, + 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, + 0x52, 0x02, 0x69, 0x64, 0x22, 0x18, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x45, + 0x0a, 0x13, 0x53, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, + 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, + 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x57, 0x0a, 0x14, 0x53, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, + 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x46, + 0x0a, 0x14, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, + 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, + 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x58, 0x0a, 0x15, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x3f, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x22, 0x27, 0x0a, 0x25, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x4d, 0x0a, 0x26, 0x47, 0x65, 0x74, + 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x50, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, + 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x37, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 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, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, + 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x62, 0x0a, 0x16, 0x4c, 0x69, + 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, + 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x93, + 0x08, 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, + 0x12, 0xd8, 0x01, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x42, 0xbd, 0x01, 0xba, 0x48, 0xb9, 0x01, 0x72, 0xb6, 0x01, 0x32, 0xb3, 0x01, 0x5e, + 0x28, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x5c, 0x2e, 0x28, 0x30, + 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x5c, 0x2e, 0x28, 0x30, 0x7c, 0x5b, + 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x28, 0x3f, 0x3a, 0x2d, 0x28, 0x28, 0x3f, 0x3a, + 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x7c, 0x5c, 0x64, 0x2a, 0x5b, 0x61, + 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, + 0x5a, 0x2d, 0x5d, 0x2a, 0x29, 0x28, 0x3f, 0x3a, 0x5c, 0x2e, 0x28, 0x3f, 0x3a, 0x30, 0x7c, 0x5b, + 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x7c, 0x5c, 0x64, 0x2a, 0x5b, 0x61, 0x2d, 0x7a, 0x41, + 0x2d, 0x5a, 0x2d, 0x5d, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, + 0x2a, 0x29, 0x29, 0x2a, 0x29, 0x29, 0x3f, 0x28, 0x3f, 0x3a, 0x5c, 0x2b, 0x28, 0x5b, 0x30, 0x2d, + 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2b, 0x28, 0x3f, 0x3a, 0x5c, 0x2e, 0x5b, + 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2b, 0x29, 0x2a, 0x29, 0x29, + 0x3f, 0x24, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x42, 0x0a, 0x07, 0x62, + 0x75, 0x66, 0x66, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, + 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x07, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x73, 0x12, + 0x40, 0x0a, 0x06, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, + 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x06, 0x63, 0x61, 0x63, 0x68, 0x65, + 0x73, 0x12, 0x40, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, + 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x06, 0x69, 0x6e, 0x70, + 0x75, 0x74, 0x73, 0x12, 0x42, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x07, + 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x48, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x63, 0x65, + 0x73, 0x73, 0x6f, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, - 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x07, 0x74, 0x72, 0x61, 0x63, 0x65, 0x72, 0x73, 0x12, 0x44, - 0x0a, 0x08, 0x73, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, - 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x08, 0x73, 0x63, 0x61, 0x6e, - 0x6e, 0x65, 0x72, 0x73, 0x12, 0x5e, 0x0a, 0x12, 0x62, 0x6c, 0x6f, 0x62, 0x6c, 0x61, 0x6e, 0x67, - 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x6c, 0x6f, - 0x62, 0x6c, 0x61, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, - 0x63, 0x52, 0x11, 0x62, 0x6c, 0x6f, 0x62, 0x6c, 0x61, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x58, 0x0a, 0x10, 0x62, 0x6c, 0x6f, 0x62, 0x6c, 0x61, 0x6e, 0x67, - 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, + 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, + 0x73, 0x12, 0x49, 0x0a, 0x0b, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, + 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, + 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, + 0x52, 0x0a, 0x72, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x42, 0x0a, 0x07, + 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, + 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, + 0x12, 0x42, 0x0a, 0x07, 0x74, 0x72, 0x61, 0x63, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, + 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x07, 0x74, 0x72, 0x61, + 0x63, 0x65, 0x72, 0x73, 0x12, 0x44, 0x0a, 0x08, 0x73, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x73, + 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, + 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, + 0x52, 0x08, 0x73, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x73, 0x12, 0x5e, 0x0a, 0x12, 0x62, 0x6c, + 0x6f, 0x62, 0x6c, 0x61, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, + 0x76, 0x31, 0x2e, 0x42, 0x6c, 0x6f, 0x62, 0x6c, 0x61, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x52, 0x11, 0x62, 0x6c, 0x6f, 0x62, 0x6c, 0x61, 0x6e, + 0x67, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x58, 0x0a, 0x10, 0x62, 0x6c, + 0x6f, 0x62, 0x6c, 0x61, 0x6e, 0x67, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x18, 0x0c, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x2e, 0x42, 0x6c, 0x6f, 0x62, 0x6c, 0x61, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x53, + 0x70, 0x65, 0x63, 0x52, 0x0f, 0x62, 0x6c, 0x6f, 0x62, 0x6c, 0x61, 0x6e, 0x67, 0x4d, 0x65, 0x74, + 0x68, 0x6f, 0x64, 0x73, 0x22, 0xaa, 0x04, 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, + 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x42, + 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x6c, 0x6f, 0x62, 0x6c, - 0x61, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0f, 0x62, - 0x6c, 0x6f, 0x62, 0x6c, 0x61, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x22, 0xaa, - 0x04, 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x20, 0x0a, 0x0b, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, + 0x0a, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x12, 0xd8, + 0x01, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x42, 0xbd, 0x01, 0xba, 0x48, 0xb9, 0x01, 0x72, 0xb6, 0x01, 0x32, 0xb3, 0x01, 0x5e, 0x28, 0x30, + 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x5c, 0x2e, 0x28, 0x30, 0x7c, 0x5b, + 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x5c, 0x2e, 0x28, 0x30, 0x7c, 0x5b, 0x31, 0x2d, + 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x28, 0x3f, 0x3a, 0x2d, 0x28, 0x28, 0x3f, 0x3a, 0x30, 0x7c, + 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x7c, 0x5c, 0x64, 0x2a, 0x5b, 0x61, 0x2d, 0x7a, + 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, + 0x5d, 0x2a, 0x29, 0x28, 0x3f, 0x3a, 0x5c, 0x2e, 0x28, 0x3f, 0x3a, 0x30, 0x7c, 0x5b, 0x31, 0x2d, + 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x7c, 0x5c, 0x64, 0x2a, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, + 0x2d, 0x5d, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2a, 0x29, + 0x29, 0x2a, 0x29, 0x29, 0x3f, 0x28, 0x3f, 0x3a, 0x5c, 0x2b, 0x28, 0x5b, 0x30, 0x2d, 0x39, 0x61, + 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2b, 0x28, 0x3f, 0x3a, 0x5c, 0x2e, 0x5b, 0x30, 0x2d, + 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2b, 0x29, 0x2a, 0x29, 0x29, 0x3f, 0x24, + 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3c, 0x0a, 0x06, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x63, 0x52, + 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x61, 0x6d, 0x70, + 0x6c, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x65, 0x78, 0x61, 0x6d, 0x70, + 0x6c, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x6f, 0x6f, 0x74, 0x6e, 0x6f, 0x74, 0x65, 0x73, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x66, 0x6f, 0x6f, 0x74, 0x6e, 0x6f, 0x74, 0x65, + 0x73, 0x22, 0x9c, 0x05, 0x0a, 0x09, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x63, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, + 0x08, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x08, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x70, + 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, + 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, + 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x65, 0x78, + 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x40, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, + 0x65, 0x6e, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, - 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, - 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x61, 0x74, 0x65, - 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, - 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x12, 0xd8, 0x01, 0x0a, 0x07, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0xbd, 0x01, 0xba, 0x48, 0xb9, - 0x01, 0x72, 0xb6, 0x01, 0x32, 0xb3, 0x01, 0x5e, 0x28, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, - 0x5c, 0x64, 0x2a, 0x29, 0x5c, 0x2e, 0x28, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, - 0x2a, 0x29, 0x5c, 0x2e, 0x28, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, - 0x28, 0x3f, 0x3a, 0x2d, 0x28, 0x28, 0x3f, 0x3a, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, - 0x64, 0x2a, 0x7c, 0x5c, 0x64, 0x2a, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x5b, - 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2a, 0x29, 0x28, 0x3f, 0x3a, - 0x5c, 0x2e, 0x28, 0x3f, 0x3a, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x7c, - 0x5c, 0x64, 0x2a, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x5b, 0x30, 0x2d, 0x39, - 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2a, 0x29, 0x29, 0x2a, 0x29, 0x29, 0x3f, 0x28, - 0x3f, 0x3a, 0x5c, 0x2b, 0x28, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, - 0x5d, 0x2b, 0x28, 0x3f, 0x3a, 0x5c, 0x2e, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, - 0x5a, 0x2d, 0x5d, 0x2b, 0x29, 0x2a, 0x29, 0x29, 0x3f, 0x24, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x12, 0x3c, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x63, 0x52, 0x08, + 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, 0x57, 0x0a, 0x11, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0b, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x63, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x18, 0x09, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x08, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x1c, 0x0a, - 0x09, 0x66, 0x6f, 0x6f, 0x74, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x66, 0x6f, 0x6f, 0x74, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x22, 0x9c, 0x05, 0x0a, 0x09, - 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, - 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, - 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x64, 0x76, 0x61, 0x6e, - 0x63, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x61, 0x64, 0x76, 0x61, 0x6e, - 0x63, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, - 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, - 0x74, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, - 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, - 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, - 0x12, 0x40, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x18, 0x0a, 0x20, 0x03, + 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x10, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x65, + 0x64, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x6f, + 0x6c, 0x61, 0x74, 0x65, 0x64, 0x12, 0xd8, 0x01, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x42, 0xbd, 0x01, 0xba, 0x48, 0xb9, 0x01, 0x72, 0xb6, + 0x01, 0x32, 0xb3, 0x01, 0x5e, 0x28, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, + 0x29, 0x5c, 0x2e, 0x28, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x5c, + 0x2e, 0x28, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x28, 0x3f, 0x3a, + 0x2d, 0x28, 0x28, 0x3f, 0x3a, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x7c, + 0x5c, 0x64, 0x2a, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x5b, 0x30, 0x2d, 0x39, + 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2a, 0x29, 0x28, 0x3f, 0x3a, 0x5c, 0x2e, 0x28, + 0x3f, 0x3a, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x7c, 0x5c, 0x64, 0x2a, + 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, + 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2a, 0x29, 0x29, 0x2a, 0x29, 0x29, 0x3f, 0x28, 0x3f, 0x3a, 0x5c, + 0x2b, 0x28, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2b, 0x28, + 0x3f, 0x3a, 0x5c, 0x2e, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, + 0x2b, 0x29, 0x2a, 0x29, 0x29, 0x3f, 0x24, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x22, 0x49, 0x0a, 0x0f, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb9, 0x03, 0x0a, 0x14, + 0x42, 0x6c, 0x6f, 0x62, 0x6c, 0x61, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x53, 0x70, 0x65, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, + 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, + 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x46, - 0x69, 0x65, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x63, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, - 0x65, 0x6e, 0x12, 0x57, 0x0a, 0x11, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64, 0x5f, - 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, - 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x61, 0x6e, 0x6e, 0x6f, 0x74, - 0x61, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x69, - 0x6e, 0x74, 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x12, - 0xd8, 0x01, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x09, 0x42, 0xbd, 0x01, 0xba, 0x48, 0xb9, 0x01, 0x72, 0xb6, 0x01, 0x32, 0xb3, 0x01, 0x5e, 0x28, - 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x5c, 0x2e, 0x28, 0x30, 0x7c, - 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x5c, 0x2e, 0x28, 0x30, 0x7c, 0x5b, 0x31, - 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x28, 0x3f, 0x3a, 0x2d, 0x28, 0x28, 0x3f, 0x3a, 0x30, - 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x7c, 0x5c, 0x64, 0x2a, 0x5b, 0x61, 0x2d, - 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, - 0x2d, 0x5d, 0x2a, 0x29, 0x28, 0x3f, 0x3a, 0x5c, 0x2e, 0x28, 0x3f, 0x3a, 0x30, 0x7c, 0x5b, 0x31, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x53, 0x70, 0x65, 0x63, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x08, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0xd8, 0x01, 0x0a, + 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0xbd, + 0x01, 0xba, 0x48, 0xb9, 0x01, 0x72, 0xb6, 0x01, 0x32, 0xb3, 0x01, 0x5e, 0x28, 0x30, 0x7c, 0x5b, + 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x5c, 0x2e, 0x28, 0x30, 0x7c, 0x5b, 0x31, 0x2d, + 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x5c, 0x2e, 0x28, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, + 0x5c, 0x64, 0x2a, 0x29, 0x28, 0x3f, 0x3a, 0x2d, 0x28, 0x28, 0x3f, 0x3a, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x7c, 0x5c, 0x64, 0x2a, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2a, - 0x29, 0x29, 0x2a, 0x29, 0x29, 0x3f, 0x28, 0x3f, 0x3a, 0x5c, 0x2b, 0x28, 0x5b, 0x30, 0x2d, 0x39, - 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2b, 0x28, 0x3f, 0x3a, 0x5c, 0x2e, 0x5b, 0x30, - 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2b, 0x29, 0x2a, 0x29, 0x29, 0x3f, - 0x24, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x49, 0x0a, 0x0f, 0x41, 0x6e, - 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb9, 0x03, 0x0a, 0x14, 0x42, 0x6c, 0x6f, 0x62, 0x6c, 0x61, - 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x12, + 0x29, 0x28, 0x3f, 0x3a, 0x5c, 0x2e, 0x28, 0x3f, 0x3a, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, + 0x5c, 0x64, 0x2a, 0x7c, 0x5c, 0x64, 0x2a, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, + 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2a, 0x29, 0x29, 0x2a, + 0x29, 0x29, 0x3f, 0x28, 0x3f, 0x3a, 0x5c, 0x2b, 0x28, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, + 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2b, 0x28, 0x3f, 0x3a, 0x5c, 0x2e, 0x5b, 0x30, 0x2d, 0x39, 0x61, + 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2b, 0x29, 0x2a, 0x29, 0x29, 0x3f, 0x24, 0x52, 0x07, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xb7, 0x03, 0x0a, 0x12, 0x42, 0x6c, 0x6f, 0x62, + 0x6c, 0x61, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x53, 0x70, 0x65, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, @@ -3100,129 +3130,104 @@ var file_redpanda_api_dataplane_v1_pipeline_proto_rawDesc = []byte{ 0x5c, 0x2b, 0x28, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2b, 0x28, 0x3f, 0x3a, 0x5c, 0x2e, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2b, 0x29, 0x2a, 0x29, 0x29, 0x3f, 0x24, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x22, 0xb7, 0x03, 0x0a, 0x12, 0x42, 0x6c, 0x6f, 0x62, 0x6c, 0x61, 0x6e, 0x67, 0x4d, 0x65, - 0x74, 0x68, 0x6f, 0x64, 0x53, 0x70, 0x65, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, - 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, - 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, - 0x72, 0x69, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, 0x74, 0x65, - 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x53, 0x70, 0x65, 0x63, 0x52, 0x06, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, - 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, - 0x12, 0xd8, 0x01, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x09, 0x42, 0xbd, 0x01, 0xba, 0x48, 0xb9, 0x01, 0x72, 0xb6, 0x01, 0x32, 0xb3, 0x01, 0x5e, - 0x28, 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x5c, 0x2e, 0x28, 0x30, - 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x5c, 0x2e, 0x28, 0x30, 0x7c, 0x5b, - 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x29, 0x28, 0x3f, 0x3a, 0x2d, 0x28, 0x28, 0x3f, 0x3a, - 0x30, 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x7c, 0x5c, 0x64, 0x2a, 0x5b, 0x61, - 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, - 0x5a, 0x2d, 0x5d, 0x2a, 0x29, 0x28, 0x3f, 0x3a, 0x5c, 0x2e, 0x28, 0x3f, 0x3a, 0x30, 0x7c, 0x5b, - 0x31, 0x2d, 0x39, 0x5d, 0x5c, 0x64, 0x2a, 0x7c, 0x5c, 0x64, 0x2a, 0x5b, 0x61, 0x2d, 0x7a, 0x41, - 0x2d, 0x5a, 0x2d, 0x5d, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, - 0x2a, 0x29, 0x29, 0x2a, 0x29, 0x29, 0x3f, 0x28, 0x3f, 0x3a, 0x5c, 0x2b, 0x28, 0x5b, 0x30, 0x2d, - 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2b, 0x28, 0x3f, 0x3a, 0x5c, 0x2e, 0x5b, - 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x2d, 0x5d, 0x2b, 0x29, 0x2a, 0x29, 0x29, - 0x3f, 0x24, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x59, 0x0a, 0x09, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x53, 0x70, 0x65, 0x63, 0x12, 0x4c, 0x0a, 0x0b, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x44, - 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x64, 0x65, 0x66, 0x69, 0x6e, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x80, 0x01, 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, - 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x74, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, 0x66, - 0x61, 0x75, 0x6c, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x74, 0x0a, 0x12, 0x50, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, - 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x09, - 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x22, - 0x5b, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, - 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x3b, 0x0a, 0x09, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, - 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, - 0x2a, 0x24, 0x52, 0x08, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x49, 0x64, 0x22, 0x80, 0x01, 0x0a, - 0x1d, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, - 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, - 0x0a, 0x14, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x5f, 0x66, 0x6f, 0x72, 0x5f, - 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x12, 0x70, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, - 0x1e, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x42, - 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, - 0x80, 0x01, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, - 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x5f, 0x0a, 0x14, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x5f, 0x66, - 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x12, - 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, - 0x65, 0x74, 0x22, 0x47, 0x0a, 0x19, 0x4c, 0x69, 0x6e, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x2a, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, - 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x59, 0x61, 0x6d, 0x6c, 0x22, 0x5d, 0x0a, 0x1a, 0x4c, - 0x69, 0x6e, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x0a, 0x6c, 0x69, 0x6e, - 0x74, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x48, 0x69, 0x6e, 0x74, 0x52, - 0x09, 0x6c, 0x69, 0x6e, 0x74, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x2a, 0xaf, 0x01, 0x0a, 0x0f, 0x43, - 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, - 0x0a, 0x1c, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, - 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, - 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, - 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x19, 0x0a, - 0x15, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, - 0x53, 0x5f, 0x42, 0x45, 0x54, 0x41, 0x10, 0x02, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x4f, 0x4d, 0x50, - 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x45, 0x58, 0x50, - 0x45, 0x52, 0x49, 0x4d, 0x45, 0x4e, 0x54, 0x41, 0x4c, 0x10, 0x03, 0x12, 0x1f, 0x0a, 0x1b, 0x43, - 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, - 0x44, 0x45, 0x50, 0x52, 0x45, 0x43, 0x41, 0x54, 0x45, 0x44, 0x10, 0x04, 0x32, 0x91, 0x26, 0x0a, - 0x0f, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x12, 0xb5, 0x02, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x12, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x6e, 0x22, 0x59, 0x0a, 0x09, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x53, 0x70, 0x65, 0x63, 0x12, 0x4c, + 0x0a, 0x0b, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x0b, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x80, 0x01, 0x0a, + 0x0f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, + 0x74, 0x0a, 0x12, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, + 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, + 0x49, 0x64, 0x12, 0x41, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbd, 0x01, 0x92, 0x41, 0x81, 0x01, 0x12, - 0x20, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x1a, 0x27, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, - 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x4a, 0x34, 0x0a, 0x03, 0x32, 0x30, - 0x31, 0x12, 0x2d, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x27, 0x0a, 0x25, 0x1a, 0x23, 0x2e, 0x72, 0x65, + 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x09, 0x70, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x22, 0x5b, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x09, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, + 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x5b, 0x41, 0x2d, + 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x24, 0x52, 0x08, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, + 0x49, 0x64, 0x22, 0x80, 0x01, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x14, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x73, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, + 0x74, 0x52, 0x12, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, + 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x1e, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x80, 0x01, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x14, 0x70, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x73, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, + 0x63, 0x72, 0x65, 0x74, 0x52, 0x12, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, + 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x47, 0x0a, 0x19, 0x4c, 0x69, 0x6e, 0x74, + 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, + 0x79, 0x61, 0x6d, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, + 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x59, 0x61, 0x6d, + 0x6c, 0x22, 0x5d, 0x0a, 0x1a, 0x4c, 0x69, 0x6e, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x3f, 0x0a, 0x0a, 0x6c, 0x69, 0x6e, 0x74, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, + 0x74, 0x48, 0x69, 0x6e, 0x74, 0x52, 0x09, 0x6c, 0x69, 0x6e, 0x74, 0x48, 0x69, 0x6e, 0x74, 0x73, + 0x2a, 0xaf, 0x01, 0x0a, 0x0f, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, + 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, + 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, + 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x42, 0x4c, + 0x45, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, + 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x42, 0x45, 0x54, 0x41, 0x10, 0x02, 0x12, 0x21, + 0x0a, 0x1d, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, + 0x55, 0x53, 0x5f, 0x45, 0x58, 0x50, 0x45, 0x52, 0x49, 0x4d, 0x45, 0x4e, 0x54, 0x41, 0x4c, 0x10, + 0x03, 0x12, 0x1f, 0x0a, 0x1b, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x53, + 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x44, 0x45, 0x50, 0x52, 0x45, 0x43, 0x41, 0x54, 0x45, 0x44, + 0x10, 0x04, 0x32, 0xcf, 0x2a, 0x0a, 0x0f, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xdf, 0x02, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe7, + 0x01, 0x92, 0x41, 0x81, 0x01, 0x12, 0x20, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x52, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x27, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, + 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, + 0x4a, 0x34, 0x0a, 0x03, 0x32, 0x30, 0x31, 0x12, 0x2d, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x27, 0x0a, + 0x25, 0x1a, 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0xda, 0xbf, 0x07, 0x26, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x1a, 0x19, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x3a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x1e, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0xd2, 0x02, 0x0a, 0x0b, 0x47, 0x65, 0x74, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x85, 0x03, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe3, 0x01, 0x92, 0x41, 0xac, 0x01, 0x12, 0x1d, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x96, 0x02, 0x92, 0x41, 0xac, 0x01, 0x12, 0x1d, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x29, 0x47, 0x65, 0x74, 0x20, 0x61, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x20, 0x52, 0x65, @@ -3233,58 +3238,69 @@ var file_redpanda_api_dataplane_v1_pipeline_proto_rawDesc = []byte{ 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, - 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x12, 0x23, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xd6, 0x02, - 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, - 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, - 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0xe1, 0x01, 0x92, 0x41, 0xaf, 0x01, 0x12, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x20, - 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x1a, 0x49, 0x4c, 0x69, 0x73, 0x74, - 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2e, 0x20, 0x4f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x3a, 0x20, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x62, 0x61, - 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0x4a, 0x41, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x3a, 0x0a, 0x02, - 0x4f, 0x4b, 0x12, 0x34, 0x0a, 0x32, 0x1a, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x12, 0x1e, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x9e, 0x03, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0xda, 0xbf, 0x07, 0x2f, 0x0a, 0x09, + 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x16, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x67, 0x65, 0x74, 0x8a, 0xa6, 0x1d, + 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x12, 0x23, 0x2f, 0x76, 0x31, + 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, + 0x12, 0x9d, 0x03, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x73, 0x12, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, + 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, + 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa8, 0x02, 0x92, 0x41, 0xaf, 0x01, 0x12, 0x1f, 0x4c, 0x69, + 0x73, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x1a, 0x49, 0x4c, + 0x69, 0x73, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2e, 0x20, + 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x3a, 0x20, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0x4a, 0x41, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, + 0x3a, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x34, 0x0a, 0x32, 0x1a, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, - 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa6, - 0x02, 0x92, 0x41, 0xe5, 0x01, 0x12, 0x22, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, - 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x88, 0x01, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x5b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5d, 0x28, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, - 0x6f, 0x63, 0x73, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, - 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, - 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61, 0x62, - 0x6f, 0x75, 0x74, 0x29, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x2e, 0x4a, 0x34, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x2d, 0x0a, 0x02, 0x4f, - 0x4b, 0x12, 0x27, 0x0a, 0x25, 0x1a, 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0xe2, 0xbf, 0x07, 0x43, 0x0a, + 0x12, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, + 0x12, 0x07, 0x65, 0x61, 0x63, 0x68, 0x2e, 0x69, 0x64, 0x1a, 0x17, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6c, 0x69, + 0x73, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, + 0x12, 0x1e, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, + 0x12, 0xd4, 0x03, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x12, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, + 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xdc, 0x02, 0x92, 0x41, 0xe5, 0x01, 0x12, + 0x22, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x1a, 0x88, 0x01, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x5b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5d, + 0x28, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x6f, 0x63, 0x73, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, + 0x70, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x29, 0x20, 0x6f, + 0x66, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x4a, 0x34, + 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x2d, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x27, 0x0a, 0x25, 0x1a, + 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0xda, 0xbf, 0x07, 0x32, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, + 0x19, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x3a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x23, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xb8, 0x02, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, + 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xee, 0x02, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x69, 0x70, @@ -3292,7 +3308,7 @@ var file_redpanda_api_dataplane_v1_pipeline_proto_rawDesc = []byte{ 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0xc0, 0x01, 0x92, 0x41, 0x89, 0x01, 0x12, 0x22, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, + 0xf6, 0x01, 0x92, 0x41, 0x89, 0x01, 0x12, 0x22, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x23, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, @@ -3300,224 +3316,247 @@ var file_redpanda_api_dataplane_v1_pipeline_proto_rawDesc = []byte{ 0x12, 0x0a, 0x03, 0x32, 0x30, 0x34, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x00, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, - 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x2a, 0x23, 0x2f, - 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, - 0x64, 0x7d, 0x12, 0xe3, 0x02, 0x0a, 0x0c, 0x53, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x12, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x53, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x53, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xf1, 0x01, 0x92, 0x41, 0xb5, 0x01, 0x12, 0x21, 0x53, 0x74, 0x6f, - 0x70, 0x73, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x29, - 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, 0x20, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x52, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, - 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x4a, 0x39, 0x0a, 0x03, 0x32, 0x30, 0x30, - 0x12, 0x32, 0x0a, 0x07, 0x53, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x25, 0x1a, - 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, - 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x1a, 0x28, - 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x7b, - 0x69, 0x64, 0x7d, 0x2f, 0x73, 0x74, 0x6f, 0x70, 0x12, 0xe8, 0x02, 0x0a, 0x0d, 0x53, 0x74, 0x61, - 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x2f, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xf3, 0x01, - 0x92, 0x41, 0xb6, 0x01, 0x12, 0x21, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, 0x20, 0x52, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x2a, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, - 0x20, 0x73, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x2e, 0x4a, 0x39, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x32, 0x0a, 0x07, 0x53, 0x74, - 0x61, 0x72, 0x74, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x25, 0x1a, 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0xda, + 0xbf, 0x07, 0x32, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x0a, + 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x19, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x64, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x25, 0x2a, 0x23, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x97, 0x03, 0x0a, 0x0c, 0x53, 0x74, 0x6f, + 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x2a, - 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, - 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, - 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x1a, 0x29, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa5, 0x02, 0x92, 0x41, 0xb5, + 0x01, 0x12, 0x21, 0x53, 0x74, 0x6f, 0x70, 0x73, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x29, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, 0x20, 0x72, 0x75, 0x6e, + 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x4a, + 0x39, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x32, 0x0a, 0x07, 0x53, 0x74, 0x6f, 0x70, 0x70, 0x65, + 0x64, 0x12, 0x27, 0x0a, 0x25, 0x1a, 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, + 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, + 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0xda, 0xbf, 0x07, 0x30, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, + 0x64, 0x1a, 0x17, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x73, 0x74, 0x6f, 0x70, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, + 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x1a, 0x28, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x12, 0xac, 0x04, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x40, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, - 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x41, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x84, 0x03, 0x92, 0x41, - 0xce, 0x02, 0x12, 0x40, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, - 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x52, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xb5, 0x01, 0x54, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, - 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, - 0x6c, 0x65, 0x20, 0x5b, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, - 0x6e, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x5d, 0x28, 0x68, - 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x6f, 0x63, 0x73, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x2f, - 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, - 0x74, 0x73, 0x2f, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x29, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x69, - 0x73, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, - 0x63, 0x74, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x4a, 0x52, 0x0a, 0x03, - 0x32, 0x30, 0x30, 0x12, 0x4b, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x45, 0x0a, 0x43, 0x1a, 0x41, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x24, 0x12, 0x22, - 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2d, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x12, 0xb2, 0x03, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x6f, - 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x6f, 0x70, 0x12, 0x9d, 0x03, 0x0a, 0x0d, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, - 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xba, 0x02, 0x92, 0x41, 0x87, - 0x02, 0x12, 0x29, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, - 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, - 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x95, 0x01, 0x52, - 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x61, 0x20, 0x4a, 0x53, 0x4f, 0x4e, 0x20, 0x6c, 0x69, - 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x20, - 0x5b, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x5d, 0x28, 0x68, 0x74, 0x74, - 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x6f, 0x63, 0x73, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, - 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x2f, 0x63, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, - 0x2f, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x29, 0x2c, 0x20, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, - 0x64, 0x20, 0x62, 0x79, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x20, 0x74, - 0x79, 0x70, 0x65, 0x2e, 0x4a, 0x42, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x3b, 0x0a, 0x02, 0x4f, - 0x4b, 0x12, 0x35, 0x0a, 0x33, 0x1a, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x31, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa8, 0x02, 0x92, 0x41, 0xb6, 0x01, 0x12, 0x21, + 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x1a, 0x2a, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, 0x20, 0x73, 0x74, 0x6f, 0x70, 0x70, + 0x65, 0x64, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x4a, 0x39, 0x0a, + 0x03, 0x32, 0x30, 0x30, 0x12, 0x32, 0x0a, 0x07, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x12, + 0x27, 0x0a, 0x25, 0x1a, 0x23, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, + 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, + 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, + 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0xda, 0xbf, 0x07, 0x31, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, + 0x18, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, + 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x1a, 0x29, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x12, 0xd3, 0x04, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x40, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x12, 0x1f, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6d, - 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12, 0xf4, 0x02, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x50, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, - 0x74, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, - 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, - 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, - 0x72, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe7, 0x01, 0x92, 0x41, 0xaa, 0x01, 0x12, 0x29, 0x47, 0x65, 0x74, + 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, + 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x41, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xab, 0x03, 0x92, 0x41, 0xce, + 0x02, 0x12, 0x40, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x1a, 0xb5, 0x01, 0x54, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x69, + 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, + 0x65, 0x20, 0x5b, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x5d, 0x28, 0x68, 0x74, + 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x6f, 0x63, 0x73, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x2f, 0x63, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, + 0x73, 0x2f, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x29, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, - 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x1a, 0x32, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x20, 0x67, 0x69, 0x76, - 0x65, 0x6e, 0x20, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x2e, 0x4a, 0x49, 0x0a, 0x03, 0x32, 0x30, - 0x30, 0x12, 0x42, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x3c, 0x0a, 0x3a, 0x1a, 0x38, 0x2e, 0x72, 0x65, + 0x74, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x4a, 0x52, 0x0a, 0x03, 0x32, + 0x30, 0x30, 0x12, 0x4b, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x45, 0x0a, 0x43, 0x1a, 0x41, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0xda, + 0xbf, 0x07, 0x23, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x1a, 0x16, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x5f, 0x67, 0x65, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x24, 0x12, 0x22, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2d, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0xd9, 0x03, 0x0a, 0x0e, 0x4c, 0x69, 0x73, + 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x2b, 0x12, 0x29, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x73, 0x2d, 0x66, 0x6f, 0x72, 0x2d, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0xec, - 0x02, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x42, - 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, + 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, + 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0xe1, 0x02, 0x92, 0x41, 0x87, 0x02, 0x12, 0x29, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, + 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x76, + 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, + 0x74, 0x73, 0x1a, 0x95, 0x01, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x61, 0x20, 0x4a, + 0x53, 0x4f, 0x4e, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x76, 0x61, 0x69, + 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x5b, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, + 0x73, 0x5d, 0x28, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x6f, 0x63, 0x73, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x65, 0x76, 0x65, + 0x6c, 0x6f, 0x70, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6d, 0x70, + 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x29, 0x2c, 0x20, 0x66, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x4a, 0x42, 0x0a, 0x03, 0x32, 0x30, + 0x30, 0x12, 0x3b, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x35, 0x0a, 0x33, 0x1a, 0x31, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, + 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0xda, 0xbf, + 0x07, 0x23, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x1a, 0x16, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x5f, 0x67, 0x65, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x21, 0x12, 0x1f, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, + 0x65, 0x6e, 0x74, 0x73, 0x12, 0x9c, 0x03, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x37, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, + 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x8f, 0x02, 0x92, 0x41, 0xaa, 0x01, 0x12, 0x29, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x73, 0x65, 0x63, + 0x72, 0x65, 0x74, 0x1a, 0x32, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, + 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x2e, 0x4a, 0x49, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x42, + 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x3c, 0x0a, 0x3a, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, - 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, - 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, - 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xdf, 0x01, 0x92, 0x41, - 0xa2, 0x01, 0x12, 0x29, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0xda, 0xbf, 0x07, 0x24, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x73, 0x1a, 0x17, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, + 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x12, 0x29, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2d, 0x66, 0x6f, 0x72, 0x2d, 0x73, 0x65, 0x63, + 0x72, 0x65, 0x74, 0x12, 0x94, 0x03, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x12, 0x37, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, + 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x42, + 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x87, 0x02, 0x92, 0x41, 0xa2, 0x01, 0x12, 0x29, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x62, 0x79, 0x20, 0x73, 0x65, 0x63, 0x72, 0x65, + 0x74, 0x73, 0x1a, 0x2a, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x73, 0x20, 0x62, 0x79, 0x20, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x1a, 0x2a, 0x47, - 0x65, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x62, 0x79, - 0x20, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x2e, 0x4a, 0x49, 0x0a, 0x03, 0x32, 0x30, 0x30, - 0x12, 0x42, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x3c, 0x0a, 0x3a, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x2b, 0x12, 0x29, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x73, 0x2d, 0x62, 0x79, 0x2d, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x12, 0xf2, 0x03, - 0x0a, 0x12, 0x4c, 0x69, 0x6e, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x12, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x72, 0x65, 0x64, + 0x65, 0x73, 0x20, 0x62, 0x79, 0x20, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x2e, 0x4a, 0x49, + 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x42, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x3c, 0x0a, 0x3a, 0x1a, + 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0xda, 0xbf, 0x07, 0x24, 0x0a, 0x09, 0x70, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x1a, 0x17, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6c, 0x69, 0x73, + 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x12, + 0x29, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2d, + 0x62, 0x79, 0x2d, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x12, 0x99, 0x04, 0x0a, 0x12, 0x4c, + 0x69, 0x6e, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x12, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, + 0x6e, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x95, + 0x03, 0x92, 0x41, 0xad, 0x02, 0x12, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x20, 0x61, 0x20, 0x52, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x85, 0x01, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, + 0x73, 0x20, 0x61, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x20, 0x52, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x59, 0x41, 0x4d, 0x4c, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x61, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, + 0x66, 0x20, 0x6c, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x2e, + 0x20, 0x49, 0x66, 0x20, 0x6e, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x73, 0x20, + 0x61, 0x72, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x69, 0x73, 0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x4a, 0x73, 0x0a, + 0x03, 0x32, 0x30, 0x30, 0x12, 0x6c, 0x0a, 0x2f, 0x4c, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, + 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x60, 0x6c, + 0x69, 0x6e, 0x74, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x60, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, 0x12, 0x39, 0x0a, 0x37, 0x1a, 0x35, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0xda, 0xbf, 0x07, 0x23, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x73, 0x1a, 0x16, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x67, 0x65, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, + 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x3a, 0x01, 0x2a, 0x22, 0x2a, 0x2f, 0x76, 0x31, 0x2f, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x3a, 0x6c, 0x69, 0x6e, 0x74, 0x2d, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0xab, 0x01, 0x92, 0x41, 0xa7, 0x01, 0x0a, 0x1a, 0x52, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, + 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x88, 0x01, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x20, 0x5b, 0x52, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5d, + 0x28, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x6f, 0x63, 0x73, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, + 0x70, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x29, + 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, + 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x2e, 0x42, 0x92, 0x02, 0x0a, 0x1d, 0x63, 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0xee, 0x02, 0x92, 0x41, 0xad, 0x02, 0x12, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x20, 0x61, - 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x85, 0x01, 0x56, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x65, 0x73, 0x20, 0x61, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x20, - 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x59, 0x41, 0x4d, 0x4c, 0x20, 0x61, - 0x6e, 0x64, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x61, 0x20, 0x6c, 0x69, 0x73, - 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x68, 0x69, 0x6e, - 0x74, 0x73, 0x2e, 0x20, 0x49, 0x66, 0x20, 0x6e, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x6c, 0x65, - 0x6d, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x2c, 0x20, 0x74, 0x68, - 0x65, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x69, 0x73, 0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, - 0x4a, 0x73, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x6c, 0x0a, 0x2f, 0x4c, 0x69, 0x6e, 0x74, 0x69, - 0x6e, 0x67, 0x20, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x2e, 0x20, 0x53, 0x65, 0x65, - 0x20, 0x60, 0x6c, 0x69, 0x6e, 0x74, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x60, 0x20, 0x66, 0x6f, - 0x72, 0x20, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, 0x12, 0x39, 0x0a, 0x37, 0x1a, 0x35, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x50, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x2f, 0x3a, 0x01, 0x2a, 0x22, 0x2a, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x3a, 0x6c, 0x69, 0x6e, 0x74, 0x2d, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x1a, 0xab, 0x01, 0x92, 0x41, 0xa7, 0x01, 0x0a, 0x1a, 0x52, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x88, 0x01, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, - 0x6e, 0x64, 0x20, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x20, 0x5b, 0x52, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5d, 0x28, 0x68, 0x74, 0x74, - 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x6f, 0x63, 0x73, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, - 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x2f, 0x63, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x29, 0x20, 0x70, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, - 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, - 0x42, 0x92, 0x02, 0x0a, 0x1d, 0x63, 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x42, 0x0d, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x72, 0x6f, 0x74, - 0x6f, 0x50, 0x01, 0x5a, 0x5b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, 0x6b, - 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x76, 0x31, - 0xa2, 0x02, 0x03, 0x52, 0x41, 0x44, 0xaa, 0x02, 0x19, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x56, 0x31, 0xca, 0x02, 0x19, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, - 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0xe2, 0x02, - 0x25, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x1c, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0d, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x5b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, + 0x61, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, + 0x64, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x44, 0xaa, 0x02, 0x19, 0x52, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x19, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, + 0x56, 0x31, 0xe2, 0x02, 0x25, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, + 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x5c, 0x47, + 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x1c, 0x52, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x44, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, } var ( diff --git a/backend/pkg/protogen/redpanda/api/dataplane/v1alpha2/pipeline.pb.go b/backend/pkg/protogen/redpanda/api/dataplane/v1alpha2/pipeline.pb.go index a0dc017257..27b8ae89ae 100644 --- a/backend/pkg/protogen/redpanda/api/dataplane/v1alpha2/pipeline.pb.go +++ b/backend/pkg/protogen/redpanda/api/dataplane/v1alpha2/pipeline.pb.go @@ -11,6 +11,7 @@ import ( sync "sync" _ "buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate" + _ "buf.build/gen/go/redpandadata/common/protocolbuffers/go/redpanda/api/common/v1" _ "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options" _ "google.golang.org/genproto/googleapis/api/annotations" protoreflect "google.golang.org/protobuf/reflect/protoreflect" @@ -1547,316 +1548,321 @@ var file_redpanda_api_dataplane_v1alpha2_pipeline_proto_rawDesc = []byte{ 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9d, 0x0b, 0x0a, 0x08, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, - 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, - 0x52, 0x02, 0x69, 0x64, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, - 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, - 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, - 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, - 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x84, 0x02, 0x0a, 0x0b, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, - 0xe2, 0x01, 0x92, 0x41, 0xd5, 0x01, 0x32, 0xd2, 0x01, 0x54, 0x68, 0x65, 0x20, 0x52, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, - 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x59, 0x41, 0x4d, 0x4c, 0x20, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x5b, 0x52, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5d, 0x28, 0x68, 0x74, - 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x6f, 0x63, 0x73, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x2f, 0x63, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x29, 0x20, 0x64, 0x6f, 0x63, 0x75, - 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x6d, 0x6f, - 0x72, 0x65, 0x20, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, 0xe0, 0x41, 0x02, 0xba, 0x48, - 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x59, 0x61, 0x6d, 0x6c, - 0x12, 0x89, 0x02, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, - 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x42, 0xb5, 0x01, 0x92, 0x41, 0xb1, 0x01, - 0x32, 0xae, 0x01, 0x54, 0x68, 0x65, 0x20, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, - 0x20, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x20, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, - 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2c, - 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x6d, - 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, - 0x65, 0x64, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, - 0x74, 0x77, 0x65, 0x61, 0x6b, 0x65, 0x64, 0x20, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, - 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x2e, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x4a, 0x0a, 0x05, - 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, - 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, - 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x4d, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x66, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, - 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, - 0x65, 0x0a, 0x09, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x0d, - 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0c, - 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x0a, - 0x63, 0x70, 0x75, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x09, 0x63, 0x70, 0x75, - 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x1a, 0x1e, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x1a, 0x9d, 0x01, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x6e, 0x0a, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x49, 0xba, - 0x48, 0x46, 0x72, 0x44, 0x32, 0x42, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, - 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, - 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x28, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, - 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, - 0x5f, 0x5d, 0x2a, 0x29, 0x3f, 0x5c, 0x7d, 0x24, 0x52, 0x0c, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x92, 0x01, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, - 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x45, - 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x53, - 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x12, - 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x49, 0x4e, 0x47, - 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, - 0x50, 0x45, 0x44, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, - 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, - 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x06, 0x4a, 0x04, 0x08, 0x05, 0x10, - 0x06, 0x4a, 0x04, 0x08, 0x06, 0x10, 0x07, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x88, 0x03, 0x0a, 0x0e, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, - 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, + 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9d, 0x0b, + 0x0a, 0x08, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, + 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, + 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, + 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, + 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x2a, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, - 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x51, 0x0a, 0x09, 0x72, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, + 0x84, 0x02, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0xe2, 0x01, 0x92, 0x41, 0xd5, 0x01, 0x32, 0xd2, 0x01, 0x54, + 0x68, 0x65, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x59, 0x41, + 0x4d, 0x4c, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x5b, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x20, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x5d, 0x28, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x6f, 0x63, 0x73, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x65, 0x76, + 0x65, 0x6c, 0x6f, 0x70, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61, 0x62, 0x6f, 0x75, 0x74, + 0x29, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, + 0x2e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x89, 0x02, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x42, + 0xb5, 0x01, 0x92, 0x41, 0xb1, 0x01, 0x32, 0xae, 0x01, 0x54, 0x68, 0x65, 0x20, 0x72, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x6f, 0x66, + 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x20, 0x44, 0x65, 0x70, + 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x62, 0x61, + 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x73, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, 0x75, + 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x64, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x6d, 0x69, 0x67, + 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x74, 0x77, 0x65, 0x61, 0x6b, 0x65, 0x64, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x74, 0x69, 0x6c, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x73, 0x12, 0x4a, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x4d, + 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, - 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x66, - 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x4a, 0x04, 0x08, 0x05, - 0x10, 0x06, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x05, 0x6c, 0x69, 0x6d, - 0x69, 0x74, 0x22, 0x64, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x08, 0x70, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, + 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x66, 0x0a, + 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x65, 0x0a, 0x09, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x0d, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, + 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0c, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x53, 0x68, 0x61, 0x72, + 0x65, 0x73, 0x12, 0x28, 0x0a, 0x0a, 0x63, 0x70, 0x75, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, + 0x01, 0x52, 0x09, 0x63, 0x70, 0x75, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x1a, 0x1e, 0x0a, 0x06, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x1a, 0x9d, 0x01, 0x0a, + 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x6e, 0x0a, 0x0d, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x49, 0xba, 0x48, 0x46, 0x72, 0x44, 0x32, 0x42, 0x5e, 0x5c, 0x24, 0x5c, + 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, + 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, + 0x28, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, + 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x29, 0x3f, 0x5c, 0x7d, 0x24, 0x52, 0x0c, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x92, 0x01, 0x0a, + 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, + 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, + 0x0e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x49, 0x4e, 0x47, 0x10, + 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, + 0x4e, 0x47, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, + 0x4f, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, + 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x45, 0x44, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x53, + 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x12, 0x13, 0x0a, 0x0f, + 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, + 0x06, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x4a, 0x04, 0x08, 0x06, 0x10, 0x07, 0x52, 0x07, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x88, 0x03, + 0x0a, 0x0e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, + 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, + 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, + 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, + 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, + 0x79, 0x61, 0x6d, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, + 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x59, 0x61, 0x6d, + 0x6c, 0x12, 0x51, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, + 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x73, 0x12, 0x66, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, - 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x08, - 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x5f, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x45, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, - 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x44, 0x0a, 0x12, 0x47, 0x65, 0x74, - 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, - 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, - 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, - 0x5c, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x73, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4a, 0x04, 0x08, 0x04, + 0x10, 0x05, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x64, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x4b, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x5f, + 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, + 0x44, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, + 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, + 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x5c, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x08, + 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, + 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x22, 0x84, 0x03, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x54, 0x0a, 0x06, + 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4c, + 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x12, 0xa9, 0x01, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x8b, 0x01, 0x92, 0x41, 0x75, 0x32, 0x61, 0x4c, 0x69, + 0x6d, 0x69, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, + 0x64, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, + 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, + 0x20, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x30, 0x30, + 0x2e, 0x20, 0x55, 0x73, 0x65, 0x20, 0x2d, 0x31, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x59, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x8f, 0x40, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, + 0xbf, 0xba, 0x48, 0x10, 0x1a, 0x0e, 0x18, 0xe8, 0x07, 0x28, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 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, 0x1a, 0x4b, 0x0a, + 0x06, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x41, 0x0a, 0x0d, 0x6e, 0x61, 0x6d, 0x65, 0x5f, + 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1c, + 0xba, 0x48, 0x19, 0x72, 0x17, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, + 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0c, 0x6e, 0x61, + 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x22, 0x88, 0x01, 0x0a, 0x15, 0x4c, + 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x52, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x26, 0x0a, + 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x8b, 0x03, 0x0a, 0x0e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, + 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, + 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, + 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, + 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x2d, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xba, 0x48, 0x08, 0xd8, 0x01, 0x01, 0x72, 0x03, + 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x2a, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, + 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x51, 0x0a, 0x09, + 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, + 0x66, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x84, 0x03, - 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x54, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, - 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0xa9, 0x01, 0x0a, - 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x42, 0x8b, 0x01, 0x92, 0x41, 0x75, 0x32, 0x61, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x20, 0x74, 0x68, - 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x20, 0x72, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x20, 0x44, 0x65, 0x66, 0x61, 0x75, - 0x6c, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x30, 0x30, 0x2e, 0x20, 0x55, 0x73, 0x65, 0x20, - 0x2d, 0x31, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x70, 0x61, - 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, - 0x8f, 0x40, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xbf, 0xba, 0x48, 0x10, 0x1a, 0x0e, - 0x18, 0xe8, 0x07, 0x28, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x08, - 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 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, 0x1a, 0x4b, 0x0a, 0x06, 0x46, 0x69, 0x6c, 0x74, 0x65, - 0x72, 0x12, 0x41, 0x0a, 0x0d, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, - 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1c, 0xba, 0x48, 0x19, 0x72, 0x17, 0x18, - 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, - 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x74, - 0x61, 0x69, 0x6e, 0x73, 0x22, 0x88, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, - 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x4a, 0x04, 0x08, + 0x05, 0x10, 0x06, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x05, 0x6c, 0x69, + 0x6d, 0x69, 0x74, 0x22, 0x9f, 0x01, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, + 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, + 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x56, 0x0a, + 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x5f, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x45, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x09, 0x70, 0x69, - 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, - 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, - 0x8b, 0x03, 0x0a, 0x0e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, - 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, - 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, - 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x0b, 0x64, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x0b, 0xba, 0x48, 0x08, 0xd8, 0x01, 0x01, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x0b, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x51, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, - 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x66, 0x0a, 0x0f, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, - 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, - 0x01, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x52, 0x07, 0x72, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x9f, 0x01, - 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x70, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x47, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, + 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, + 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, + 0x18, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x45, 0x0a, 0x13, 0x53, 0x74, 0x6f, + 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, + 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, + 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, + 0x22, 0x5d, 0x0a, 0x14, 0x53, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, + 0x46, 0x0a, 0x14, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, - 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x56, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, - 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, - 0x5f, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x08, 0x70, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, - 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x22, 0x47, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, - 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, - 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x18, 0x0a, 0x16, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x45, 0x0a, 0x13, 0x53, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, - 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, - 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x5d, 0x0a, 0x14, 0x53, 0x74, - 0x6f, 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x45, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, - 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x46, 0x0a, 0x14, 0x53, 0x74, 0x61, - 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, - 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, - 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, - 0x64, 0x22, 0x5e, 0x0a, 0x15, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x08, 0x70, 0x69, - 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x22, 0x27, 0x0a, 0x25, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x4d, 0x0a, 0x26, 0x47, 0x65, - 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x7a, 0x0a, 0x12, 0x50, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, - 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x49, 0x64, 0x12, 0x47, 0x0a, 0x09, - 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x09, 0x70, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x22, 0x5b, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x09, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, - 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x5b, 0x41, 0x2d, - 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x24, 0x52, 0x08, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, - 0x49, 0x64, 0x22, 0x86, 0x01, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x14, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x73, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x5e, 0x0a, 0x15, 0x53, 0x74, 0x61, 0x72, 0x74, + 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x45, 0x0a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, - 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x12, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x1e, 0x0a, 0x1c, 0x47, - 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, - 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x86, 0x01, 0x0a, 0x1d, - 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, - 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, - 0x14, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x73, - 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, - 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, - 0x52, 0x12, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, - 0x63, 0x72, 0x65, 0x74, 0x32, 0x91, 0x21, 0x0a, 0x0f, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xd7, 0x02, 0x0a, 0x0e, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x36, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd3, 0x01, 0x92, - 0x41, 0x87, 0x01, 0x12, 0x20, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x52, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x27, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, - 0x6e, 0x65, 0x77, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x4a, 0x3a, - 0x0a, 0x03, 0x32, 0x30, 0x31, 0x12, 0x33, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x2d, 0x0a, 0x2b, 0x1a, - 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, + 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x70, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x27, 0x0a, 0x25, 0x47, 0x65, 0x74, 0x50, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x22, 0x4d, 0x0a, 0x26, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, + 0x7a, 0x0a, 0x12, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, + 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, + 0x49, 0x64, 0x12, 0x47, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x52, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x22, 0x5b, 0x0a, 0x1c, 0x47, + 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, + 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x09, 0x73, + 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, + 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, + 0x2d, 0x5a, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x24, 0x52, 0x08, + 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x49, 0x64, 0x22, 0x86, 0x01, 0x0a, 0x1d, 0x47, 0x65, 0x74, + 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, + 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x14, 0x70, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x72, + 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x12, 0x70, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, + 0x74, 0x22, 0x1e, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x22, 0x86, 0x01, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x14, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, + 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, + 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x12, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x32, 0x81, 0x25, 0x0a, 0x0f, 0x50, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x81, + 0x03, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x12, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x32, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0xfd, 0x01, 0x92, 0x41, 0x87, 0x01, 0x12, 0x20, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x27, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x2e, 0x4a, 0x3a, 0x0a, 0x03, 0x32, 0x30, 0x31, 0x12, 0x33, 0x0a, 0x02, 0x4f, + 0x4b, 0x12, 0x2d, 0x0a, 0x2b, 0x1a, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0xda, 0xbf, 0x07, 0x26, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x1a, + 0x19, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3a, 0x3a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x62, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x24, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x73, 0x12, 0xf4, 0x02, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x65, 0x73, 0x12, 0xa7, 0x03, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xf9, 0x01, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xac, 0x02, 0x92, 0x41, 0xb2, 0x01, 0x12, 0x1d, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x29, 0x47, 0x65, 0x74, 0x20, 0x61, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, @@ -1868,62 +1874,73 @@ var file_redpanda_api_dataplane_v1alpha2_pipeline_proto_rawDesc = []byte{ 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x35, 0x62, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x29, - 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xee, 0x02, 0x0a, 0x0d, 0x4c, 0x69, - 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x35, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4c, 0x69, - 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xed, 0x01, 0x92, 0x41, 0xb5, - 0x01, 0x12, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x73, 0x1a, 0x49, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x73, 0x2e, 0x20, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x3a, 0x20, 0x66, - 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x70, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0x4a, 0x47, 0x0a, - 0x03, 0x32, 0x30, 0x30, 0x12, 0x40, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x3a, 0x0a, 0x38, 0x1a, 0x36, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0xda, 0xbf, 0x07, 0x2f, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, + 0x64, 0x1a, 0x16, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x67, 0x65, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, + 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x35, 0x62, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x12, 0x29, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xb5, 0x03, 0x0a, + 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0xc0, 0x03, 0x0a, 0x0e, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x36, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, - 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbc, - 0x02, 0x92, 0x41, 0xeb, 0x01, 0x12, 0x22, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, - 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x88, 0x01, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x5b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5d, 0x28, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, - 0x6f, 0x63, 0x73, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, - 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, - 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61, 0x62, - 0x6f, 0x75, 0x74, 0x29, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb4, 0x02, + 0x92, 0x41, 0xb5, 0x01, 0x12, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x1a, 0x49, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2e, 0x20, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x3a, 0x20, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, + 0x6e, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2e, + 0x4a, 0x47, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x40, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x3a, 0x0a, + 0x38, 0x1a, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0xe2, 0xbf, 0x07, 0x43, 0x0a, 0x12, 0x72, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x73, 0x12, 0x2d, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x07, + 0x65, 0x61, 0x63, 0x68, 0x2e, 0x69, 0x64, 0x1a, 0x17, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, + 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, + 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x73, 0x12, 0xf6, 0x03, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x32, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xf2, 0x02, 0x92, 0x41, 0xeb, 0x01, 0x12, + 0x22, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x2e, 0x4a, 0x3a, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x33, 0x0a, 0x02, 0x4f, - 0x4b, 0x12, 0x2d, 0x0a, 0x2b, 0x1a, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x69, 0x6e, 0x65, 0x1a, 0x88, 0x01, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x5b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5d, + 0x28, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x6f, 0x63, 0x73, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, + 0x70, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x29, 0x20, 0x6f, + 0x66, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x4a, 0x3a, + 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x33, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x2d, 0x0a, 0x2b, 0x1a, + 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0xda, 0xbf, 0x07, 0x32, 0x0a, 0x09, + 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x19, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3f, 0x3a, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x62, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x29, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xca, 0x02, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x80, 0x03, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, @@ -1932,7 +1949,7 @@ var file_redpanda_api_dataplane_v1alpha2_pipeline_proto_rawDesc = []byte{ 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0xc6, 0x01, 0x92, 0x41, 0x89, 0x01, 0x12, 0x22, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x65, 0x22, 0xfc, 0x01, 0x92, 0x41, 0x89, 0x01, 0x12, 0x22, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x23, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, @@ -1941,177 +1958,195 @@ var file_redpanda_api_dataplane_v1alpha2_pipeline_proto_rawDesc = []byte{ 0x74, 0x65, 0x64, 0x12, 0x00, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x2a, - 0x29, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x85, 0x03, 0x0a, 0x0c, 0x53, - 0x74, 0x6f, 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x34, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x53, 0x74, - 0x6f, 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x73, 0xda, 0xbf, 0x07, 0x32, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, + 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x19, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x2a, 0x29, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, + 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, + 0x12, 0xb9, 0x03, 0x0a, 0x0c, 0x53, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x12, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x87, 0x02, 0x92, 0x41, 0xbb, 0x01, 0x12, - 0x21, 0x53, 0x74, 0x6f, 0x70, 0x73, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x1a, 0x29, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, 0x20, 0x72, 0x75, 0x6e, 0x6e, 0x69, - 0x6e, 0x67, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x4a, 0x3f, 0x0a, - 0x03, 0x32, 0x30, 0x30, 0x12, 0x38, 0x0a, 0x07, 0x53, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x12, - 0x2d, 0x0a, 0x2b, 0x1a, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x2a, - 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, - 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, - 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3a, 0x62, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x1a, 0x2e, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, - 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, 0x73, 0x74, - 0x6f, 0x70, 0x12, 0x8a, 0x03, 0x0a, 0x0d, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x53, 0x74, - 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x89, 0x02, 0x92, 0x41, 0xbc, 0x01, 0x12, 0x21, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x2a, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, 0x20, 0x73, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x20, 0x52, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x50, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbb, + 0x02, 0x92, 0x41, 0xbb, 0x01, 0x12, 0x21, 0x53, 0x74, 0x6f, 0x70, 0x73, 0x20, 0x61, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, - 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x4a, 0x3f, 0x0a, 0x03, 0x32, 0x30, 0x30, - 0x12, 0x38, 0x0a, 0x07, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x12, 0x2d, 0x0a, 0x2b, 0x1a, - 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, - 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, - 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x3b, 0x62, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x2f, - 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, - 0xc8, 0x04, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, + 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x29, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, + 0x20, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x2e, 0x4a, 0x3f, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x38, 0x0a, 0x07, 0x53, 0x74, + 0x6f, 0x70, 0x70, 0x65, 0x64, 0x12, 0x2d, 0x0a, 0x2b, 0x1a, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, + 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0xda, 0xbf, 0x07, 0x30, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, + 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x17, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, + 0x73, 0x74, 0x6f, 0x70, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x3a, 0x62, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x2e, 0x2f, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, 0x73, 0x74, 0x6f, 0x70, 0x12, 0xbf, 0x03, 0x0a, + 0x0d, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x35, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, + 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbe, 0x02, + 0x92, 0x41, 0xbc, 0x01, 0x12, 0x21, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, 0x20, 0x52, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x2a, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, + 0x20, 0x73, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x2e, 0x4a, 0x3f, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x38, 0x0a, 0x07, 0x53, 0x74, + 0x61, 0x72, 0x74, 0x65, 0x64, 0x12, 0x2d, 0x0a, 0x2b, 0x1a, 0x29, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x50, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, + 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0xda, 0xbf, 0x07, 0x31, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, + 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x18, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x3b, 0x62, 0x08, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x2f, 0x2f, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0xef, + 0x04, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x12, 0x46, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x12, 0x46, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x47, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, - 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x94, 0x03, 0x92, 0x41, 0xd5, 0x02, 0x12, 0x41, 0x52, 0x65, 0x74, 0x72, - 0x69, 0x65, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, - 0x66, 0x6f, 0x72, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x1a, 0xb5, 0x01, - 0x54, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, - 0x73, 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x5b, 0x63, 0x6f, 0x6d, - 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x63, - 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x5d, 0x28, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, - 0x64, 0x6f, 0x63, 0x73, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x63, 0x6f, - 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, - 0x2f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x61, 0x62, 0x6f, 0x75, - 0x74, 0x29, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x69, 0x6e, 0x73, 0x74, - 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x4a, 0x58, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x51, 0x0a, 0x02, - 0x4f, 0x4b, 0x12, 0x4b, 0x0a, 0x49, 0x1a, 0x47, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x8a, - 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x62, 0x01, 0x2a, - 0x12, 0x28, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x2d, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x8c, 0x03, 0x0a, 0x15, 0x47, - 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, - 0x63, 0x72, 0x65, 0x74, 0x12, 0x3d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0xf3, 0x01, 0x92, 0x41, 0xb0, 0x01, 0x12, 0x29, 0x47, 0x65, 0x74, 0x20, - 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x73, - 0x65, 0x63, 0x72, 0x65, 0x74, 0x1a, 0x32, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x20, 0x67, 0x69, 0x76, 0x65, - 0x6e, 0x20, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x2e, 0x4a, 0x4f, 0x0a, 0x03, 0x32, 0x30, 0x30, - 0x12, 0x48, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x42, 0x0a, 0x40, 0x1a, 0x3e, 0x2e, 0x72, 0x65, 0x64, + 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x47, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0xbb, 0x03, 0x92, 0x41, 0xd5, 0x02, 0x12, 0x41, 0x52, 0x65, 0x74, 0x72, 0x69, + 0x65, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x1a, 0xb5, 0x01, 0x54, + 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, + 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x5b, 0x63, 0x6f, 0x6d, 0x70, + 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, + 0x73, 0x73, 0x6f, 0x72, 0x73, 0x5d, 0x28, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, + 0x6f, 0x63, 0x73, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, + 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, + 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x61, 0x62, 0x6f, 0x75, 0x74, + 0x29, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x2e, 0x4a, 0x58, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x51, 0x0a, 0x02, 0x4f, + 0x4b, 0x12, 0x4b, 0x0a, 0x49, 0x1a, 0x47, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0xda, 0xbf, + 0x07, 0x23, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x1a, 0x16, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x5f, 0x67, 0x65, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x2d, 0x62, 0x01, 0x2a, 0x12, 0x28, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x32, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2d, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x12, 0xb4, 0x03, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x3d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, - 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, - 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x31, 0x12, 0x2f, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x32, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2d, 0x66, - 0x6f, 0x72, 0x2d, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x84, 0x03, 0x0a, 0x15, 0x47, 0x65, - 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, - 0x65, 0x74, 0x73, 0x12, 0x3d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0xeb, 0x01, 0x92, 0x41, 0xa8, 0x01, 0x12, 0x29, 0x47, 0x65, 0x74, 0x20, 0x52, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, - 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x62, 0x79, 0x20, 0x73, 0x65, 0x63, - 0x72, 0x65, 0x74, 0x73, 0x1a, 0x2a, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x73, 0x20, 0x62, 0x79, 0x20, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x2e, - 0x4a, 0x4f, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x48, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x42, 0x0a, - 0x40, 0x1a, 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9b, 0x02, 0x92, 0x41, 0xb0, 0x01, + 0x12, 0x29, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x1a, 0x32, 0x47, 0x65, 0x74, + 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, + 0x61, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x2e, 0x4a, + 0x4f, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x48, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x42, 0x0a, 0x40, + 0x1a, 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x46, + 0x6f, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0xda, 0xbf, 0x07, 0x24, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x1a, + 0x17, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, + 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x31, 0x12, 0x2f, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x32, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2d, 0x66, 0x6f, 0x72, + 0x2d, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0xac, 0x03, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x50, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, + 0x73, 0x12, 0x3d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, - 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x31, 0x12, - 0x2f, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2d, 0x62, 0x79, 0x2d, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, - 0x1a, 0xb5, 0x01, 0x92, 0x41, 0xb1, 0x01, 0x0a, 0x24, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x20, 0x28, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x29, 0x12, 0x88, 0x01, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6d, 0x61, 0x6e, 0x61, 0x67, - 0x65, 0x20, 0x5b, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x5d, 0x28, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x6f, 0x63, - 0x73, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x65, - 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x61, 0x62, - 0x6f, 0x75, 0x74, 0x29, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x61, - 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x42, 0xbc, 0x02, 0x0a, 0x23, 0x63, 0x6f, 0x6d, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, - 0x42, 0x0d, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, - 0x01, 0x5a, 0x67, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, 0x6e, 0x73, - 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, 0x6b, 0x67, 0x2f, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2f, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x3b, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x44, - 0xaa, 0x02, 0x1f, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, - 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x32, 0xca, 0x02, 0x1f, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, - 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x32, 0xe2, 0x02, 0x2b, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, - 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0xea, 0x02, 0x22, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, - 0x70, 0x69, 0x3a, 0x3a, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x3a, 0x3a, 0x56, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x42, 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x42, + 0x79, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x93, 0x02, 0x92, 0x41, 0xa8, 0x01, 0x12, 0x29, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, + 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x62, 0x79, 0x20, 0x73, 0x65, 0x63, 0x72, 0x65, + 0x74, 0x73, 0x1a, 0x2a, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x73, 0x20, 0x62, 0x79, 0x20, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x2e, 0x4a, 0x4f, + 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x48, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x42, 0x0a, 0x40, 0x1a, + 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x42, 0x79, + 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0xda, + 0xbf, 0x07, 0x24, 0x0a, 0x09, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x1a, 0x17, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x31, 0x12, 0x2f, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, + 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2d, 0x62, 0x79, 0x2d, 0x73, + 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x1a, 0xb5, 0x01, 0x92, 0x41, 0xb1, 0x01, 0x0a, 0x24, 0x52, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, + 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x28, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x32, 0x29, 0x12, 0x88, 0x01, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x20, 0x5b, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x20, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5d, 0x28, 0x68, 0x74, 0x74, 0x70, 0x73, + 0x3a, 0x2f, 0x2f, 0x64, 0x6f, 0x63, 0x73, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x2f, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x29, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x42, 0xbc, + 0x02, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x42, 0x0d, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x67, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, + 0x61, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, + 0x64, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x3b, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, + 0xa2, 0x02, 0x03, 0x52, 0x41, 0x44, 0xaa, 0x02, 0x1f, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, + 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0xca, 0x02, 0x1f, 0x52, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0xe2, 0x02, 0x2b, 0x52, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x5c, 0x47, 0x50, 0x42, + 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x22, 0x52, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x62, 0x06, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/backend/pkg/protogen/redpanda/api/dataplane/v1alpha3/ai_agent.pb.go b/backend/pkg/protogen/redpanda/api/dataplane/v1alpha3/ai_agent.pb.go index 15baccae7e..438e2d49e0 100644 --- a/backend/pkg/protogen/redpanda/api/dataplane/v1alpha3/ai_agent.pb.go +++ b/backend/pkg/protogen/redpanda/api/dataplane/v1alpha3/ai_agent.pb.go @@ -11,6 +11,7 @@ import ( sync "sync" _ "buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate" + _ "buf.build/gen/go/redpandadata/common/protocolbuffers/go/redpanda/api/common/v1" _ "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options" _ "google.golang.org/genproto/googleapis/api/annotations" protoreflect "google.golang.org/protobuf/reflect/protoreflect" @@ -2103,711 +2104,733 @@ var file_redpanda_api_dataplane_v1alpha3_ai_agent_proto_rawDesc = []byte{ 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, - 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, - 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbc, - 0x22, 0x0a, 0x07, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xe0, 0x41, 0x03, 0xba, 0x48, 0x15, 0x72, 0x13, - 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, - 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, - 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, - 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, - 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, - 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, - 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x82, 0x01, 0x0a, - 0x0d, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x5d, 0x92, 0x41, 0x4d, 0x32, 0x4b, 0x53, 0x79, 0x73, 0x74, 0x65, - 0x6d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x74, - 0x68, 0x61, 0x74, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x68, 0x6f, 0x77, 0x20, 0x74, - 0x68, 0x65, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x73, 0x68, 0x6f, 0x75, - 0x6c, 0x64, 0x20, 0x62, 0x65, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x2e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x07, 0xc8, 0x01, 0x01, 0x72, - 0x02, 0x10, 0x0a, 0x52, 0x0c, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x50, 0x72, 0x6f, 0x6d, 0x70, - 0x74, 0x12, 0x58, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, - 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x05, 0x6d, - 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0xe0, 0x41, 0x02, 0xba, - 0x48, 0x08, 0xc8, 0x01, 0x01, 0x72, 0x03, 0x18, 0x80, 0x01, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, - 0x6c, 0x12, 0x59, 0x0a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, - 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, + 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbc, 0x22, 0x0a, 0x07, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x12, 0x2b, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xe0, 0x41, + 0x03, 0xba, 0x48, 0x15, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, + 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x47, 0x0a, + 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, + 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, + 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, + 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, + 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x82, 0x01, 0x0a, 0x0d, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x70, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x5d, 0x92, 0x41, 0x4d, 0x32, + 0x4b, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, + 0x20, 0x68, 0x6f, 0x77, 0x20, 0x74, 0x68, 0x65, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, + 0x74, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x68, 0x61, 0x76, 0x65, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x2e, 0xe0, 0x41, 0x02, 0xba, + 0x48, 0x07, 0xc8, 0x01, 0x01, 0x72, 0x02, 0x10, 0x0a, 0x52, 0x0c, 0x73, 0x79, 0x73, 0x74, 0x65, + 0x6d, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x58, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x09, 0xe0, 0x41, + 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x12, 0x24, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x0e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, 0x72, 0x03, 0x18, 0x80, 0x01, + 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x59, 0x0a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, + 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x73, 0x12, 0x83, 0x02, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x2e, 0x4d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x52, 0x0a, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x83, 0x02, 0x0a, - 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x42, - 0xb5, 0x01, 0x92, 0x41, 0xb1, 0x01, 0x32, 0xae, 0x01, 0x54, 0x68, 0x65, 0x20, 0x72, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x6f, 0x66, - 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, - 0x68, 0x65, 0x20, 0x41, 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x20, 0x44, 0x65, 0x70, - 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x62, 0x61, - 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x73, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, 0x75, - 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x64, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x6d, 0x69, 0x67, - 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x74, 0x77, 0x65, 0x61, 0x6b, 0x65, 0x64, 0x20, 0x62, 0x61, - 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x74, 0x69, 0x6c, 0x69, - 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x41, 0x49, - 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x73, 0x12, 0x75, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, - 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, - 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, - 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x49, 0x0a, 0x05, 0x73, 0x74, 0x61, - 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, - 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x30, 0x0a, 0x0e, 0x6d, - 0x61, 0x78, 0x5f, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0d, 0x20, - 0x01, 0x28, 0x05, 0x42, 0x09, 0xba, 0x48, 0x06, 0x1a, 0x04, 0x18, 0x64, 0x28, 0x01, 0x52, 0x0d, - 0x6d, 0x61, 0x78, 0x49, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x6b, 0x0a, - 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x73, 0x42, 0xb5, 0x01, 0x92, 0x41, 0xb1, 0x01, 0x32, 0xae, 0x01, 0x54, + 0x68, 0x65, 0x20, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6d, 0x6f, + 0x75, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x41, 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x2e, 0x20, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, + 0x20, 0x62, 0x65, 0x20, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x64, 0x2c, 0x20, + 0x6f, 0x72, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x74, 0x77, 0x65, 0x61, + 0x6b, 0x65, 0x64, 0x20, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x41, 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x09, 0x72, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x75, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, + 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, - 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x77, 0x0a, 0x09, 0x73, 0x75, - 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, - 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x20, 0xba, 0x48, 0x1d, 0x9a, 0x01, 0x1a, 0x22, 0x18, - 0x72, 0x16, 0x10, 0x01, 0x18, 0x40, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, - 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x09, 0x73, 0x75, 0x62, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x73, 0x12, 0x50, 0x0a, 0x07, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x18, 0x10, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x47, - 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x07, 0x67, 0x61, - 0x74, 0x65, 0x77, 0x61, 0x79, 0x12, 0x51, 0x0a, 0x0a, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x63, - 0x61, 0x72, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x72, 0x64, 0x52, 0x09, 0x61, - 0x67, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x72, 0x64, 0x1a, 0x71, 0x0a, 0x0f, 0x4d, 0x63, 0x70, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 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, 0x48, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, + 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, + 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, + 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, + 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, + 0x49, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, + 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x75, 0x72, + 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x75, 0x72, + 0x6c, 0x12, 0x30, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x42, 0x09, 0xba, 0x48, 0x06, 0x1a, 0x04, + 0x18, 0x64, 0x28, 0x01, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x49, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x12, 0x6b, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, - 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, - 0x61, 0x67, 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, 0x1a, 0x6f, 0x0a, 0x0e, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, - 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, 0x47, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0xf1, 0x07, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x12, 0x52, 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, - 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x48, 0x00, 0x52, 0x06, - 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x12, 0x5b, 0x0a, 0x09, 0x61, 0x6e, 0x74, 0x68, 0x72, 0x6f, - 0x70, 0x69, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x41, 0x6e, 0x74, - 0x68, 0x72, 0x6f, 0x70, 0x69, 0x63, 0x48, 0x00, 0x52, 0x09, 0x61, 0x6e, 0x74, 0x68, 0x72, 0x6f, - 0x70, 0x69, 0x63, 0x12, 0x52, 0x0a, 0x06, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, + 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x77, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0f, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x48, 0x00, 0x52, - 0x06, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x12, 0x71, 0x0a, 0x11, 0x6f, 0x70, 0x65, 0x6e, 0x61, - 0x69, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x75, + 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x20, 0xba, 0x48, + 0x1d, 0x9a, 0x01, 0x1a, 0x22, 0x18, 0x72, 0x16, 0x10, 0x01, 0x18, 0x40, 0x32, 0x10, 0x5e, 0x5b, + 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x09, + 0x73, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x50, 0x0a, 0x07, 0x67, 0x61, 0x74, + 0x65, 0x77, 0x61, 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x52, 0x07, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x12, 0x51, 0x0a, 0x0a, 0x61, + 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, + 0x61, 0x72, 0x64, 0x52, 0x09, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x72, 0x64, 0x1a, 0x71, + 0x0a, 0x0f, 0x4d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 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, 0x48, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, - 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x43, 0x6f, 0x6d, 0x70, - 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x48, 0x00, 0x52, 0x10, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, - 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x1a, 0x8a, 0x01, 0x0a, 0x06, 0x4f, - 0x70, 0x65, 0x6e, 0x41, 0x49, 0x12, 0x65, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x4c, 0xba, 0x48, 0x49, 0xd8, 0x01, 0x01, 0x72, 0x44, - 0x32, 0x42, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, - 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, - 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x28, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, - 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x29, - 0x3f, 0x5c, 0x7d, 0x24, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x12, 0x19, 0x0a, 0x08, - 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x62, 0x61, 0x73, 0x65, 0x55, 0x72, 0x6c, 0x1a, 0x8d, 0x01, 0x0a, 0x09, 0x41, 0x6e, 0x74, 0x68, - 0x72, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x65, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x4c, 0xba, 0x48, 0x49, 0xd8, 0x01, 0x01, 0x72, 0x44, - 0x32, 0x42, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, - 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, - 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x28, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, - 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x29, - 0x3f, 0x5c, 0x7d, 0x24, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x12, 0x19, 0x0a, 0x08, - 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x62, 0x61, 0x73, 0x65, 0x55, 0x72, 0x6c, 0x1a, 0x8a, 0x01, 0x0a, 0x06, 0x47, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x12, 0x65, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x4c, 0xba, 0x48, 0x49, 0xd8, 0x01, 0x01, 0x72, 0x44, 0x32, 0x42, 0x5e, - 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, - 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, - 0x5f, 0x5d, 0x2a, 0x28, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, - 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x29, 0x3f, 0x5c, 0x7d, - 0x24, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x61, 0x73, - 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x73, - 0x65, 0x55, 0x72, 0x6c, 0x1a, 0xaf, 0x01, 0x0a, 0x10, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x43, - 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x12, 0x65, 0x0a, 0x07, 0x61, 0x70, 0x69, - 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x4c, 0xba, 0x48, 0x49, 0xd8, - 0x01, 0x01, 0x72, 0x44, 0x32, 0x42, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, - 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, - 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x28, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, - 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, - 0x5f, 0x5d, 0x2a, 0x29, 0x3f, 0x5c, 0x7d, 0x24, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, - 0x12, 0x34, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x19, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x13, 0xc8, 0x01, 0x01, 0x72, 0x0e, 0x32, - 0x0c, 0x5e, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3f, 0x3a, 0x2f, 0x2f, 0x2e, 0x2a, 0x52, 0x07, 0x62, - 0x61, 0x73, 0x65, 0x55, 0x72, 0x6c, 0x42, 0x11, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x12, 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, 0x1a, 0xae, 0x01, 0x0a, 0x0e, 0x53, 0x65, - 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x09, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x74, 0x0a, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, - 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x4f, 0xe0, 0x41, 0x02, - 0xba, 0x48, 0x49, 0xc8, 0x01, 0x01, 0x72, 0x44, 0x32, 0x42, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, - 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, - 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x28, 0x5c, - 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, - 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x29, 0x3f, 0x5c, 0x7d, 0x24, 0x52, 0x0c, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x1a, 0x51, 0x0a, 0x09, 0x4d, 0x43, - 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x34, 0x0a, 0x11, 0x74, 0x6f, 0x6f, 0x6c, 0x5f, - 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x67, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0f, 0x74, 0x6f, - 0x6f, 0x6c, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x65, 0x67, 0x65, 0x78, 0x1a, 0xce, 0x03, - 0x0a, 0x08, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x12, 0xbe, 0x01, 0x0a, 0x0d, 0x73, - 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x98, 0x01, 0x92, 0x41, 0x87, 0x01, 0x32, 0x84, 0x01, 0x53, 0x79, 0x73, 0x74, - 0x65, 0x6d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, - 0x74, 0x68, 0x61, 0x74, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x68, 0x6f, 0x77, 0x20, - 0x74, 0x68, 0x69, 0x73, 0x20, 0x73, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x73, 0x68, - 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x68, 0x61, 0x76, 0x65, 0x2e, 0x20, 0x54, 0x68, 0x65, - 0x20, 0x73, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, - 0x74, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x20, - 0x61, 0x6e, 0x64, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x69, - 0x74, 0x73, 0x20, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2e, - 0xe0, 0x41, 0x02, 0xba, 0x48, 0x07, 0xc8, 0x01, 0x01, 0x72, 0x02, 0x10, 0x0a, 0x52, 0x0c, 0x73, - 0x79, 0x73, 0x74, 0x65, 0x6d, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x62, 0x0a, 0x0b, 0x6d, - 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x41, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x67, - 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x0a, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, - 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, - 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x71, 0x0a, 0x0f, 0x4d, - 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, + 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x43, 0x50, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x48, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 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, 0x1a, 0x6f, 0x0a, 0x0e, 0x53, 0x75, + 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 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, 0x47, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, + 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0xf1, 0x07, 0x0a, 0x08, + 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x52, 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, + 0x61, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, + 0x41, 0x49, 0x48, 0x00, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x12, 0x5b, 0x0a, 0x09, + 0x61, 0x6e, 0x74, 0x68, 0x72, 0x6f, 0x70, 0x69, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x8c, - 0x01, 0x0a, 0x0d, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x12, 0x7b, 0x0a, 0x12, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, - 0x77, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x4d, 0x92, 0x41, - 0x2f, 0x32, 0x2d, 0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x20, 0x67, 0x61, 0x74, 0x65, 0x77, - 0x61, 0x79, 0x20, 0x49, 0x44, 0x20, 0x28, 0x32, 0x30, 0x2d, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, - 0x74, 0x65, 0x72, 0x20, 0x58, 0x49, 0x44, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x29, 0x2e, - 0xe0, 0x41, 0x02, 0xba, 0x48, 0x15, 0xc8, 0x01, 0x01, 0x72, 0x10, 0x32, 0x0b, 0x5e, 0x5b, 0x61, - 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5d, 0x2b, 0x24, 0x98, 0x01, 0x14, 0x52, 0x10, 0x76, 0x69, 0x72, - 0x74, 0x75, 0x61, 0x6c, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x64, 0x1a, 0xdb, 0x04, - 0x0a, 0x09, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x72, 0x64, 0x12, 0x23, 0x0a, 0x08, 0x69, - 0x63, 0x6f, 0x6e, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, - 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x04, 0x52, 0x07, 0x69, 0x63, 0x6f, 0x6e, 0x55, 0x72, 0x6c, - 0x12, 0x35, 0x0a, 0x11, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, - 0x72, 0x03, 0x18, 0x80, 0x04, 0x52, 0x10, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x72, 0x6c, 0x12, 0x57, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, - 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, + 0x65, 0x72, 0x2e, 0x41, 0x6e, 0x74, 0x68, 0x72, 0x6f, 0x70, 0x69, 0x63, 0x48, 0x00, 0x52, 0x09, + 0x61, 0x6e, 0x74, 0x68, 0x72, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x52, 0x0a, 0x06, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, - 0x12, 0x50, 0x0a, 0x06, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x43, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x52, 0x06, 0x73, 0x6b, 0x69, 0x6c, - 0x6c, 0x73, 0x1a, 0x54, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x2c, - 0x0a, 0x0c, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x01, 0x52, 0x0c, - 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x03, - 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, - 0x18, 0x80, 0x04, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x1a, 0xf0, 0x01, 0x0a, 0x05, 0x53, 0x6b, 0x69, - 0x6c, 0x6c, 0x12, 0x1d, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, - 0xe0, 0x41, 0x02, 0xba, 0x48, 0x07, 0xc8, 0x01, 0x01, 0x72, 0x02, 0x18, 0x40, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x22, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x0e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, 0x72, 0x03, 0x18, 0x80, 0x01, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0xe0, 0x41, 0x02, 0xba, - 0x48, 0x08, 0xc8, 0x01, 0x01, 0x72, 0x03, 0x18, 0x80, 0x04, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x65, - 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x65, - 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, - 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x6e, - 0x70, 0x75, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, - 0x75, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, - 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x22, 0x7d, 0x0a, 0x05, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, - 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, - 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, - 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, - 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, - 0x50, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, - 0x53, 0x54, 0x4f, 0x50, 0x50, 0x45, 0x44, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x54, 0x41, - 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x3a, 0x41, 0xea, 0x41, 0x3e, 0x0a, - 0x27, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, - 0x2f, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2a, 0x09, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x73, 0x32, 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x22, 0xdd, 0x0b, - 0x0a, 0x0d, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, - 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, - 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, - 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, - 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, - 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x82, 0x01, 0x0a, 0x0d, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, - 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x5d, 0x92, 0x41, - 0x4d, 0x32, 0x4b, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x20, 0x68, 0x6f, 0x77, 0x20, 0x74, 0x68, 0x65, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, - 0x65, 0x6e, 0x74, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x68, 0x61, 0x76, - 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x2e, 0xe0, 0x41, - 0x02, 0xba, 0x48, 0x07, 0xc8, 0x01, 0x01, 0x72, 0x02, 0x10, 0x0a, 0x52, 0x0c, 0x73, 0x79, 0x73, - 0x74, 0x65, 0x6d, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x58, 0x0a, 0x08, 0x70, 0x72, 0x6f, - 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x09, - 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, - 0x64, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x0e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, 0x72, 0x03, 0x18, - 0x80, 0x01, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x5f, 0x0a, 0x0b, 0x6d, 0x63, 0x70, - 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, - 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x4d, - 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, - 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x7b, 0x0a, 0x04, 0x74, 0x61, - 0x67, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x47, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x48, 0x00, 0x52, 0x06, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x12, 0x71, 0x0a, + 0x11, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, + 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, - 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, - 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, - 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, - 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x74, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x42, 0x09, 0xba, 0x48, - 0x06, 0x1a, 0x04, 0x18, 0x64, 0x28, 0x01, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x49, 0x74, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x6b, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, - 0xc8, 0x01, 0x01, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x12, 0x7d, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, - 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, + 0x41, 0x49, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x48, 0x00, 0x52, 0x10, + 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, + 0x1a, 0x8a, 0x01, 0x0a, 0x06, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x12, 0x65, 0x0a, 0x07, 0x61, + 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x4c, 0xba, 0x48, + 0x49, 0xd8, 0x01, 0x01, 0x72, 0x44, 0x32, 0x42, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, + 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, + 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x28, 0x5c, 0x2e, 0x5b, + 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, + 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x29, 0x3f, 0x5c, 0x7d, 0x24, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, + 0x65, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x55, 0x72, 0x6c, 0x1a, 0x8d, 0x01, + 0x0a, 0x09, 0x41, 0x6e, 0x74, 0x68, 0x72, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x65, 0x0a, 0x07, 0x61, + 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x4c, 0xba, 0x48, + 0x49, 0xd8, 0x01, 0x01, 0x72, 0x44, 0x32, 0x42, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, + 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, + 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x28, 0x5c, 0x2e, 0x5b, + 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, + 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x29, 0x3f, 0x5c, 0x7d, 0x24, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, + 0x65, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x55, 0x72, 0x6c, 0x1a, 0x8a, 0x01, + 0x0a, 0x06, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x12, 0x65, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x4c, 0xba, 0x48, 0x49, 0xd8, 0x01, + 0x01, 0x72, 0x44, 0x32, 0x42, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, + 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, + 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x28, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, + 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, + 0x5d, 0x2a, 0x29, 0x3f, 0x5c, 0x7d, 0x24, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x12, + 0x19, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x55, 0x72, 0x6c, 0x1a, 0xaf, 0x01, 0x0a, 0x10, 0x4f, + 0x70, 0x65, 0x6e, 0x41, 0x49, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x12, + 0x65, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x4c, 0xba, 0x48, 0x49, 0xd8, 0x01, 0x01, 0x72, 0x44, 0x32, 0x42, 0x5e, 0x5c, 0x24, 0x5c, + 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, + 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, + 0x28, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, + 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x29, 0x3f, 0x5c, 0x7d, 0x24, 0x52, 0x06, + 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x12, 0x34, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, + 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x13, + 0xc8, 0x01, 0x01, 0x72, 0x0e, 0x32, 0x0c, 0x5e, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3f, 0x3a, 0x2f, + 0x2f, 0x2e, 0x2a, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x55, 0x72, 0x6c, 0x42, 0x11, 0x0a, 0x08, + 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, 0x1a, + 0xae, 0x01, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, + 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x74, 0x0a, 0x0d, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x4f, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x49, 0xc8, 0x01, 0x01, 0x72, 0x44, 0x32, 0x42, + 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, + 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, + 0x39, 0x5f, 0x5d, 0x2a, 0x28, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x5f, 0x5d, + 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x29, 0x3f, 0x5c, + 0x7d, 0x24, 0x52, 0x0c, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, + 0x1a, 0x51, 0x0a, 0x09, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x34, 0x0a, + 0x11, 0x74, 0x6f, 0x6f, 0x6c, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x67, + 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, + 0x80, 0x02, 0x52, 0x0f, 0x74, 0x6f, 0x6f, 0x6c, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x65, + 0x67, 0x65, 0x78, 0x1a, 0xce, 0x03, 0x0a, 0x08, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x12, 0xbe, 0x01, 0x0a, 0x0d, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x70, 0x72, 0x6f, 0x6d, + 0x70, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x98, 0x01, 0x92, 0x41, 0x87, 0x01, 0x32, + 0x84, 0x01, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x65, 0x20, 0x68, 0x6f, 0x77, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x73, 0x75, 0x62, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x68, 0x61, 0x76, + 0x65, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x20, 0x73, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x20, + 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x20, + 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x69, 0x74, 0x73, 0x20, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x20, + 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x07, 0xc8, 0x01, 0x01, 0x72, + 0x02, 0x10, 0x0a, 0x52, 0x0c, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x50, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x12, 0x62, 0x0a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x20, 0xba, 0x48, 0x1d, 0x9a, 0x01, 0x1a, 0x22, 0x18, 0x72, - 0x16, 0x10, 0x01, 0x18, 0x40, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, - 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x09, 0x73, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, - 0x74, 0x73, 0x12, 0x50, 0x0a, 0x07, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x18, 0x0d, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x61, - 0x74, 0x65, 0x77, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x07, 0x67, 0x61, 0x74, - 0x65, 0x77, 0x61, 0x79, 0x12, 0x51, 0x0a, 0x0a, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x61, - 0x72, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x72, 0x64, 0x52, 0x09, 0x61, 0x67, - 0x65, 0x6e, 0x74, 0x43, 0x61, 0x72, 0x64, 0x1a, 0x71, 0x0a, 0x0f, 0x4d, 0x63, 0x70, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 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, 0x48, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, - 0x67, 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, 0x1a, 0x6f, 0x0a, 0x0e, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 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, 0x47, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x2e, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x63, 0x70, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x6d, 0x63, 0x70, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, + 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x1a, 0x71, 0x0a, 0x0f, 0x4d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 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, 0x48, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, + 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x8c, 0x01, 0x0a, 0x0d, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x7b, 0x0a, 0x12, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, + 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x4d, 0x92, 0x41, 0x2f, 0x32, 0x2d, 0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, + 0x20, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x20, 0x49, 0x44, 0x20, 0x28, 0x32, 0x30, 0x2d, + 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x58, 0x49, 0x44, 0x20, 0x66, 0x6f, + 0x72, 0x6d, 0x61, 0x74, 0x29, 0x2e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x15, 0xc8, 0x01, 0x01, 0x72, + 0x10, 0x32, 0x0b, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5d, 0x2b, 0x24, 0x98, 0x01, + 0x14, 0x52, 0x10, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, + 0x79, 0x49, 0x64, 0x1a, 0xdb, 0x04, 0x0a, 0x09, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x72, + 0x64, 0x12, 0x23, 0x0a, 0x08, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x04, 0x52, 0x07, 0x69, + 0x63, 0x6f, 0x6e, 0x55, 0x72, 0x6c, 0x12, 0x35, 0x0a, 0x11, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x04, 0x52, 0x10, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x72, 0x6c, 0x12, 0x57, 0x0a, + 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, + 0x61, 0x72, 0x64, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x50, 0x0a, 0x06, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x73, + 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x2e, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x02, 0x38, 0x01, 0x3a, 0x47, 0xea, 0x41, 0x44, 0x0a, 0x2d, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x41, 0x49, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2a, 0x09, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x73, 0x32, 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x22, 0x61, 0x0a, - 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x49, 0x0a, 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x07, 0x61, 0x69, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x22, 0x5c, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x08, 0x61, 0x69, 0x5f, - 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x61, 0x69, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x22, 0x43, - 0x0a, 0x11, 0x47, 0x65, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, - 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, - 0x02, 0x69, 0x64, 0x22, 0x59, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x08, 0x61, 0x69, 0x5f, - 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x61, 0x69, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x22, 0x8e, - 0x06, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x53, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x49, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, - 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0xa7, 0x01, 0x0a, 0x09, - 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, - 0x89, 0x01, 0x92, 0x41, 0x74, 0x32, 0x60, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x20, 0x74, 0x68, 0x65, - 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, - 0x6f, 0x66, 0x20, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x20, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, - 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x35, 0x30, 0x2e, 0x20, 0x55, 0x73, 0x65, 0x20, 0x2d, 0x31, - 0x20, 0x74, 0x6f, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59, 0x40, - 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xbf, 0xba, 0x48, 0x0f, 0x1a, 0x0d, 0x18, 0x64, - 0x28, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, - 0x65, 0x53, 0x69, 0x7a, 0x65, 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, 0x1a, 0xd8, 0x03, 0x0a, 0x06, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, - 0x87, 0x01, 0x0a, 0x0d, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x62, 0x92, 0x41, 0x40, 0x32, 0x3e, 0x41, 0x6e, - 0x79, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, - 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, - 0x62, 0x65, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x2e, 0xba, 0x48, 0x1c, 0xd8, - 0x01, 0x01, 0x72, 0x17, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, - 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0c, 0x6e, 0x61, 0x6d, - 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x12, 0xc9, 0x01, 0x0a, 0x04, 0x74, 0x61, - 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x45, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, - 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, - 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, - 0x6e, 0x92, 0x41, 0x3e, 0x32, 0x3c, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x20, - 0x74, 0x68, 0x61, 0x74, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x74, - 0x68, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x74, 0x61, 0x67, 0x73, - 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, - 0x64, 0x2e, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, - 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, - 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, - 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, - 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x63, 0x70, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, - 0x85, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x09, 0x61, 0x69, 0x5f, 0x61, - 0x67, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x61, 0x69, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, - 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, - 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, - 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xb4, 0x0b, 0x0a, 0x0d, 0x41, 0x49, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x64, 0x69, 0x73, - 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x1e, 0xba, 0x48, 0x1b, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, - 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, - 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, - 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x7c, 0x0a, 0x0d, 0x73, 0x79, 0x73, 0x74, - 0x65, 0x6d, 0x5f, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x57, 0x92, 0x41, 0x4d, 0x32, 0x4b, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x20, 0x69, 0x6e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x64, - 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x68, 0x6f, 0x77, 0x20, 0x74, 0x68, 0x65, 0x20, 0x41, 0x49, - 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, - 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, - 0x2e, 0xba, 0x48, 0x04, 0x72, 0x02, 0x10, 0x0a, 0x52, 0x0c, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, - 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x4d, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, - 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x01, 0x52, 0x05, - 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x5f, 0x0a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x4d, 0x63, 0x70, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x6d, 0x63, 0x70, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x7b, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x08, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x6b, 0x69, 0x6c, 0x6c, + 0x52, 0x06, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x1a, 0x54, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x0c, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, + 0x03, 0x18, 0x80, 0x01, 0x52, 0x0c, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x04, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x1a, 0xf0, + 0x01, 0x0a, 0x05, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x12, 0x1d, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x07, 0xc8, 0x01, 0x01, 0x72, + 0x02, 0x18, 0x40, 0x52, 0x02, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, + 0x72, 0x03, 0x18, 0x80, 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x0e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, 0x72, 0x03, 0x18, 0x80, 0x04, + 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, + 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, + 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x18, 0x05, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x08, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x1f, 0x0a, + 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x0a, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x21, + 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x07, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x4d, 0x6f, 0x64, 0x65, + 0x73, 0x22, 0x7d, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, + 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, + 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, + 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, + 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, + 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x45, 0x44, 0x10, 0x04, 0x12, + 0x0f, 0x0a, 0x0b, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, + 0x3a, 0x41, 0xea, 0x41, 0x3e, 0x0a, 0x27, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, - 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, - 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, - 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, - 0x61, 0x67, 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, - 0x12, 0x30, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x42, 0x09, 0xba, 0x48, 0x06, 0x1a, 0x04, 0x18, - 0x64, 0x28, 0x01, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x49, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x12, 0x60, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x7d, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, - 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x20, 0xba, 0x48, 0x1d, 0x9a, 0x01, 0x1a, 0x22, 0x18, - 0x72, 0x16, 0x10, 0x01, 0x18, 0x40, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, - 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x09, 0x73, 0x75, 0x62, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x73, 0x12, 0x50, 0x0a, 0x07, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2a, 0x09, + 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x32, 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x22, 0xdd, 0x0b, 0x0a, 0x0d, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, + 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, + 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, + 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, + 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x82, 0x01, 0x0a, 0x0d, 0x73, + 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x5d, 0x92, 0x41, 0x4d, 0x32, 0x4b, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x20, + 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x74, 0x68, 0x61, + 0x74, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x68, 0x6f, 0x77, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, + 0x20, 0x62, 0x65, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x64, 0x2e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x07, 0xc8, 0x01, 0x01, 0x72, 0x02, 0x10, + 0x0a, 0x52, 0x0c, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, + 0x58, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, + 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x05, 0x6d, 0x6f, 0x64, + 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, + 0xc8, 0x01, 0x01, 0x72, 0x03, 0x18, 0x80, 0x01, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12, + 0x5f, 0x0a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x07, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x47, - 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x07, 0x67, 0x61, - 0x74, 0x65, 0x77, 0x61, 0x79, 0x12, 0x51, 0x0a, 0x0a, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x63, - 0x61, 0x72, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x72, 0x64, 0x52, 0x09, 0x61, - 0x67, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x72, 0x64, 0x1a, 0x71, 0x0a, 0x0f, 0x4d, 0x63, 0x70, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 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, 0x48, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x2e, 0x4d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, + 0x12, 0x7b, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x54, + 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, + 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, + 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, + 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x4b, 0x0a, + 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, + 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x0e, 0x6d, 0x61, + 0x78, 0x5f, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x05, 0x42, 0x09, 0xba, 0x48, 0x06, 0x1a, 0x04, 0x18, 0x64, 0x28, 0x01, 0x52, 0x0d, 0x6d, + 0x61, 0x78, 0x49, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x6b, 0x0a, 0x0f, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, + 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x09, + 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x7d, 0x0a, 0x09, 0x73, 0x75, 0x62, + 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, - 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, - 0x61, 0x67, 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, 0x1a, 0x6f, 0x0a, 0x0e, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, - 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, 0x47, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x3a, 0x47, 0xea, 0x41, 0x44, 0x0a, 0x2d, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x41, 0x49, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2a, 0x09, 0x61, 0x69, 0x5f, 0x61, 0x67, - 0x65, 0x6e, 0x74, 0x73, 0x32, 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x22, 0xd9, - 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, - 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, - 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x54, 0x0a, 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, - 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x75, 0x62, + 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x20, 0xba, 0x48, 0x1d, + 0x9a, 0x01, 0x1a, 0x22, 0x18, 0x72, 0x16, 0x10, 0x01, 0x18, 0x40, 0x32, 0x10, 0x5e, 0x5b, 0x41, + 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x09, 0x73, + 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x50, 0x0a, 0x07, 0x67, 0x61, 0x74, 0x65, + 0x77, 0x61, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, - 0x03, 0xc8, 0x01, 0x01, 0x52, 0x07, 0x61, 0x69, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x3b, 0x0a, - 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 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, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x5c, 0x0a, 0x15, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, - 0x07, 0x61, 0x69, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x22, 0x46, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, - 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, - 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, - 0x22, 0x17, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x44, 0x0a, 0x12, 0x53, 0x74, 0x6f, - 0x70, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, - 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, - 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, - 0x5a, 0x0a, 0x13, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x52, 0x07, 0x61, 0x69, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x22, 0x45, 0x0a, 0x13, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, - 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, - 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, - 0x69, 0x64, 0x22, 0x5b, 0x0a, 0x14, 0x53, 0x74, 0x61, 0x72, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x08, 0x61, 0x69, - 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, + 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x52, 0x07, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x12, 0x51, 0x0a, 0x0a, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x61, + 0x72, 0x64, 0x52, 0x09, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x72, 0x64, 0x1a, 0x71, 0x0a, + 0x0f, 0x4d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 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, 0x48, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x43, 0x50, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, + 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x1a, 0x6f, 0x0a, 0x0e, 0x53, 0x75, 0x62, + 0x61, 0x67, 0x65, 0x6e, 0x74, 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, 0x47, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, - 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x61, 0x69, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x32, - 0xb6, 0x11, 0x0a, 0x0e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x12, 0x9a, 0x02, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x12, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x99, 0x01, 0x92, 0x41, 0x69, 0x12, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x20, 0x41, 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x16, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, - 0x74, 0x2e, 0x4a, 0x3e, 0x0a, 0x03, 0x32, 0x30, 0x31, 0x12, 0x37, 0x0a, 0x07, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x12, 0x2c, 0x0a, 0x2a, 0x1a, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x08, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, - 0x3a, 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x22, 0x13, 0x2f, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x61, 0x69, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, - 0xb3, 0x02, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x32, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x3a, 0x47, 0xea, 0x41, 0x44, 0x0a, + 0x2d, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, - 0x2e, 0x47, 0x65, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x33, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbb, 0x01, 0x92, 0x41, 0x8f, 0x01, 0x12, 0x0c, - 0x47, 0x65, 0x74, 0x20, 0x41, 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x18, 0x47, 0x65, - 0x74, 0x20, 0x61, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x20, 0x41, 0x49, 0x20, - 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4a, 0x39, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x32, 0x0a, - 0x02, 0x4f, 0x4b, 0x12, 0x2c, 0x0a, 0x2a, 0x1a, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, - 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, - 0x04, 0x08, 0x01, 0x10, 0x08, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x61, 0x69, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, - 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xb7, 0x02, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x49, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x49, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x72, + 0x2f, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2a, 0x09, + 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x32, 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x22, 0x61, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x49, 0x0a, 0x08, 0x61, + 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, + 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x07, 0x61, + 0x69, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x22, 0x5c, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x43, 0x0a, 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x61, 0x69, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x22, 0x43, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, + 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, + 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x59, 0x0a, 0x12, 0x47, 0x65, 0x74, + 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x43, 0x0a, 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x61, 0x69, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x22, 0x8e, 0x06, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x49, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x53, 0x0a, 0x06, + 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, - 0x69, 0x73, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0xb9, 0x01, 0x92, 0x41, 0x92, 0x01, 0x12, 0x0e, 0x4c, 0x69, 0x73, 0x74, - 0x20, 0x41, 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x38, 0x4c, 0x69, 0x73, 0x74, - 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x20, 0x4f, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x61, 0x6c, 0x3a, 0x20, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x62, 0x61, 0x73, - 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x2e, 0x4a, 0x46, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x3f, 0x0a, 0x02, 0x4f, - 0x4b, 0x12, 0x39, 0x0a, 0x37, 0x1a, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x49, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x8a, 0xa6, 0x1d, 0x04, - 0x08, 0x01, 0x10, 0x08, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x12, 0x13, 0x2f, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x61, 0x69, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, - 0xac, 0x02, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x12, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x69, 0x73, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x12, 0xa7, 0x01, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x89, 0x01, 0x92, 0x41, 0x74, 0x32, 0x60, 0x4c, 0x69, 0x6d, + 0x69, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, + 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x6e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x20, + 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x35, 0x30, 0x2e, 0x20, + 0x55, 0x73, 0x65, 0x20, 0x2d, 0x31, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, + 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x59, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x59, 0x40, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xbf, 0xba, + 0x48, 0x0f, 0x1a, 0x0d, 0x18, 0x64, 0x28, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 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, 0x1a, 0xd8, 0x03, 0x0a, 0x06, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x87, 0x01, 0x0a, 0x0d, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x63, + 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x62, 0x92, + 0x41, 0x40, 0x32, 0x3e, 0x41, 0x6e, 0x79, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, + 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, + 0x64, 0x2e, 0xba, 0x48, 0x1c, 0xd8, 0x01, 0x01, 0x72, 0x17, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, + 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, + 0x24, 0x52, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x12, + 0xc9, 0x01, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x45, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x54, 0x61, 0x67, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x6e, 0x92, 0x41, 0x3e, 0x32, 0x3c, 0x41, 0x49, 0x20, 0x61, + 0x67, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x64, 0x20, 0x74, 0x61, 0x67, 0x73, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x72, + 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x2e, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, + 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, + 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, + 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, + 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x63, 0x70, 0x5f, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x1a, 0x37, 0x0a, 0x09, + 0x54, 0x61, 0x67, 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, 0x85, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x49, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, + 0x0a, 0x09, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x33, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0xab, 0x01, 0x92, 0x41, 0x76, 0x12, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x41, - 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x28, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, - 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, - 0x2e, 0x4a, 0x39, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x32, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x2c, - 0x0a, 0x2a, 0x1a, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x8a, 0xa6, 0x1d, 0x04, - 0x08, 0x02, 0x10, 0x08, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x24, 0x3a, 0x08, 0x61, 0x69, 0x5f, 0x61, - 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x18, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, - 0x61, 0x69, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x92, - 0x02, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x12, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x61, 0x69, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, + 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, + 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xb4, 0x0b, + 0x0a, 0x0d, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, + 0x41, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xba, 0x48, 0x1b, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, + 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, + 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, + 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x7c, + 0x0a, 0x0d, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x57, 0x92, 0x41, 0x4d, 0x32, 0x4b, 0x53, 0x79, 0x73, 0x74, + 0x65, 0x6d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, + 0x74, 0x68, 0x61, 0x74, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x68, 0x6f, 0x77, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x73, 0x68, 0x6f, + 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x2e, 0xba, 0x48, 0x04, 0x72, 0x02, 0x10, 0x0a, 0x52, 0x0c, + 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x4d, 0x0a, 0x08, + 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x05, 0x6d, + 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, + 0x03, 0x18, 0x80, 0x01, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x5f, 0x0a, 0x0b, 0x6d, + 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x33, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x2e, 0x4d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x52, 0x0a, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x7b, 0x0a, 0x04, + 0x74, 0x61, 0x67, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, + 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, + 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, + 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x72, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x74, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x42, 0x09, + 0xba, 0x48, 0x06, 0x1a, 0x04, 0x18, 0x64, 0x28, 0x01, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x49, 0x74, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x60, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x7d, 0x0a, 0x09, 0x73, 0x75, + 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, + 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x75, + 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x20, 0xba, 0x48, + 0x1d, 0x9a, 0x01, 0x1a, 0x22, 0x18, 0x72, 0x16, 0x10, 0x01, 0x18, 0x40, 0x32, 0x10, 0x5e, 0x5b, + 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x09, + 0x73, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x50, 0x0a, 0x07, 0x67, 0x61, 0x74, + 0x65, 0x77, 0x61, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x52, 0x07, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x12, 0x51, 0x0a, 0x0a, 0x61, + 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, + 0x61, 0x72, 0x64, 0x52, 0x09, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x72, 0x64, 0x1a, 0x71, + 0x0a, 0x0f, 0x4d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 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, 0x48, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x43, 0x50, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x1a, 0x6f, 0x0a, 0x0e, 0x53, 0x75, + 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, 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, 0x47, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, + 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x3a, 0x47, 0xea, 0x41, 0x44, + 0x0a, 0x2d, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x33, 0x2f, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2a, + 0x09, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x32, 0x08, 0x61, 0x69, 0x5f, 0x61, + 0x67, 0x65, 0x6e, 0x74, 0x22, 0xd9, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, + 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, + 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, + 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x54, 0x0a, + 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, + 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x07, 0x61, 0x69, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, + 0x73, 0x6b, 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, 0x46, 0x69, 0x65, 0x6c, 0x64, + 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, + 0x22, 0x5c, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x08, 0x61, 0x69, 0x5f, + 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x61, 0x69, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x22, 0x46, + 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, + 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, + 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x17, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x91, 0x01, 0x92, 0x41, 0x66, 0x12, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x41, 0x49, - 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, - 0x6e, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4a, 0x12, 0x0a, 0x03, 0x32, - 0x30, 0x34, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x00, 0x4a, + 0x44, 0x0a, 0x12, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, + 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, + 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x5a, 0x0a, 0x13, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x49, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x08, + 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x61, 0x69, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x22, 0x45, 0x0a, 0x13, 0x53, 0x74, 0x61, 0x72, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, + 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, + 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x5b, 0x0a, 0x14, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x43, 0x0a, 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x61, 0x69, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x32, 0xa4, 0x14, 0x0a, 0x0e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xc2, 0x02, 0x0a, 0x0d, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x35, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc1, 0x01, 0x92, 0x41, 0x69, 0x12, + 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x41, 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x1a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x41, + 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4a, 0x3e, 0x0a, 0x03, 0x32, 0x30, 0x31, 0x12, + 0x37, 0x0a, 0x07, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x2c, 0x0a, 0x2a, 0x1a, 0x28, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0xda, 0xbf, 0x07, 0x24, 0x0a, 0x08, 0x61, 0x69, + 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x18, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x5f, 0x61, 0x69, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x08, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x3a, 0x08, + 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x22, 0x13, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2f, 0x61, 0x69, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0xe4, 0x02, + 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x32, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x47, + 0x65, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x33, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xec, 0x01, 0x92, 0x41, 0x8f, 0x01, 0x12, 0x0c, 0x47, 0x65, + 0x74, 0x20, 0x41, 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x18, 0x47, 0x65, 0x74, 0x20, + 0x61, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x2e, 0x4a, 0x39, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x32, 0x0a, 0x02, 0x4f, + 0x4b, 0x12, 0x2c, 0x0a, 0x2a, 0x1a, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, 0x04, 0x08, - 0x02, 0x10, 0x08, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x2a, 0x18, 0x2f, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x33, 0x2f, 0x61, 0x69, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, - 0x69, 0x64, 0x7d, 0x12, 0xc1, 0x02, 0x0a, 0x0b, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x49, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x12, 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0xda, 0xbf, 0x07, 0x2d, 0x0a, + 0x08, 0x61, 0x69, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x15, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x5f, 0x61, 0x69, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x65, 0x74, 0x8a, 0xa6, 0x1d, 0x04, + 0x08, 0x01, 0x10, 0x08, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x61, 0x69, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, + 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xfc, 0x02, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x49, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x49, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, + 0x73, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0xfe, 0x01, 0x92, 0x41, 0x92, 0x01, 0x12, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x20, + 0x41, 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x38, 0x4c, 0x69, 0x73, 0x74, 0x20, + 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x20, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x3a, 0x20, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x2e, 0x4a, 0x46, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x3f, 0x0a, 0x02, 0x4f, 0x4b, + 0x12, 0x39, 0x0a, 0x37, 0x1a, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0xe2, 0xbf, 0x07, 0x41, 0x0a, + 0x12, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, + 0x6e, 0x74, 0x73, 0x12, 0x2b, 0x0a, 0x08, 0x61, 0x69, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, + 0x07, 0x65, 0x61, 0x63, 0x68, 0x2e, 0x69, 0x64, 0x1a, 0x16, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x5f, 0x61, 0x69, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, + 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x08, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x12, 0x13, + 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x61, 0x69, 0x2d, 0x61, 0x67, 0x65, + 0x6e, 0x74, 0x73, 0x12, 0xe0, 0x02, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x49, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x49, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xdf, 0x01, 0x92, 0x41, 0x76, 0x12, 0x0f, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x20, 0x41, 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x28, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x49, 0x20, 0x61, + 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4a, 0x39, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x32, 0x0a, 0x02, + 0x4f, 0x4b, 0x12, 0x2c, 0x0a, 0x2a, 0x1a, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0xda, 0xbf, 0x07, 0x30, 0x0a, 0x08, 0x61, 0x69, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x0a, + 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x18, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x61, 0x69, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x08, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x24, 0x3a, 0x08, 0x61, 0x69, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x18, 0x2f, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x61, 0x69, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xc6, 0x02, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x41, - 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc6, - 0x01, 0x92, 0x41, 0x95, 0x01, 0x12, 0x0d, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x41, 0x49, 0x20, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x18, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, 0x20, 0x72, 0x75, 0x6e, - 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4a, 0x3e, - 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x37, 0x0a, 0x07, 0x53, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, - 0x12, 0x2c, 0x0a, 0x2a, 0x1a, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x33, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc5, 0x01, 0x92, 0x41, 0x66, 0x12, 0x0f, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x41, 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x13, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, + 0x6e, 0x74, 0x2e, 0x4a, 0x12, 0x0a, 0x03, 0x32, 0x30, 0x34, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x00, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, + 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, + 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0xda, 0xbf, 0x07, 0x30, 0x0a, 0x08, 0x61, 0x69, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x18, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x61, 0x69, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x08, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x2a, 0x18, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x2f, 0x61, 0x69, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, + 0xf5, 0x02, 0x0a, 0x0b, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, + 0x33, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x33, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4a, 0x2a, - 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, - 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x49, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xfa, 0x01, 0x92, 0x41, 0x95, + 0x01, 0x12, 0x0d, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x41, 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x1a, 0x18, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, 0x20, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, + 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4a, 0x3e, 0x0a, 0x03, 0x32, 0x30, + 0x30, 0x12, 0x37, 0x0a, 0x07, 0x53, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x12, 0x2c, 0x0a, 0x2a, + 0x1a, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x33, 0x2e, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, + 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, + 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0xda, 0xbf, 0x07, 0x30, 0x0a, 0x08, 0x61, 0x69, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, + 0x1a, 0x18, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x61, 0x69, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x08, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x1a, 0x1d, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x61, 0x69, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x69, - 0x64, 0x7d, 0x3a, 0x73, 0x74, 0x6f, 0x70, 0x12, 0xc7, 0x02, 0x0a, 0x0c, 0x53, 0x74, 0x61, 0x72, + 0x64, 0x7d, 0x3a, 0x73, 0x74, 0x6f, 0x70, 0x12, 0xfb, 0x02, 0x0a, 0x0c, 0x53, 0x74, 0x61, 0x72, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, @@ -2815,7 +2838,7 @@ var file_redpanda_api_dataplane_v1alpha3_ai_agent_proto_rawDesc = []byte{ 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc9, 0x01, 0x92, 0x41, 0x97, 0x01, 0x12, 0x0e, 0x53, 0x74, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xfd, 0x01, 0x92, 0x41, 0x97, 0x01, 0x12, 0x0e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x41, 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x19, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, 0x20, 0x73, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4a, 0x3e, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x37, @@ -2825,34 +2848,38 @@ var file_redpanda_api_dataplane_v1alpha3_ai_agent_proto_rawDesc = []byte{ 0x41, 0x49, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x08, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x20, 0x1a, 0x1e, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x61, 0x69, 0x2d, - 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x3a, 0x73, 0x74, 0x61, 0x72, - 0x74, 0x1a, 0x45, 0x92, 0x41, 0x42, 0x0a, 0x09, 0x41, 0x49, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x73, 0x12, 0x35, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6d, 0x61, - 0x6e, 0x61, 0x67, 0x65, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, - 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x42, 0xbb, 0x02, 0x0a, 0x23, 0x63, 0x6f, 0x6d, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, - 0x42, 0x0c, 0x41, 0x69, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, - 0x5a, 0x67, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, - 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2f, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x3b, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x44, 0xaa, - 0x02, 0x1f, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x44, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0xca, 0x02, 0x1f, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, - 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x33, 0xe2, 0x02, 0x2b, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, - 0x70, 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0xea, 0x02, 0x22, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, - 0x69, 0x3a, 0x3a, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x3a, 0x3a, 0x56, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x74, 0x75, 0x73, 0xda, 0xbf, 0x07, 0x30, 0x0a, 0x08, 0x61, 0x69, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x18, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x61, 0x69, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x08, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x1a, 0x1e, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x2f, 0x61, 0x69, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x3a, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x1a, 0x45, 0x92, 0x41, 0x42, 0x0a, 0x09, 0x41, 0x49, 0x20, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x35, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x20, 0x41, 0x49, 0x20, 0x61, 0x67, 0x65, 0x6e, + 0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x42, 0xbb, 0x02, 0x0a, + 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x33, 0x42, 0x0c, 0x41, 0x69, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x67, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, + 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x3b, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0xa2, 0x02, 0x03, + 0x52, 0x41, 0x44, 0xaa, 0x02, 0x1f, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, + 0x70, 0x69, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x56, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x33, 0xca, 0x02, 0x1f, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0xe2, 0x02, 0x2b, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x22, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x33, } var ( diff --git a/backend/pkg/protogen/redpanda/api/dataplane/v1alpha3/knowledge_base.pb.go b/backend/pkg/protogen/redpanda/api/dataplane/v1alpha3/knowledge_base.pb.go index a5a63190d8..9f4e15027d 100644 --- a/backend/pkg/protogen/redpanda/api/dataplane/v1alpha3/knowledge_base.pb.go +++ b/backend/pkg/protogen/redpanda/api/dataplane/v1alpha3/knowledge_base.pb.go @@ -11,6 +11,7 @@ import ( sync "sync" _ "buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate" + _ "buf.build/gen/go/redpandadata/common/protocolbuffers/go/redpanda/api/common/v1" _ "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options" _ "google.golang.org/genproto/googleapis/api/annotations" protoreflect "google.golang.org/protobuf/reflect/protoreflect" @@ -3326,755 +3327,778 @@ var file_redpanda_api_dataplane_v1alpha3_knowledge_base_proto_rawDesc = []byte{ 0x1a, 0x28, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x22, 0xb1, 0x18, 0x0a, 0x0d, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, - 0x73, 0x65, 0x12, 0x21, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x11, - 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x03, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, 0x72, 0x03, 0x98, 0x01, - 0x14, 0x52, 0x02, 0x69, 0x64, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, - 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, - 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, - 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, - 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x71, 0x0a, 0x0f, 0x76, 0x65, - 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, - 0x61, 0x73, 0x65, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, - 0x73, 0x65, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0e, 0x76, - 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x7d, 0x0a, - 0x13, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, - 0x61, 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, - 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, - 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x09, 0xe0, - 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x12, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, - 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x2f, 0x0a, 0x11, - 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x61, 0x6c, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x75, 0x72, - 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x72, 0x65, - 0x74, 0x72, 0x69, 0x65, 0x76, 0x61, 0x6c, 0x41, 0x70, 0x69, 0x55, 0x72, 0x6c, 0x12, 0x7b, 0x0a, - 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, - 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, - 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, - 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, - 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x50, 0x0a, 0x07, 0x69, 0x6e, - 0x64, 0x65, 0x78, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, - 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x49, 0x6e, 0x64, 0x65, - 0x78, 0x65, 0x72, 0x52, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, 0x12, 0x56, 0x0a, 0x09, - 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, - 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x52, 0x09, 0x72, 0x65, 0x74, 0x72, 0x69, - 0x65, 0x76, 0x65, 0x72, 0x12, 0x64, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, - 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0a, - 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x9f, 0x02, 0x0a, 0x0e, 0x56, - 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x64, 0x0a, - 0x08, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x46, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, - 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x50, - 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x48, 0x00, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x67, - 0x72, 0x65, 0x73, 0x1a, 0x8c, 0x01, 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, - 0x12, 0x3d, 0x0a, 0x03, 0x64, 0x73, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, - 0x41, 0x02, 0xba, 0x48, 0x25, 0xc8, 0x01, 0x01, 0x72, 0x20, 0x32, 0x1e, 0x5e, 0x5c, 0x24, 0x5c, - 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, - 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2b, 0x5c, 0x7d, 0x24, 0x52, 0x03, 0x64, 0x73, 0x6e, 0x12, - 0x41, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, - 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0xba, 0x48, 0x22, 0xc8, 0x01, 0x01, 0x72, 0x1d, 0x10, 0x01, - 0x18, 0x3f, 0x32, 0x17, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x5d, 0x5b, 0x61, 0x2d, - 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x24, 0x52, 0x05, 0x74, 0x61, 0x62, - 0x6c, 0x65, 0x42, 0x18, 0x0a, 0x0f, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x64, 0x61, 0x74, - 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, 0x1a, 0xe1, 0x04, 0x0a, - 0x12, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x6f, 0x72, 0x12, 0x71, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, - 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, - 0x72, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, - 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x0c, 0xe0, 0x41, 0x02, 0xe0, - 0x41, 0x05, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, - 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x0c, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0xba, 0x48, 0x03, 0xc8, 0x01, - 0x01, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x1a, 0x85, 0x03, 0x0a, 0x08, 0x50, 0x72, 0x6f, - 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x6b, 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x51, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, + 0x76, 0x31, 0x2f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x1a, 0x24, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x75, 0x73, 0x65, 0x72, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb1, 0x18, 0x0a, 0x0d, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, + 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x11, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x03, 0xba, 0x48, 0x08, 0xc8, + 0x01, 0x01, 0x72, 0x03, 0x98, 0x01, 0x14, 0x52, 0x02, 0x69, 0x64, 0x12, 0x47, 0x0a, 0x0c, 0x64, + 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, + 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, + 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, + 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x71, 0x0a, 0x0f, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, + 0x61, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, + 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, + 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, + 0xc8, 0x01, 0x01, 0x52, 0x0e, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, + 0x61, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x13, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, + 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x41, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, + 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x12, + 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, + 0x6f, 0x72, 0x12, 0x2f, 0x0a, 0x11, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x61, 0x6c, 0x5f, + 0x61, 0x70, 0x69, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, + 0x41, 0x03, 0x52, 0x0f, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x61, 0x6c, 0x41, 0x70, 0x69, + 0x55, 0x72, 0x6c, 0x12, 0x7b, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, + 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, + 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, + 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, + 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, + 0x12, 0x50, 0x0a, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, + 0x65, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, 0x52, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x65, 0x72, 0x12, 0x56, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, - 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, - 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x48, 0x00, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, - 0x61, 0x69, 0x12, 0x6b, 0x0a, 0x06, 0x63, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x51, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, - 0x73, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x43, - 0x6f, 0x68, 0x65, 0x72, 0x65, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x1a, - 0x21, 0x0a, 0x06, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x70, 0x69, - 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, - 0x65, 0x79, 0x1a, 0x69, 0x0a, 0x06, 0x43, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x12, 0x19, 0x0a, 0x08, - 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x62, 0x61, 0x73, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x44, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, - 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x25, - 0xc8, 0x01, 0x01, 0x72, 0x20, 0x32, 0x1e, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, - 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, - 0x5d, 0x2b, 0x5c, 0x7d, 0x24, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x42, 0x11, 0x0a, - 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, - 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x1a, 0xe3, 0x02, 0x0a, 0x07, 0x49, 0x6e, - 0x64, 0x65, 0x78, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x73, - 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x68, 0x75, 0x6e, 0x6b, - 0x53, 0x69, 0x7a, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x6f, 0x76, - 0x65, 0x72, 0x6c, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x68, 0x75, - 0x6e, 0x6b, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x70, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x55, 0x73, - 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x52, 0x0a, 0x11, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x25, 0xba, 0x48, 0x22, 0x72, 0x20, 0x32, 0x1e, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, - 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, - 0x2d, 0x39, 0x5f, 0x5d, 0x2b, 0x5c, 0x7d, 0x24, 0x52, 0x10, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x31, 0x0a, 0x0c, 0x69, 0x6e, - 0x70, 0x75, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, - 0x42, 0x0e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, 0x92, 0x01, 0x02, 0x08, 0x01, - 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x73, 0x12, 0x60, 0x0a, - 0x17, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5f, 0x73, 0x61, 0x73, 0x6c, 0x5f, 0x6d, - 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, + 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x52, + 0x09, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x12, 0x64, 0x0a, 0x0a, 0x67, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x41, 0x53, 0x4c, 0x4d, - 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x52, 0x15, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x53, 0x61, 0x73, 0x6c, 0x4d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x1a, - 0xf0, 0x03, 0x0a, 0x09, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x12, 0x5d, 0x0a, - 0x08, 0x72, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x41, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, - 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, - 0x65, 0x72, 0x52, 0x08, 0x72, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x1a, 0x83, 0x03, 0x0a, - 0x08, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, - 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x12, 0x66, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x47, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, + 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x1a, 0x9f, 0x02, 0x0a, 0x0e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, + 0x61, 0x73, 0x65, 0x12, 0x64, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, - 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x2e, - 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, - 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x1a, 0xf4, 0x01, 0x0a, 0x08, - 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x6b, 0x0a, 0x06, 0x63, 0x6f, 0x68, 0x65, - 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x51, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, - 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, - 0x65, 0x72, 0x2e, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, - 0x69, 0x64, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x48, 0x00, 0x52, 0x06, 0x63, - 0x6f, 0x68, 0x65, 0x72, 0x65, 0x1a, 0x6f, 0x0a, 0x06, 0x43, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x12, - 0x44, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x25, 0xc8, 0x01, 0x01, 0x72, 0x20, 0x32, 0x1e, 0x5e, - 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, - 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2b, 0x5c, 0x7d, 0x24, 0x52, 0x06, 0x61, - 0x70, 0x69, 0x4b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, - 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x42, 0x0a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x1a, 0xea, 0x02, 0x0a, 0x0a, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x69, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, - 0x61, 0x73, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, + 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, + 0x62, 0x61, 0x73, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x48, 0x00, 0x52, + 0x08, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x1a, 0x8c, 0x01, 0x0a, 0x08, 0x50, 0x6f, + 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x12, 0x3d, 0x0a, 0x03, 0x64, 0x73, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x25, 0xc8, 0x01, 0x01, 0x72, 0x20, + 0x32, 0x1e, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, + 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2b, 0x5c, 0x7d, 0x24, + 0x52, 0x03, 0x64, 0x73, 0x6e, 0x12, 0x41, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0xba, 0x48, 0x22, 0xc8, + 0x01, 0x01, 0x72, 0x1d, 0x10, 0x01, 0x18, 0x3f, 0x32, 0x17, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, + 0x2d, 0x5a, 0x5d, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, + 0x24, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x18, 0x0a, 0x0f, 0x76, 0x65, 0x63, 0x74, + 0x6f, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x05, 0xba, 0x48, 0x02, + 0x08, 0x01, 0x1a, 0xe1, 0x04, 0x0a, 0x12, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, + 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x71, 0x0a, 0x08, 0x70, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, + 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, + 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, - 0x01, 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x05, - 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0c, 0xe0, 0x41, 0x02, - 0xe0, 0x41, 0x05, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, - 0x1a, 0xcc, 0x01, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x63, 0x0a, - 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x49, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, - 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, - 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x48, 0x00, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, - 0x61, 0x69, 0x1a, 0x48, 0x0a, 0x06, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x12, 0x3e, 0x0a, 0x07, - 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xba, - 0x48, 0x22, 0x72, 0x20, 0x32, 0x1e, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, - 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, - 0x2b, 0x5c, 0x7d, 0x24, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x42, 0x11, 0x0a, 0x08, - 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, 0x3a, - 0x53, 0xea, 0x41, 0x50, 0x0a, 0x2d, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, - 0x61, 0x73, 0x65, 0x2a, 0x0f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, - 0x61, 0x73, 0x65, 0x73, 0x32, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, - 0x62, 0x61, 0x73, 0x65, 0x22, 0xa8, 0x16, 0x0a, 0x13, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, - 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, 0x0c, - 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, - 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, - 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, - 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, - 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x77, 0x0a, 0x0f, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, - 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, - 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x42, - 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0e, 0x76, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x13, 0x65, - 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, - 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x01, 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x0a, + 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x42, 0x0c, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0a, + 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x05, 0x6d, 0x6f, + 0x64, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0c, 0xe0, 0x41, 0x02, 0xe0, 0x41, + 0x05, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x1a, 0x85, + 0x03, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x6b, 0x0a, 0x06, 0x6f, + 0x70, 0x65, 0x6e, 0x61, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x51, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, + 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, + 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x50, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x48, 0x00, + 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x12, 0x6b, 0x0a, 0x06, 0x63, 0x6f, 0x68, 0x65, + 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x51, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, - 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x45, - 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, - 0x72, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x12, 0x65, 0x6d, - 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, - 0x12, 0x81, 0x01, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, - 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, - 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, - 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, - 0x74, 0x61, 0x67, 0x73, 0x12, 0x56, 0x0a, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, + 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x48, 0x00, 0x52, 0x06, 0x63, + 0x6f, 0x68, 0x65, 0x72, 0x65, 0x1a, 0x21, 0x0a, 0x06, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x12, + 0x17, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x1a, 0x69, 0x0a, 0x06, 0x43, 0x6f, 0x68, 0x65, + 0x72, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x44, 0x0a, + 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, + 0xe0, 0x41, 0x02, 0xba, 0x48, 0x25, 0xc8, 0x01, 0x01, 0x72, 0x20, 0x32, 0x1e, 0x5e, 0x5c, 0x24, + 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, + 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2b, 0x5c, 0x7d, 0x24, 0x52, 0x06, 0x61, 0x70, 0x69, + 0x4b, 0x65, 0x79, 0x42, 0x11, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, + 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x1a, + 0xe3, 0x02, 0x0a, 0x07, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x63, + 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, + 0x75, 0x6e, 0x6b, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0c, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x70, 0x12, + 0x2b, 0x0a, 0x11, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5f, 0x75, 0x73, 0x65, 0x72, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x52, 0x0a, 0x11, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, + 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xba, 0x48, 0x22, 0x72, 0x20, 0x32, 0x1e, + 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, + 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2b, 0x5c, 0x7d, 0x24, 0x52, 0x10, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, + 0x12, 0x31, 0x0a, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x73, + 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x0e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, + 0x01, 0x92, 0x01, 0x02, 0x08, 0x01, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x54, 0x6f, 0x70, + 0x69, 0x63, 0x73, 0x12, 0x60, 0x0a, 0x17, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5f, + 0x73, 0x61, 0x73, 0x6c, 0x5f, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x2e, 0x53, 0x41, 0x53, 0x4c, 0x4d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x52, 0x15, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x53, 0x61, 0x73, 0x6c, 0x4d, 0x65, 0x63, 0x68, + 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x1a, 0xf0, 0x03, 0x0a, 0x09, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, + 0x76, 0x65, 0x72, 0x12, 0x5d, 0x0a, 0x08, 0x72, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, - 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x49, 0x6e, 0x64, 0x65, - 0x78, 0x65, 0x72, 0x52, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, 0x12, 0x5c, 0x0a, 0x09, - 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x52, - 0x09, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x12, 0x5f, 0x0a, 0x0a, 0x67, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, + 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x2e, + 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x52, 0x08, 0x72, 0x65, 0x72, 0x61, 0x6e, 0x6b, + 0x65, 0x72, 0x1a, 0x83, 0x03, 0x0a, 0x08, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x12, + 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x66, 0x0a, 0x08, 0x70, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, + 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, + 0x69, 0x65, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x2e, 0x50, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x1a, 0xf4, 0x01, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x6b, + 0x0a, 0x06, 0x63, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x51, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, - 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x82, 0x02, 0x0a, 0x0e, - 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x6a, - 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x4c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, - 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x48, 0x00, - 0x52, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x1a, 0x6a, 0x0a, 0x08, 0x50, 0x6f, - 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x03, 0x64, 0x73, 0x6e, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x03, - 0x64, 0x73, 0x6e, 0x12, 0x41, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0xba, 0x48, 0x22, 0xc8, 0x01, 0x01, - 0x72, 0x1d, 0x10, 0x01, 0x18, 0x3f, 0x32, 0x17, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, - 0x5d, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x24, 0x52, - 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x18, 0x0a, 0x0f, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, - 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, - 0x1a, 0xcb, 0x04, 0x0a, 0x12, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x77, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, - 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, - 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, - 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, - 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x09, 0xe0, 0x41, 0x02, - 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, - 0x12, 0x29, 0x0a, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, - 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1f, 0x0a, 0x05, 0x6d, + 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x52, + 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, + 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x68, 0x65, 0x72, + 0x65, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x1a, 0x6f, 0x0a, 0x06, 0x43, + 0x6f, 0x68, 0x65, 0x72, 0x65, 0x12, 0x44, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x25, 0xc8, 0x01, + 0x01, 0x72, 0x20, 0x32, 0x1e, 0x5e, 0x5c, 0x24, 0x5c, 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, + 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2b, + 0x5c, 0x7d, 0x24, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, - 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x1a, 0xef, 0x02, 0x0a, - 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x71, 0x0a, 0x06, 0x6f, 0x70, 0x65, - 0x6e, 0x61, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x57, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x42, 0x0a, 0x0a, 0x08, + 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x1a, 0xea, 0x02, 0x0a, 0x0a, 0x47, 0x65, 0x6e, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x69, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, - 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, - 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, - 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x41, 0x49, 0x48, 0x00, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x12, 0x71, 0x0a, 0x06, - 0x63, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x57, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, + 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x09, 0xe0, + 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, + 0x65, 0x72, 0x12, 0x22, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x0c, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, + 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x1a, 0xcc, 0x01, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x12, 0x63, 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x49, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, + 0x61, 0x73, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x48, 0x00, + 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x1a, 0x48, 0x0a, 0x06, 0x4f, 0x70, 0x65, 0x6e, + 0x41, 0x49, 0x12, 0x3e, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x25, 0xba, 0x48, 0x22, 0x72, 0x20, 0x32, 0x1e, 0x5e, 0x5c, 0x24, 0x5c, + 0x7b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x5c, 0x2e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, + 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2b, 0x5c, 0x7d, 0x24, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, + 0x65, 0x79, 0x42, 0x11, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x05, + 0xba, 0x48, 0x02, 0x08, 0x01, 0x3a, 0x53, 0xea, 0x41, 0x50, 0x0a, 0x2d, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x4b, 0x6e, 0x6f, 0x77, + 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2a, 0x0f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, + 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x73, 0x32, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, + 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x22, 0xa8, 0x16, 0x0a, 0x13, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x43, - 0x6f, 0x68, 0x65, 0x72, 0x65, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x1a, - 0x21, 0x0a, 0x06, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x70, 0x69, - 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, - 0x65, 0x79, 0x1a, 0x47, 0x0a, 0x06, 0x43, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x12, 0x19, 0x0a, 0x08, - 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x62, 0x61, 0x73, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x22, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, - 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, - 0xc8, 0x01, 0x01, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x42, 0x11, 0x0a, 0x08, 0x70, - 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, 0x1a, 0x37, - 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x1a, 0xbc, 0x02, 0x0a, 0x07, 0x49, 0x6e, 0x64, 0x65, - 0x78, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x73, 0x69, 0x7a, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x53, 0x69, - 0x7a, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x6f, 0x76, 0x65, 0x72, - 0x6c, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x68, 0x75, 0x6e, 0x6b, - 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x70, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x55, 0x73, 0x65, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x10, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, - 0x64, 0x12, 0x31, 0x0a, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x69, 0x63, - 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x0e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, - 0x01, 0x01, 0x92, 0x01, 0x02, 0x08, 0x01, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x54, 0x6f, - 0x70, 0x69, 0x63, 0x73, 0x12, 0x60, 0x0a, 0x17, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x5f, 0x73, 0x61, 0x73, 0x6c, 0x5f, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x74, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, + 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, + 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, + 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x77, 0x0a, 0x0f, 0x76, 0x65, 0x63, 0x74, 0x6f, + 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x43, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, + 0x61, 0x62, 0x61, 0x73, 0x65, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, + 0x52, 0x0e, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, + 0x12, 0x83, 0x01, 0x0a, 0x13, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x67, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, + 0x01, 0x01, 0x52, 0x12, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, + 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x81, 0x01, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, + 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, + 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, + 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, + 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x56, 0x0a, 0x07, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, + 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, 0x52, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x65, 0x72, 0x12, 0x5c, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x53, 0x41, 0x53, 0x4c, 0x4d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x52, - 0x15, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x53, 0x61, 0x73, 0x6c, 0x4d, 0x65, 0x63, - 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x1a, 0xe7, 0x03, 0x0a, 0x09, 0x52, 0x65, 0x74, 0x72, 0x69, - 0x65, 0x76, 0x65, 0x72, 0x12, 0x63, 0x0a, 0x08, 0x72, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, + 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, + 0x69, 0x65, 0x76, 0x65, 0x72, 0x52, 0x09, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, + 0x12, 0x5f, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, + 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x1a, 0x82, 0x02, 0x0a, 0x0e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, + 0x62, 0x61, 0x73, 0x65, 0x12, 0x6a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, - 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x74, - 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x52, - 0x08, 0x72, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x1a, 0xf4, 0x02, 0x0a, 0x08, 0x52, 0x65, - 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, - 0x12, 0x6c, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x56, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, + 0x67, 0x72, 0x65, 0x73, 0x48, 0x00, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, + 0x1a, 0x6a, 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x03, + 0x64, 0x73, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, + 0x03, 0xc8, 0x01, 0x01, 0x52, 0x03, 0x64, 0x73, 0x6e, 0x12, 0x41, 0x0a, 0x05, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, + 0xba, 0x48, 0x22, 0xc8, 0x01, 0x01, 0x72, 0x1d, 0x10, 0x01, 0x18, 0x3f, 0x32, 0x17, 0x5e, 0x5b, + 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x5d, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, + 0x39, 0x5f, 0x5d, 0x2a, 0x24, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x18, 0x0a, 0x0f, + 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, + 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, 0x1a, 0xcb, 0x04, 0x0a, 0x12, 0x45, 0x6d, 0x62, 0x65, 0x64, + 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x77, 0x0a, + 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x50, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, + 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x73, 0x12, 0x1f, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x05, 0x6d, 0x6f, 0x64, + 0x65, 0x6c, 0x1a, 0xef, 0x02, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, + 0x71, 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x57, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x48, 0x00, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, + 0x61, 0x69, 0x12, 0x71, 0x0a, 0x06, 0x63, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x57, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, - 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, - 0x65, 0x72, 0x2e, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, - 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x1a, 0xdf, - 0x01, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x71, 0x0a, 0x06, 0x63, - 0x6f, 0x68, 0x65, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x57, 0x2e, 0x72, 0x65, + 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, + 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x48, 0x00, 0x52, 0x06, 0x63, + 0x6f, 0x68, 0x65, 0x72, 0x65, 0x1a, 0x21, 0x0a, 0x06, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x12, + 0x17, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x1a, 0x47, 0x0a, 0x06, 0x43, 0x6f, 0x68, 0x65, + 0x72, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x22, 0x0a, + 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, + 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, + 0x79, 0x42, 0x11, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x05, 0xba, + 0x48, 0x02, 0x08, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x1a, 0xbc, 0x02, + 0x0a, 0x07, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x75, + 0x6e, 0x6b, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, + 0x68, 0x75, 0x6e, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x75, 0x6e, + 0x6b, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0c, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x70, 0x12, 0x2b, 0x0a, + 0x11, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x50, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x31, 0x0a, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x5f, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x0e, 0xe0, + 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, 0x92, 0x01, 0x02, 0x08, 0x01, 0x52, 0x0b, 0x69, + 0x6e, 0x70, 0x75, 0x74, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x73, 0x12, 0x60, 0x0a, 0x17, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5f, 0x73, 0x61, 0x73, 0x6c, 0x5f, 0x6d, 0x65, 0x63, 0x68, + 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, - 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x72, 0x61, - 0x6e, 0x6b, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x43, 0x6f, - 0x68, 0x65, 0x72, 0x65, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x1a, 0x4d, - 0x0a, 0x06, 0x43, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x12, 0x22, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, - 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, - 0x03, 0xc8, 0x01, 0x01, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x05, - 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, - 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x42, 0x11, 0x0a, - 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, - 0x1a, 0xcc, 0x02, 0x0a, 0x0a, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x6f, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x48, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x41, 0x53, 0x4c, 0x4d, 0x65, 0x63, 0x68, + 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x52, 0x15, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x53, + 0x61, 0x73, 0x6c, 0x4d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x1a, 0xe7, 0x03, 0x0a, + 0x09, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x12, 0x63, 0x0a, 0x08, 0x72, 0x65, + 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, + 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x72, + 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x52, 0x08, 0x72, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x1a, + 0xf4, 0x02, 0x0a, 0x08, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, + 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x6c, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, + 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, + 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x52, + 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, + 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x1a, 0xdf, 0x01, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x12, 0x71, 0x0a, 0x06, 0x63, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x57, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, - 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x09, 0xe0, 0x41, 0x02, - 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, - 0x12, 0x1f, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, - 0x6c, 0x1a, 0xab, 0x01, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x69, - 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4f, + 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, + 0x72, 0x2e, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, + 0x68, 0x65, 0x72, 0x65, 0x1a, 0x4d, 0x0a, 0x06, 0x43, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x12, 0x22, + 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, + 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x05, 0x6d, 0x6f, + 0x64, 0x65, 0x6c, 0x42, 0x11, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, + 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, 0x1a, 0xcc, 0x02, 0x0a, 0x0a, 0x47, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x6f, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x48, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, + 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x47, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, + 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x1a, 0xab, 0x01, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x12, 0x69, 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, + 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4f, + 0x70, 0x65, 0x6e, 0x41, 0x49, 0x48, 0x00, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x1a, + 0x21, 0x0a, 0x06, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x70, 0x69, + 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, + 0x65, 0x79, 0x42, 0x11, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x05, + 0xba, 0x48, 0x02, 0x08, 0x01, 0x22, 0xbe, 0x15, 0x0a, 0x13, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, + 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, + 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, + 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, + 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, + 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xba, 0x48, 0x08, + 0xd8, 0x01, 0x01, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x77, 0x0a, 0x0f, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, - 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, - 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x48, - 0x00, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x1a, 0x21, 0x0a, 0x06, 0x4f, 0x70, 0x65, - 0x6e, 0x41, 0x49, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x42, 0x11, 0x0a, 0x08, - 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, 0x22, - 0xbe, 0x15, 0x0a, 0x13, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, - 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, - 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, - 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, - 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, - 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x2d, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xba, 0x48, 0x08, 0xd8, 0x01, 0x01, 0x72, 0x03, 0x18, - 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x77, 0x0a, 0x0f, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, - 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, - 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x56, - 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x42, 0x09, 0xe0, - 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0e, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, - 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x13, 0x65, 0x6d, 0x62, - 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, - 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x45, 0x6d, 0x62, - 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x42, - 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x12, 0x65, 0x6d, 0x62, 0x65, - 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x81, - 0x01, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, - 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, - 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, - 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, - 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, - 0x67, 0x73, 0x12, 0x56, 0x0a, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, - 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, - 0x72, 0x52, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, 0x12, 0x5c, 0x0a, 0x09, 0x72, 0x65, - 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, - 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x52, 0x09, 0x72, - 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x12, 0x5f, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x72, + 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, + 0x61, 0x73, 0x65, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0e, + 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x83, + 0x01, 0x0a, 0x13, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x67, 0x65, 0x6e, + 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x67, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0xbf, 0x01, 0x0a, 0x0e, 0x56, 0x65, - 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x6a, 0x0a, 0x08, - 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4c, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, - 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, - 0x61, 0x73, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x48, 0x00, 0x52, 0x08, - 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x1a, 0x27, 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x74, - 0x67, 0x72, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x03, 0x64, 0x73, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x03, 0x64, 0x73, - 0x6e, 0x42, 0x18, 0x0a, 0x0f, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, - 0x62, 0x61, 0x73, 0x65, 0x12, 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, 0x1a, 0xf4, 0x03, 0x0a, 0x12, - 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, - 0x6f, 0x72, 0x12, 0x77, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x74, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, + 0x52, 0x12, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x6f, 0x72, 0x12, 0x81, 0x01, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, + 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, + 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, + 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, + 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x56, 0x0a, 0x07, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, + 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, + 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, 0x52, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, + 0x12, 0x5c, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, + 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, + 0x76, 0x65, 0x72, 0x52, 0x09, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x12, 0x5f, + 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, + 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, + 0xbf, 0x01, 0x0a, 0x0e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, + 0x73, 0x65, 0x12, 0x6a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, - 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, - 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, - 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x1a, 0xe4, 0x02, 0x0a, 0x08, - 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x71, 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, - 0x61, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x57, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, - 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x45, - 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, - 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x41, - 0x49, 0x48, 0x00, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x12, 0x71, 0x0a, 0x06, 0x63, - 0x6f, 0x68, 0x65, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x57, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, - 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, - 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x43, 0x6f, - 0x68, 0x65, 0x72, 0x65, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x1a, 0x21, - 0x0a, 0x06, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, - 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, - 0x79, 0x1a, 0x3c, 0x0a, 0x06, 0x43, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x62, - 0x61, 0x73, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, - 0x61, 0x73, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, - 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x42, - 0x11, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x05, 0xba, 0x48, 0x02, - 0x08, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x1a, 0xbc, 0x02, 0x0a, 0x07, - 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x75, 0x6e, 0x6b, - 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x68, 0x75, - 0x6e, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x5f, - 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, - 0x68, 0x75, 0x6e, 0x6b, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x70, 0x12, 0x2b, 0x0a, 0x11, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x50, 0x61, 0x73, - 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x31, 0x0a, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74, - 0x6f, 0x70, 0x69, 0x63, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x0e, 0xe0, 0x41, 0x02, - 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, 0x92, 0x01, 0x02, 0x08, 0x01, 0x52, 0x0b, 0x69, 0x6e, 0x70, - 0x75, 0x74, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x73, 0x12, 0x60, 0x0a, 0x17, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x5f, 0x73, 0x61, 0x73, 0x6c, 0x5f, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, - 0x69, 0x73, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x41, 0x53, 0x4c, 0x4d, 0x65, 0x63, 0x68, 0x61, 0x6e, - 0x69, 0x73, 0x6d, 0x52, 0x15, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x53, 0x61, 0x73, - 0x6c, 0x4d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x1a, 0xe0, 0x03, 0x0a, 0x09, 0x52, - 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x12, 0x63, 0x0a, 0x08, 0x72, 0x65, 0x72, 0x61, - 0x6e, 0x6b, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x72, 0x65, 0x64, + 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, + 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, + 0x65, 0x73, 0x48, 0x00, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x1a, 0x27, + 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x03, 0x64, 0x73, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, + 0x01, 0x01, 0x52, 0x03, 0x64, 0x73, 0x6e, 0x42, 0x18, 0x0a, 0x0f, 0x76, 0x65, 0x63, 0x74, 0x6f, + 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x05, 0xba, 0x48, 0x02, 0x08, + 0x01, 0x1a, 0xf4, 0x03, 0x0a, 0x12, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x77, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x72, 0x61, 0x6e, - 0x6b, 0x65, 0x72, 0x52, 0x08, 0x72, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x1a, 0xed, 0x02, - 0x0a, 0x08, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, - 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, - 0x62, 0x6c, 0x65, 0x64, 0x12, 0x6c, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, - 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x74, - 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x2e, - 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x1a, 0xd8, 0x01, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, - 0x71, 0x0a, 0x06, 0x63, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x57, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x2e, - 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, - 0x72, 0x2e, 0x43, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x68, 0x65, - 0x72, 0x65, 0x1a, 0x4d, 0x0a, 0x06, 0x43, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x12, 0x22, 0x0a, 0x07, - 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, - 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, - 0x12, 0x1f, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, - 0x6c, 0x42, 0x0a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x1a, 0xab, 0x02, - 0x0a, 0x0a, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x6f, 0x0a, 0x08, - 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x48, + 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x09, 0xe0, 0x41, + 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x1a, 0xe4, 0x02, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x71, + 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x57, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, - 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, - 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x1a, 0xab, 0x01, - 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x69, 0x0a, 0x06, 0x6f, 0x70, - 0x65, 0x6e, 0x61, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4f, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, - 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x72, 0x6f, 0x76, - 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x48, 0x00, 0x52, 0x06, 0x6f, - 0x70, 0x65, 0x6e, 0x61, 0x69, 0x1a, 0x21, 0x0a, 0x06, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x12, - 0x17, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x42, 0x11, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, - 0x69, 0x64, 0x65, 0x72, 0x12, 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, 0x3a, 0x53, 0xea, 0x41, 0x50, - 0x0a, 0x2d, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0x2f, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x2a, - 0x0f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x73, - 0x32, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, - 0x22, 0x79, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, - 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5b, - 0x0a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, - 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x0d, 0x6b, 0x6e, - 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x22, 0x74, 0x0a, 0x1b, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, - 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x55, 0x0a, 0x0e, 0x6b, 0x6e, - 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, - 0x73, 0x65, 0x52, 0x0d, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, - 0x65, 0x22, 0x39, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, - 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, - 0xc8, 0x01, 0x01, 0x72, 0x03, 0x98, 0x01, 0x14, 0x52, 0x02, 0x69, 0x64, 0x22, 0x71, 0x0a, 0x18, - 0x47, 0x65, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x55, 0x0a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, - 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, + 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x48, 0x00, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, + 0x69, 0x12, 0x71, 0x0a, 0x06, 0x63, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x57, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, + 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, + 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, + 0x68, 0x65, 0x72, 0x65, 0x1a, 0x21, 0x0a, 0x06, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x49, 0x12, 0x17, + 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x1a, 0x3c, 0x0a, 0x06, 0x43, 0x6f, 0x68, 0x65, 0x72, + 0x65, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x17, 0x0a, 0x07, + 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, + 0x70, 0x69, 0x4b, 0x65, 0x79, 0x42, 0x11, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x12, 0x05, 0xba, 0x48, 0x02, 0x08, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x1a, 0xbc, 0x02, 0x0a, 0x07, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, 0x12, 0x1d, 0x0a, + 0x0a, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x09, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x23, 0x0a, 0x0d, + 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x70, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, + 0x70, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5f, 0x75, 0x73, + 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2b, + 0x0a, 0x11, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, + 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x31, 0x0a, 0x0c, 0x69, + 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, + 0x09, 0x42, 0x0e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, 0x92, 0x01, 0x02, 0x08, + 0x01, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x73, 0x12, 0x60, + 0x0a, 0x17, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5f, 0x73, 0x61, 0x73, 0x6c, 0x5f, + 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x41, 0x53, 0x4c, + 0x4d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x52, 0x15, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x53, 0x61, 0x73, 0x6c, 0x4d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, + 0x1a, 0xe0, 0x03, 0x0a, 0x09, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x12, 0x63, + 0x0a, 0x08, 0x72, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x47, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, - 0x52, 0x0d, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x22, - 0xe9, 0x05, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, - 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0xa8, 0x01, - 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x42, 0x8a, 0x01, 0x92, 0x41, 0x75, 0x32, 0x61, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x20, 0x74, - 0x68, 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x20, 0x72, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, - 0x72, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x20, 0x44, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x30, 0x30, 0x2e, 0x20, 0x55, 0x73, 0x65, - 0x20, 0x2d, 0x31, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x70, - 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x49, 0x40, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xbf, 0xba, 0x48, 0x0f, 0x1a, - 0x0d, 0x18, 0x32, 0x28, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x08, - 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, - 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, - 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x59, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, - 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x6e, - 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, - 0x65, 0x72, 0x1a, 0xa6, 0x03, 0x0a, 0x06, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x8b, 0x01, - 0x0a, 0x0d, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x66, 0x92, 0x41, 0x44, 0x32, 0x42, 0x41, 0x6e, 0x79, 0x20, - 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x20, 0x74, 0x68, - 0x61, 0x74, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x77, 0x69, 0x6c, - 0x6c, 0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x2e, 0xba, 0x48, - 0x1c, 0xd8, 0x01, 0x01, 0x72, 0x17, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, - 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0c, 0x6e, - 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x12, 0xd4, 0x01, 0x0a, 0x04, - 0x74, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4b, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x54, 0x61, - 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x73, 0x92, 0x41, 0x43, 0x32, 0x41, 0x4b, 0x6e, - 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x20, 0x74, 0x68, 0x61, - 0x74, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, - 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x74, 0x61, 0x67, 0x73, 0x20, 0x77, 0x69, - 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x2e, 0xba, - 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, - 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, - 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, - 0x67, 0x73, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x9d, 0x01, 0x0a, 0x1a, - 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, - 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x0f, 0x6b, 0x6e, - 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, - 0x61, 0x73, 0x65, 0x52, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, - 0x73, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, - 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, - 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xe1, 0x01, 0x0a, 0x1a, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, - 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, - 0x01, 0x72, 0x03, 0x98, 0x01, 0x14, 0x52, 0x02, 0x69, 0x64, 0x12, 0x66, 0x0a, 0x0e, 0x6b, 0x6e, - 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, - 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, - 0xc8, 0x01, 0x01, 0x52, 0x0d, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, - 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, - 0x6b, 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, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, - 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, - 0x74, 0x0a, 0x1b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, + 0x2e, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x52, 0x08, 0x72, 0x65, 0x72, 0x61, 0x6e, + 0x6b, 0x65, 0x72, 0x1a, 0xed, 0x02, 0x0a, 0x08, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, + 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x6c, 0x0a, 0x08, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, + 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x72, + 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, + 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x1a, 0xd8, 0x01, 0x0a, 0x08, 0x50, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x71, 0x0a, 0x06, 0x63, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x57, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, + 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, + 0x69, 0x65, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x2e, 0x50, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x48, 0x00, + 0x52, 0x06, 0x63, 0x6f, 0x68, 0x65, 0x72, 0x65, 0x1a, 0x4d, 0x0a, 0x06, 0x43, 0x6f, 0x68, 0x65, + 0x72, 0x65, 0x12, 0x22, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x06, + 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, + 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x42, 0x0a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x1a, 0xab, 0x02, 0x0a, 0x0a, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x6f, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x48, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, + 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x09, + 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x1a, 0xab, 0x01, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, + 0x12, 0x69, 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x4f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x41, + 0x49, 0x48, 0x00, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x69, 0x1a, 0x21, 0x0a, 0x06, 0x4f, + 0x70, 0x65, 0x6e, 0x41, 0x49, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x42, 0x11, + 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x05, 0xba, 0x48, 0x02, 0x08, + 0x01, 0x3a, 0x53, 0xea, 0x41, 0x50, 0x0a, 0x2d, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, + 0x65, 0x42, 0x61, 0x73, 0x65, 0x2a, 0x0f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, + 0x5f, 0x62, 0x61, 0x73, 0x65, 0x73, 0x32, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, + 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x22, 0x79, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x5b, 0x0a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, + 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, + 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x52, 0x0d, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, + 0x65, 0x22, 0x74, 0x0a, 0x1b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, + 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x55, 0x0a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, + 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, + 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x0d, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, + 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x22, 0x39, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x4b, 0x6e, + 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, + 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, 0x72, 0x03, 0x98, 0x01, 0x14, 0x52, 0x02, + 0x69, 0x64, 0x22, 0x71, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x55, 0x0a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x0d, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, - 0x65, 0x42, 0x61, 0x73, 0x65, 0x22, 0x3c, 0x0a, 0x1a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, - 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x0e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, 0x72, 0x03, 0x98, 0x01, 0x14, 0x52, - 0x02, 0x69, 0x64, 0x22, 0x1d, 0x0a, 0x1b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x6e, 0x6f, - 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x32, 0xd8, 0x08, 0x0a, 0x14, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, - 0x42, 0x61, 0x73, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xcb, 0x01, 0x0a, 0x13, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, - 0x61, 0x73, 0x65, 0x12, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, - 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x65, 0x42, 0x61, 0x73, 0x65, 0x22, 0xe9, 0x05, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x6e, + 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0xa8, 0x01, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x8a, 0x01, 0x92, 0x41, 0x75, 0x32, 0x61, 0x4c, + 0x69, 0x6d, 0x69, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, + 0x65, 0x64, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x61, + 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x65, 0x6d, 0x73, + 0x2e, 0x20, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x30, + 0x30, 0x2e, 0x20, 0x55, 0x73, 0x65, 0x20, 0x2d, 0x31, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x69, 0x73, + 0x61, 0x62, 0x6c, 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x40, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xf0, 0xbf, 0xba, 0x48, 0x0f, 0x1a, 0x0d, 0x18, 0x32, 0x28, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, + 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x59, 0x0a, + 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, + 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, + 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, + 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x1a, 0xa6, 0x03, 0x0a, 0x06, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x12, 0x8b, 0x01, 0x0a, 0x0d, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x6e, + 0x74, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x66, 0x92, 0x41, 0x44, + 0x32, 0x42, 0x41, 0x6e, 0x79, 0x20, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, + 0x61, 0x73, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, + 0x6c, 0x79, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, + 0x6e, 0x65, 0x64, 0x2e, 0xba, 0x48, 0x1c, 0xd8, 0x01, 0x01, 0x72, 0x17, 0x18, 0x80, 0x01, 0x32, + 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, + 0x5d, 0x2b, 0x24, 0x52, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, + 0x73, 0x12, 0xd4, 0x01, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x4b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x33, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, - 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x39, - 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x3a, 0x0e, - 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x22, 0x19, - 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, - 0x64, 0x67, 0x65, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x73, 0x12, 0xb7, 0x01, 0x0a, 0x10, 0x47, 0x65, - 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x38, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, - 0x2e, 0x47, 0x65, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, + 0x42, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x73, 0x92, + 0x41, 0x43, 0x32, 0x41, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, + 0x65, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x20, 0x61, 0x6c, + 0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x74, + 0x61, 0x67, 0x73, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x74, 0x75, + 0x72, 0x6e, 0x65, 0x64, 0x2e, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, + 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, + 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, + 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x9d, 0x01, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, + 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x57, 0x0a, 0x0f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, + 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, + 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, + 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, + 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0xe1, 0x01, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, + 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x1e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0xe0, 0x41, + 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, 0x72, 0x03, 0x98, 0x01, 0x14, 0x52, 0x02, 0x69, 0x64, + 0x12, 0x66, 0x0a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, + 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x47, 0x65, 0x74, 0x4b, 0x6e, - 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x2e, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x20, 0x12, 0x1e, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x6b, - 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, - 0x69, 0x64, 0x7d, 0x12, 0xb8, 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x6e, 0x6f, 0x77, - 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x12, 0x3a, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x6e, 0x6f, - 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x29, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x1b, 0x12, 0x19, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x6b, - 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x73, 0x12, 0xd0, - 0x01, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, - 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4b, - 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, - 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x3e, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x30, 0x3a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, - 0x65, 0x1a, 0x1e, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x6b, 0x6e, 0x6f, - 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, - 0x7d, 0x12, 0xc0, 0x01, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, + 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x09, + 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x0d, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, + 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 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, + 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x74, 0x0a, 0x1b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4b, + 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x55, 0x0a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, + 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4b, + 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x0d, 0x6b, 0x6e, + 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x22, 0x3c, 0x0a, 0x1a, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, + 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, + 0x72, 0x03, 0x98, 0x01, 0x14, 0x52, 0x02, 0x69, 0x64, 0x22, 0x1d, 0x0a, 0x1b, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xa1, 0x0b, 0x0a, 0x14, 0x4b, 0x6e, 0x6f, + 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x12, 0xff, 0x01, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x44, 0x65, 0x6c, 0x65, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2e, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x20, 0x2a, 0x1e, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, - 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, - 0x7b, 0x69, 0x64, 0x7d, 0x1a, 0x67, 0x92, 0x41, 0x64, 0x0a, 0x19, 0x52, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x20, 0x41, 0x49, 0x20, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, - 0x42, 0x61, 0x73, 0x65, 0x12, 0x47, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x64, - 0x20, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x20, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x61, - 0x6c, 0x2d, 0x61, 0x75, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x20, 0x67, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x52, 0x41, 0x47, 0x29, 0x20, 0x6b, 0x6e, 0x6f, - 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x20, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x42, 0xc1, 0x02, - 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x42, 0x12, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, - 0x42, 0x61, 0x73, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x67, 0x67, 0x69, 0x74, - 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, - 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, - 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x33, 0x3b, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x33, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x44, 0xaa, 0x02, 0x1f, 0x52, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0xca, 0x02, 0x1f, 0x52, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0xe2, 0x02, - 0x2b, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, - 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x22, 0x52, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x44, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x6d, 0xda, 0xbf, 0x07, 0x30, 0x0a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, + 0x6c, 0x65, 0x64, 0x67, 0x65, 0x62, 0x61, 0x73, 0x65, 0x73, 0x1a, 0x1e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x62, + 0x61, 0x73, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, + 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x3a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, + 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x22, 0x19, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x2d, 0x62, 0x61, + 0x73, 0x65, 0x73, 0x12, 0xf4, 0x01, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, + 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x47, 0x65, 0x74, 0x4b, 0x6e, + 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x33, 0x2e, 0x47, 0x65, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, + 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x6b, 0xda, + 0xbf, 0x07, 0x39, 0x0a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x62, 0x61, + 0x73, 0x65, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, + 0x1b, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, + 0x65, 0x64, 0x67, 0x65, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x67, 0x65, 0x74, 0x8a, 0xa6, 0x1d, 0x04, + 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x12, 0x1e, 0x2f, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x2d, + 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x90, 0x02, 0x0a, 0x12, 0x4c, + 0x69, 0x73, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, + 0x73, 0x12, 0x3a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, + 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, + 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, + 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x80, 0x01, 0xe2, 0xbf, 0x07, + 0x53, 0x0a, 0x18, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x6b, 0x6e, 0x6f, 0x77, + 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x0e, 0x6b, + 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x62, 0x61, 0x73, 0x65, 0x73, 0x12, 0x07, 0x65, + 0x61, 0x63, 0x68, 0x2e, 0x69, 0x64, 0x1a, 0x1c, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x5f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x62, 0x61, 0x73, 0x65, 0x5f, + 0x6c, 0x69, 0x73, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x1b, 0x12, 0x19, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x6b, 0x6e, + 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x73, 0x12, 0x90, 0x02, + 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, + 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x6e, + 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x33, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, + 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x7e, 0xda, 0xbf, 0x07, 0x3c, 0x0a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, + 0x65, 0x62, 0x61, 0x73, 0x65, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, + 0x69, 0x64, 0x1a, 0x1e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6b, 0x6e, + 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x30, + 0x3a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, + 0x1a, 0x1e, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, + 0x6c, 0x65, 0x64, 0x67, 0x65, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, + 0x12, 0x80, 0x02, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, + 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x6e, + 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x6e, 0xda, 0xbf, 0x07, 0x3c, 0x0a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, + 0x65, 0x64, 0x67, 0x65, 0x62, 0x61, 0x73, 0x65, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x1e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x5f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x64, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x04, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x20, 0x2a, 0x1e, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x6b, + 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, + 0x69, 0x64, 0x7d, 0x1a, 0x67, 0x92, 0x41, 0x64, 0x0a, 0x19, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x20, 0x41, 0x49, 0x20, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, + 0x61, 0x73, 0x65, 0x12, 0x47, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x20, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x61, 0x6c, + 0x2d, 0x61, 0x75, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x52, 0x41, 0x47, 0x29, 0x20, 0x6b, 0x6e, 0x6f, 0x77, + 0x6c, 0x65, 0x64, 0x67, 0x65, 0x20, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x42, 0xc1, 0x02, 0x0a, + 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x33, 0x42, 0x12, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, + 0x61, 0x73, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x67, 0x67, 0x69, 0x74, 0x68, + 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, + 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, + 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, + 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x33, 0x3b, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x44, 0xaa, 0x02, 0x1f, 0x52, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0xca, 0x02, 0x1f, 0x52, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0xe2, 0x02, 0x2b, + 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x5c, + 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x22, 0x52, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x44, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/backend/pkg/protogen/redpanda/api/dataplane/v1alpha3/mcp.pb.go b/backend/pkg/protogen/redpanda/api/dataplane/v1alpha3/mcp.pb.go index b00d9d0bab..cbf03c83d2 100644 --- a/backend/pkg/protogen/redpanda/api/dataplane/v1alpha3/mcp.pb.go +++ b/backend/pkg/protogen/redpanda/api/dataplane/v1alpha3/mcp.pb.go @@ -1507,644 +1507,676 @@ var file_redpanda_api_dataplane_v1alpha3_mcp_proto_rawDesc = []byte{ 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x25, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6c, 0x69, 0x6e, 0x74, 0x68, 0x69, 0x6e, 0x74, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2f, 0x76, - 0x31, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x22, 0x86, 0x0d, 0x0a, 0x09, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x2e, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, - 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, - 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x47, - 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, - 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, - 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, - 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, - 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0xc6, 0x01, 0x0a, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x04, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x79, 0x92, 0x41, 0x68, 0x32, - 0x66, 0x4d, 0x61, 0x70, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x20, 0x6e, 0x61, 0x6d, - 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20, 0x45, 0x61, 0x63, 0x68, - 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x20, - 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, - 0x74, 0x68, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x65, - 0x78, 0x70, 0x6f, 0x73, 0x65, 0x73, 0x2e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, - 0x9a, 0x01, 0x02, 0x08, 0x01, 0x52, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x87, 0x02, 0x0a, - 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x42, - 0xb9, 0x01, 0x92, 0x41, 0xb5, 0x01, 0x32, 0xb2, 0x01, 0x54, 0x68, 0x65, 0x20, 0x72, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x6f, 0x66, - 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, - 0x68, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x20, 0x44, - 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, - 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, - 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x64, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x6d, - 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x74, 0x77, 0x65, 0x61, 0x6b, 0x65, 0x64, 0x20, - 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x74, 0x69, - 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, - 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x09, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x77, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x06, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, - 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, - 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, - 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, - 0x4b, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, - 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x4e, 0x0a, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, - 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, - 0x03, 0xe0, 0x41, 0x03, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x15, 0x0a, 0x03, - 0x75, 0x72, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, - 0x75, 0x72, 0x6c, 0x1a, 0xc7, 0x02, 0x0a, 0x04, 0x54, 0x6f, 0x6f, 0x6c, 0x12, 0x70, 0x0a, 0x0e, - 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x42, 0x0a, 0xba, 0x48, 0x07, 0x82, 0x01, 0x04, 0x10, 0x01, 0x20, 0x00, 0x52, - 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e, - 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x0d, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x07, 0xc8, 0x01, 0x01, 0x72, 0x02, - 0x10, 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x59, 0x61, 0x6d, 0x6c, 0x22, 0x9c, - 0x01, 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, - 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x4f, 0x52, 0x10, 0x01, 0x12, 0x18, - 0x0a, 0x14, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, - 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x4d, 0x50, - 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x50, 0x55, 0x54, - 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4f, 0x55, 0x54, 0x50, 0x55, 0x54, 0x10, 0x04, 0x1a, 0x69, 0x0a, - 0x0a, 0x54, 0x6f, 0x6f, 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, 0x45, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, - 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x52, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x1a, 0x1e, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, - 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, - 0x72, 0x22, 0x7d, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, - 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, - 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, - 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, - 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, - 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, - 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x45, 0x44, 0x10, 0x04, 0x12, - 0x0f, 0x0a, 0x0b, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, - 0x3a, 0x47, 0xea, 0x41, 0x44, 0x0a, 0x29, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x32, 0x0a, 0x6d, - 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0xad, 0x06, 0x0a, 0x0f, 0x4d, 0x43, - 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, - 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, - 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, - 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, - 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, - 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0xe5, 0x01, 0x0a, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, - 0x91, 0x01, 0x92, 0x41, 0x68, 0x32, 0x66, 0x4d, 0x61, 0x70, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x6f, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x86, 0x0d, 0x0a, 0x09, 0x4d, 0x43, 0x50, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, + 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, + 0x52, 0x02, 0x69, 0x64, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, + 0x48, 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, + 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, + 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, + 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0xc6, 0x01, 0x0a, 0x05, 0x74, 0x6f, + 0x6f, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x42, 0x79, 0x92, 0x41, 0x68, 0x32, 0x66, 0x4d, 0x61, 0x70, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20, 0x45, 0x61, 0x63, 0x68, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x20, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x73, 0x2e, 0xe0, 0x41, 0x02, - 0xba, 0x48, 0x20, 0xc8, 0x01, 0x01, 0x9a, 0x01, 0x1a, 0x08, 0x01, 0x22, 0x16, 0x72, 0x14, 0x18, - 0x40, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, - 0x5d, 0x2b, 0x24, 0x52, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x72, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x7d, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, - 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, - 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, - 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, - 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x1a, 0x69, 0x0a, 0x0a, 0x54, 0x6f, 0x6f, 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, 0x45, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x3a, 0x4d, 0xea, 0x41, 0x4a, 0x0a, - 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, - 0x2f, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x2a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x32, 0x0a, 0x6d, - 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x69, 0x0a, 0x16, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x22, 0x64, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, - 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x49, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, - 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x45, 0x0a, 0x13, 0x47, 0x65, - 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, - 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, - 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, - 0x64, 0x22, 0x61, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0a, 0x6d, 0x63, 0x70, - 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, - 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x22, 0xbf, 0x06, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x55, - 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, - 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, - 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0xa8, 0x01, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, - 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x8a, 0x01, 0x92, 0x41, 0x75, 0x32, - 0x61, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x65, 0x64, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x20, 0x74, 0x6f, - 0x20, 0x61, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x65, - 0x6d, 0x73, 0x2e, 0x20, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, - 0x31, 0x30, 0x30, 0x2e, 0x20, 0x55, 0x73, 0x65, 0x20, 0x2d, 0x31, 0x20, 0x74, 0x6f, 0x20, 0x64, - 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x2e, 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x40, 0x69, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xf0, 0xbf, 0xba, 0x48, 0x0f, 0x1a, 0x0d, 0x18, 0x32, 0x28, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, - 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, 0x1a, - 0x84, 0x04, 0x0a, 0x06, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x8b, 0x01, 0x0a, 0x15, 0x64, - 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, - 0x61, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x57, 0x92, 0x41, 0x35, 0x32, - 0x33, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, - 0x6c, 0x6c, 0x79, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x2e, 0xba, 0x48, 0x1c, 0xd8, 0x01, 0x01, 0x72, 0x17, 0x18, 0x80, 0x01, 0x32, - 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, - 0x5d, 0x2b, 0x24, 0x52, 0x13, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, - 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x12, 0xf8, 0x01, 0x0a, 0x04, 0x74, 0x61, 0x67, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, - 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, - 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x42, 0x9a, 0x01, 0x92, 0x41, 0x6a, 0x32, 0x68, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x20, - 0x62, 0x79, 0x20, 0x74, 0x61, 0x67, 0x73, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x65, 0x78, - 0x61, 0x63, 0x74, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x20, 0x52, 0x65, 0x74, 0x75, 0x72, - 0x6e, 0x73, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x6c, - 0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, - 0x6b, 0x65, 0x79, 0x2d, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x70, 0x61, 0x69, 0x72, 0x73, 0x2e, - 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, - 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, - 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, - 0x61, 0x67, 0x73, 0x12, 0x38, 0x0a, 0x09, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xba, 0x48, 0x18, 0xd8, 0x01, 0x01, 0x72, 0x13, - 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x5b, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, - 0x5d, 0x2a, 0x24, 0x52, 0x08, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x49, 0x64, 0x1a, 0x37, 0x0a, - 0x09, 0x54, 0x61, 0x67, 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, 0x8d, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x4d, - 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x4b, 0x0a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0xba, 0x48, 0x08, 0xc8, 0x01, 0x01, 0x9a, 0x01, 0x02, 0x08, 0x01, 0x52, 0x05, 0x74, 0x6f, 0x6f, + 0x6c, 0x73, 0x12, 0x87, 0x02, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x52, 0x0a, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x26, - 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, - 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x9f, 0x06, 0x0a, 0x0f, 0x4d, 0x43, 0x50, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x64, 0x69, - 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x1e, 0xba, 0x48, 0x1b, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, - 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, - 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, - 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0xdd, 0x01, 0x0a, 0x05, 0x74, 0x6f, - 0x6f, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x89, 0x01, 0x92, 0x41, 0x68, 0x32, 0x66, 0x4d, 0x61, - 0x70, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x20, - 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20, 0x45, 0x61, 0x63, 0x68, 0x20, 0x74, 0x6f, - 0x6f, 0x6c, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x20, 0x63, 0x61, 0x70, - 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, - 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x65, 0x78, 0x70, 0x6f, - 0x73, 0x65, 0x73, 0x2e, 0xba, 0x48, 0x1b, 0x9a, 0x01, 0x18, 0x22, 0x16, 0x72, 0x14, 0x18, 0x40, - 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, - 0x2b, 0x24, 0x52, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x7d, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x05, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x76, 0x31, 0x2e, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x73, 0x42, 0xb9, 0x01, 0x92, 0x41, 0xb5, 0x01, 0x32, 0xb2, 0x01, 0x54, + 0x68, 0x65, 0x20, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6d, 0x6f, + 0x75, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x2e, 0x20, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, + 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2c, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x6d, 0x69, 0x67, + 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x64, + 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x74, 0x77, + 0x65, 0x61, 0x6b, 0x65, 0x64, 0x20, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, + 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x2e, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x77, 0x0a, 0x04, + 0x74, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, - 0x04, 0x74, 0x61, 0x67, 0x73, 0x1a, 0x69, 0x0a, 0x0a, 0x54, 0x6f, 0x6f, 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, 0x45, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x4b, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x3a, 0x4d, 0xea, 0x41, 0x4a, 0x0a, 0x2f, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, - 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2a, - 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x32, 0x0a, 0x6d, 0x63, - 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0xe1, 0x01, 0x0a, 0x16, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, - 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x5a, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, - 0x03, 0xc8, 0x01, 0x01, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, - 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 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, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, - 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x64, 0x0a, 0x17, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, - 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, - 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x22, 0x48, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, - 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, - 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x19, 0x0a, 0x17, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x46, 0x0a, 0x14, 0x53, 0x74, 0x6f, 0x70, 0x4d, - 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, - 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, - 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, - 0x62, 0x0a, 0x15, 0x53, 0x74, 0x6f, 0x70, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, - 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x22, 0x47, 0x0a, 0x15, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, - 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, - 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x63, 0x0a, 0x16, - 0x53, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x22, 0x28, 0x0a, 0x26, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x9f, 0x03, 0x0a, 0x27, - 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xcc, 0x01, 0x0a, 0x13, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x60, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x41, 0x4d, - 0x4c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x42, 0x39, 0x92, 0x41, 0x2e, 0x32, 0x2c, 0x54, 0x68, - 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, - 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0xba, 0x48, 0x05, 0x92, 0x01, 0x02, - 0x08, 0x01, 0x52, 0x12, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x59, 0x61, 0x6d, 0x6c, 0x73, 0x1a, 0xa4, 0x01, 0x0a, 0x17, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x41, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x12, 0x64, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, + 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, + 0x74, 0x65, 0x12, 0x4e, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x15, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x1a, 0xc7, 0x02, 0x0a, 0x04, 0x54, 0x6f, + 0x6f, 0x6c, 0x12, 0x70, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x2e, 0x43, 0x6f, 0x6d, 0x70, - 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6f, - 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0xe4, 0x01, - 0x0a, 0x14, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x61, 0x0a, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x6f, - 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, - 0x01, 0x01, 0x52, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x1a, 0x69, 0x0a, 0x0a, 0x54, 0x6f, 0x6f, - 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, 0x45, 0x0a, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x42, 0x0a, 0xba, 0x48, 0x07, 0x82, 0x01, + 0x04, 0x10, 0x01, 0x20, 0x00, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x79, + 0x61, 0x6d, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xe0, 0x41, 0x02, 0xba, 0x48, + 0x07, 0xc8, 0x01, 0x01, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x59, 0x61, 0x6d, 0x6c, 0x22, 0x9c, 0x01, 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, + 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, + 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, + 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, + 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, + 0x4f, 0x52, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, + 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x10, 0x02, 0x12, 0x18, + 0x0a, 0x14, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x49, 0x4e, 0x50, 0x55, 0x54, 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x4f, 0x4d, 0x50, + 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4f, 0x55, 0x54, 0x50, 0x55, + 0x54, 0x10, 0x04, 0x1a, 0x69, 0x0a, 0x0a, 0x54, 0x6f, 0x6f, 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, 0x45, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, + 0x6f, 0x6f, 0x6c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, + 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x1a, 0x1e, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x7d, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, + 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, + 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x45, + 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x53, + 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x12, + 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x49, 0x4e, 0x47, + 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, + 0x50, 0x45, 0x44, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, + 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x3a, 0x47, 0xea, 0x41, 0x44, 0x0a, 0x29, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x4d, 0x43, 0x50, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x73, 0x32, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, + 0xad, 0x06, 0x0a, 0x0f, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xe0, 0x41, 0x02, 0xba, 0x48, + 0x1e, 0xc8, 0x01, 0x01, 0x72, 0x19, 0x10, 0x03, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, + 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, + 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0xe5, 0x01, 0x0a, 0x05, 0x74, 0x6f, 0x6f, + 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x02, 0x38, 0x01, 0x22, 0xdd, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x64, - 0x0a, 0x0a, 0x6c, 0x69, 0x6e, 0x74, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x45, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x48, - 0x69, 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x6c, 0x69, 0x6e, 0x74, 0x48, - 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x5e, 0x0a, 0x0e, 0x4c, 0x69, 0x6e, 0x74, 0x48, 0x69, 0x6e, 0x74, - 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, 0x36, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, - 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x48, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x02, 0x38, 0x01, 0x32, 0xa0, 0x1b, 0x0a, 0x10, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xb6, 0x02, 0x0a, 0x0f, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x37, 0x2e, + 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x91, 0x01, 0x92, 0x41, 0x68, 0x32, 0x66, 0x4d, 0x61, 0x70, + 0x20, 0x6f, 0x66, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x74, + 0x6f, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20, 0x45, 0x61, 0x63, 0x68, 0x20, 0x74, 0x6f, 0x6f, + 0x6c, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x20, 0x63, 0x61, 0x70, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x65, 0x78, 0x70, 0x6f, 0x73, + 0x65, 0x73, 0x2e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x20, 0xc8, 0x01, 0x01, 0x9a, 0x01, 0x1a, 0x08, + 0x01, 0x22, 0x16, 0x72, 0x14, 0x18, 0x40, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, + 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, + 0x12, 0x4b, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, + 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x7d, 0x0a, + 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, + 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, + 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, + 0x10, 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, + 0x70, 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, + 0x2d, 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x1a, 0x69, 0x0a, 0x0a, + 0x54, 0x6f, 0x6f, 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, 0x45, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, + 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x52, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, + 0x3a, 0x4d, 0xea, 0x41, 0x4a, 0x0a, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x73, 0x32, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, + 0x69, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x0a, 0x6d, 0x63, 0x70, + 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, - 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0xaf, 0x01, 0x92, 0x41, 0x6a, 0x12, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x4d, - 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x4a, 0x3b, 0x0a, 0x03, 0x32, 0x30, 0x31, 0x12, 0x34, 0x0a, 0x02, 0x4f, 0x4b, - 0x12, 0x2e, 0x0a, 0x2c, 0x1a, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x34, 0x3a, 0x0a, - 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x26, 0x2f, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x73, 0x12, 0xd2, 0x02, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x12, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, + 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x64, 0x0a, 0x17, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x47, 0x65, 0x74, 0x4d, - 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0xd4, 0x01, 0x92, 0x41, 0x95, 0x01, 0x12, 0x0e, 0x47, 0x65, 0x74, 0x20, 0x4d, 0x43, 0x50, - 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x1a, 0x47, 0x65, 0x74, 0x20, 0x61, 0x20, 0x73, - 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x4a, 0x3b, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x34, 0x0a, 0x02, 0x4f, 0x4b, - 0x12, 0x2e, 0x0a, 0x2c, 0x1a, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x22, 0x45, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, + 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, + 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x61, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x4d, 0x43, + 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x49, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, + 0x09, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0xbf, 0x06, 0x0a, 0x15, 0x4c, + 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x55, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, - 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, 0x04, - 0x08, 0x01, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x12, 0x2b, 0x2f, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xe5, 0x02, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, - 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x36, 0x2e, 0x72, 0x65, 0x64, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0xa8, 0x01, 0x0a, 0x09, + 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, + 0x8a, 0x01, 0x92, 0x41, 0x75, 0x32, 0x61, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, + 0x6f, 0x66, 0x20, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x20, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x30, 0x30, 0x2e, 0x20, 0x55, 0x73, 0x65, 0x20, 0x2d, + 0x31, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x70, 0x61, 0x67, + 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, + 0x40, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xbf, 0xba, 0x48, 0x0f, 0x1a, 0x0d, 0x18, + 0x32, 0x28, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x08, 0x70, 0x61, + 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 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, 0x1a, 0x84, 0x04, 0x0a, 0x06, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, + 0x12, 0x8b, 0x01, 0x0a, 0x15, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x57, 0x92, 0x41, 0x35, 0x32, 0x33, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x4d, + 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, + 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x20, + 0x74, 0x68, 0x69, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0xba, 0x48, 0x1c, 0xd8, 0x01, 0x01, + 0x72, 0x17, 0x18, 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, + 0x2d, 0x39, 0x2d, 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x13, 0x64, 0x69, 0x73, 0x70, 0x6c, + 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x12, 0xf8, + 0x01, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x47, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, + 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x54, 0x61, 0x67, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x9a, 0x01, 0x92, 0x41, 0x6a, 0x32, 0x68, 0x46, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x73, 0x20, 0x62, 0x79, 0x20, 0x74, 0x61, 0x67, 0x73, 0x20, 0x75, 0x73, + 0x69, 0x6e, 0x67, 0x20, 0x65, 0x78, 0x61, 0x63, 0x74, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x2e, + 0x20, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x4d, 0x43, + 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x68, + 0x61, 0x76, 0x65, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x70, 0x65, 0x63, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x6b, 0x65, 0x79, 0x2d, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, + 0x70, 0x61, 0x69, 0x72, 0x73, 0x2e, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, 0x2a, 0x23, + 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, 0x7b, 0x5a, + 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, 0x40, 0x5d, + 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x38, 0x0a, 0x09, 0x73, 0x65, 0x63, + 0x72, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xba, 0x48, + 0x18, 0xd8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x5b, 0x41, + 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2a, 0x24, 0x52, 0x08, 0x73, 0x65, 0x63, 0x72, 0x65, + 0x74, 0x49, 0x64, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x8d, 0x01, 0x0a, + 0x16, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, + 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x0a, 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, + 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, + 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x9f, 0x06, 0x0a, + 0x0f, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x12, 0x41, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xba, 0x48, 0x1b, 0x72, 0x19, 0x10, 0x03, 0x18, + 0x80, 0x01, 0x32, 0x12, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, + 0x5f, 0x20, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x18, + 0x80, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0xdd, 0x01, 0x0a, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x89, 0x01, 0x92, + 0x41, 0x68, 0x32, 0x66, 0x4d, 0x61, 0x70, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20, 0x45, + 0x61, 0x63, 0x68, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, + 0x20, 0x61, 0x20, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x74, 0x68, + 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x20, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x73, 0x2e, 0xba, 0x48, 0x1b, 0x9a, 0x01, 0x18, + 0x22, 0x16, 0x72, 0x14, 0x18, 0x40, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, + 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x12, + 0x4b, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, + 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x7d, 0x0a, 0x04, + 0x74, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x61, 0x67, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x2d, 0xba, 0x48, 0x2a, 0x9a, 0x01, 0x27, 0x10, 0x10, + 0x2a, 0x23, 0x72, 0x21, 0x32, 0x1f, 0x5e, 0x28, 0x5b, 0x5c, 0x70, 0x7b, 0x4c, 0x7d, 0x5c, 0x70, + 0x7b, 0x5a, 0x7d, 0x5c, 0x70, 0x7b, 0x4e, 0x7d, 0x5f, 0x2e, 0x3a, 0x2f, 0x3d, 0x2b, 0x5c, 0x2d, + 0x40, 0x5d, 0x2a, 0x29, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x1a, 0x69, 0x0a, 0x0a, 0x54, + 0x6f, 0x6f, 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, 0x45, 0x0a, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 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, 0x3a, + 0x4d, 0xea, 0x41, 0x4a, 0x0a, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x2a, 0x0b, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x73, 0x32, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0xe1, + 0x01, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, + 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, + 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x5a, 0x0a, 0x0a, 0x6d, 0x63, 0x70, + 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, + 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, + 0x09, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x09, 0x6d, 0x63, 0x70, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, + 0x6d, 0x61, 0x73, 0x6b, 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, 0x46, 0x69, 0x65, + 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, + 0x73, 0x6b, 0x22, 0x64, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, + 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x09, 0x6d, + 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x48, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, + 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, + 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, + 0x69, 0x64, 0x22, 0x19, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x46, 0x0a, + 0x14, 0x53, 0x74, 0x6f, 0x70, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x1e, 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, + 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, + 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x62, 0x0a, 0x15, 0x53, 0x74, 0x6f, 0x70, 0x4d, 0x43, 0x50, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, + 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe1, 0x01, 0x92, 0x41, - 0xa7, 0x01, 0x12, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x73, 0x1a, 0x49, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x20, 0x4d, 0x43, 0x50, 0x20, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2e, 0x20, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x6c, 0x79, 0x20, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x62, 0x79, 0x20, 0x64, 0x69, - 0x73, 0x70, 0x6c, 0x61, 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x74, 0x61, 0x67, 0x73, - 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x20, 0x49, 0x44, 0x2e, 0x4a, - 0x48, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x41, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x3b, 0x0a, 0x39, - 0x1a, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x09, + 0x6d, 0x63, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x47, 0x0a, 0x15, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, + 0xe0, 0x41, 0x02, 0xba, 0x48, 0x18, 0xc8, 0x01, 0x01, 0x72, 0x13, 0x32, 0x11, 0x5e, 0x5b, 0x41, + 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x2f, 0x5d, 0x2b, 0x24, 0x52, 0x02, + 0x69, 0x64, 0x22, 0x63, 0x0a, 0x16, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0a, + 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, - 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x28, 0x12, 0x26, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, - 0xd0, 0x02, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, + 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x09, 0x6d, 0x63, + 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x28, 0x0a, 0x26, 0x47, 0x65, 0x74, 0x4d, 0x43, + 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x22, 0x9f, 0x03, 0x0a, 0x27, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xcc, 0x01, + 0x0a, 0x13, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x79, 0x61, 0x6d, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x60, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x47, 0x65, + 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x59, 0x41, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x42, 0x39, 0x92, + 0x41, 0x2e, 0x32, 0x2c, 0x54, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, + 0xba, 0x48, 0x05, 0x92, 0x01, 0x02, 0x08, 0x01, 0x52, 0x12, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x61, 0x6d, 0x6c, 0x73, 0x1a, 0xa4, 0x01, 0x0a, + 0x17, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x41, + 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x64, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x70, + 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x3d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, + 0x6c, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, + 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, + 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x22, 0xe4, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x61, 0x0a, 0x05, + 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, + 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x09, 0xe0, + 0x41, 0x02, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x1a, + 0x69, 0x0a, 0x0a, 0x54, 0x6f, 0x6f, 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, + 0x45, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xdd, 0x01, 0x0a, 0x15, 0x4c, + 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x64, 0x0a, 0x0a, 0x6c, 0x69, 0x6e, 0x74, 0x5f, 0x68, 0x69, 0x6e, + 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x45, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, + 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x09, 0x6c, 0x69, 0x6e, 0x74, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x5e, 0x0a, 0x0e, 0x4c, 0x69, + 0x6e, 0x74, 0x48, 0x69, 0x6e, 0x74, 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, 0x36, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x48, 0x69, 0x6e, 0x74, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x32, 0xfe, 0x1e, 0x0a, 0x10, 0x4d, + 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, + 0xe2, 0x02, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, + 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc9, 0x01, 0x92, 0x41, 0x7f, 0x12, 0x14, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x1a, 0x2a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, - 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4a, 0x3b, - 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x34, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x2e, 0x0a, 0x2c, 0x1a, - 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x8a, 0xa6, 0x1d, 0x04, 0x08, - 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x39, 0x3a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x2b, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, - 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, - 0x64, 0x7d, 0x12, 0xb2, 0x02, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xdb, 0x01, 0x92, 0x41, 0x6a, 0x12, 0x11, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, + 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x4d, 0x43, + 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4a, 0x3b, 0x0a, 0x03, 0x32, 0x30, 0x31, + 0x12, 0x34, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x2e, 0x0a, 0x2c, 0x1a, 0x2a, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0xda, 0xbf, 0x07, 0x28, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x1a, 0x1a, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x5f, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x34, + 0x3a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x26, 0x2f, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x73, 0x12, 0x87, 0x03, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x34, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x47, 0x65, + 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x89, 0x02, 0x92, 0x41, 0x95, 0x01, 0x12, 0x0e, 0x47, 0x65, 0x74, 0x20, 0x4d, + 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x1a, 0x47, 0x65, 0x74, 0x20, 0x61, + 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4a, 0x3b, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x34, 0x0a, 0x02, + 0x4f, 0x4b, 0x12, 0x2e, 0x0a, 0x2c, 0x1a, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, - 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xab, 0x01, 0x92, 0x41, 0x6d, 0x12, - 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x6e, - 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4a, 0x12, 0x0a, 0x03, - 0x32, 0x30, 0x34, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x00, - 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, - 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, 0x04, - 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x2a, 0x2b, 0x2f, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xe3, 0x02, 0x0a, 0x0d, 0x53, 0x74, 0x6f, 0x70, - 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, + 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0xda, 0xbf, + 0x07, 0x31, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x0a, + 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x17, 0x64, 0x61, 0x74, 0x61, + 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, + 0x67, 0x65, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x2d, 0x12, 0x2b, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, + 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xb0, + 0x03, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x73, 0x12, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x53, 0x74, 0x6f, 0x70, - 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x33, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe2, 0x01, 0x92, 0x41, 0x9e, 0x01, 0x12, - 0x12, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x1a, 0x1a, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, 0x20, 0x72, 0x75, 0x6e, 0x6e, - 0x69, 0x6e, 0x67, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4a, - 0x40, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x39, 0x0a, 0x07, 0x53, 0x74, 0x6f, 0x70, 0x70, 0x65, - 0x64, 0x12, 0x2e, 0x0a, 0x2c, 0x1a, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, + 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0xac, 0x02, 0x92, 0x41, 0xa7, 0x01, 0x12, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x20, + 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x1a, 0x49, 0x4c, 0x69, 0x73, + 0x74, 0x73, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2e, 0x20, + 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x66, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x20, 0x62, 0x79, 0x20, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x2c, 0x20, 0x74, 0x61, 0x67, 0x73, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x73, 0x65, 0x63, 0x72, + 0x65, 0x74, 0x20, 0x49, 0x44, 0x2e, 0x4a, 0x48, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x41, 0x0a, + 0x02, 0x4f, 0x4b, 0x12, 0x3b, 0x0a, 0x39, 0x1a, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x43, + 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0xe2, 0xbf, 0x07, 0x47, 0x0a, 0x14, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x6d, + 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x2f, 0x0a, 0x0a, 0x6d, 0x63, + 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x07, 0x65, 0x61, 0x63, 0x68, 0x2e, 0x69, + 0x64, 0x1a, 0x18, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x63, 0x70, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, + 0x01, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x28, 0x12, 0x26, 0x2f, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x73, 0x12, 0x88, 0x03, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, - 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, - 0x04, 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x32, 0x22, 0x30, 0x2f, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, - 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x3a, 0x73, 0x74, 0x6f, 0x70, 0x12, 0xe9, 0x02, - 0x0a, 0x0e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x12, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x33, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0xe5, 0x01, 0x92, 0x41, 0xa0, 0x01, 0x12, 0x13, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, - 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x1b, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, 0x20, 0x73, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x20, 0x4d, - 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4a, 0x40, 0x0a, 0x03, 0x32, 0x30, - 0x30, 0x12, 0x39, 0x0a, 0x07, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x2c, - 0x1a, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, + 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x81, 0x02, 0x92, 0x41, 0x7f, 0x12, 0x14, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x1a, 0x2a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, + 0x66, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, + 0x4a, 0x3b, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x34, 0x0a, 0x02, 0x4f, 0x4b, 0x12, 0x2e, 0x0a, + 0x2c, 0x1a, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0xda, 0xbf, 0x07, + 0x34, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x0a, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x1a, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x39, 0x3a, 0x0a, 0x6d, 0x63, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, + 0x2b, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xea, 0x02, 0x0a, + 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4a, 0x2a, 0x0a, 0x03, - 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, - 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, - 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x07, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x33, 0x22, 0x31, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, - 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2f, 0x7b, - 0x69, 0x64, 0x7d, 0x3a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0xe8, 0x03, 0x0a, 0x1f, 0x47, 0x65, - 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x47, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, + 0x61, 0x33, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, + 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0xe3, 0x01, 0x92, 0x41, 0x6d, 0x12, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, + 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4a, 0x12, 0x0a, 0x03, 0x32, 0x30, 0x34, 0x12, 0x0b, 0x0a, + 0x07, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x00, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, + 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, + 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0xda, 0xbf, 0x07, 0x34, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, + 0x69, 0x64, 0x1a, 0x1a, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x63, + 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x8a, 0xa6, + 0x1d, 0x04, 0x08, 0x02, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x2a, 0x2b, 0x2f, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x9b, 0x03, 0x0a, 0x0d, 0x53, 0x74, + 0x6f, 0x70, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x35, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x53, 0x74, + 0x6f, 0x70, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x33, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9a, 0x02, 0x92, 0x41, 0x9e, + 0x01, 0x12, 0x12, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x1a, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, 0x20, 0x72, 0x75, + 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x2e, 0x4a, 0x40, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x39, 0x0a, 0x07, 0x53, 0x74, 0x6f, 0x70, + 0x70, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x2c, 0x1a, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, 0x09, 0x4e, 0x6f, + 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0xda, + 0xbf, 0x07, 0x34, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, + 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x1a, 0x64, 0x61, 0x74, + 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, 0x10, 0x07, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x32, 0x22, 0x30, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, + 0x64, 0x7d, 0x3a, 0x73, 0x74, 0x6f, 0x70, 0x12, 0xa1, 0x03, 0x0a, 0x0e, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x36, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x33, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9d, 0x02, 0x92, 0x41, + 0xa0, 0x01, 0x12, 0x13, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, 0x6e, 0x20, 0x4d, 0x43, 0x50, + 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x1b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, + 0x20, 0x73, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x2e, 0x4a, 0x40, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x39, 0x0a, 0x07, 0x53, + 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x2c, 0x1a, 0x2a, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, + 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4d, 0x43, 0x50, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4a, 0x2a, 0x0a, 0x03, 0x34, 0x30, 0x34, 0x12, 0x23, 0x0a, + 0x09, 0x4e, 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0xda, 0xbf, 0x07, 0x34, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x73, 0x12, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x69, 0x64, 0x1a, 0x1a, + 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x02, + 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x33, 0x22, 0x31, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, + 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x3a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x91, 0x04, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x48, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, + 0x47, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x33, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x48, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, + 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0xda, 0x02, 0x92, 0x41, 0xe7, 0x01, 0x12, 0x23, 0x47, 0x65, 0x74, 0x20, 0x4d, + 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x1a, 0x65, + 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, + 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x2c, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, + 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, + 0x73, 0x6f, 0x72, 0x73, 0x2e, 0x4a, 0x59, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x52, 0x0a, 0x02, + 0x4f, 0x4b, 0x12, 0x4c, 0x0a, 0x4a, 0x1a, 0x48, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0xb1, 0x02, 0x92, 0x41, 0xe7, 0x01, 0x12, 0x23, 0x47, 0x65, 0x74, 0x20, 0x4d, 0x43, 0x50, - 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x1a, 0x65, 0x52, 0x65, - 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x66, - 0x6f, 0x72, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x74, 0x6f, - 0x6f, 0x6c, 0x73, 0x2c, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x61, - 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, - 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, - 0x72, 0x73, 0x2e, 0x4a, 0x59, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x52, 0x0a, 0x02, 0x4f, 0x4b, - 0x12, 0x4c, 0x0a, 0x4a, 0x1a, 0x48, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x43, 0x50, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x8a, 0xa6, - 0x1d, 0x04, 0x08, 0x01, 0x10, 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x38, 0x12, 0x36, 0x2f, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x73, 0x3a, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x12, 0x86, 0x04, 0x0a, 0x0d, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, - 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x85, 0x03, 0x92, 0x41, 0xbc, 0x02, 0x12, 0x1e, 0x4c, 0x69, - 0x6e, 0x74, 0x20, 0x61, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x20, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0xa3, 0x01, 0x56, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x73, 0x20, 0x61, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, - 0x20, 0x4d, 0x43, 0x50, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x27, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, - 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x6c, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x68, 0x69, - 0x6e, 0x74, 0x73, 0x2e, 0x20, 0x45, 0x61, 0x63, 0x68, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x27, 0x73, - 0x20, 0x59, 0x41, 0x4d, 0x4c, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x73, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x64, - 0x2e, 0x20, 0x49, 0x66, 0x20, 0x6e, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x73, - 0x20, 0x61, 0x72, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, - 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x20, 0x69, 0x73, 0x20, 0x65, 0x6d, 0x70, 0x74, - 0x79, 0x2e, 0x4a, 0x74, 0x0a, 0x03, 0x32, 0x30, 0x30, 0x12, 0x6d, 0x0a, 0x2f, 0x4c, 0x69, 0x6e, - 0x74, 0x69, 0x6e, 0x67, 0x20, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x2e, 0x20, 0x53, - 0x65, 0x65, 0x20, 0x60, 0x6c, 0x69, 0x6e, 0x74, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x60, 0x20, - 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, 0x12, 0x3a, 0x0a, 0x38, - 0x1a, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, 0x04, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x37, 0x3a, 0x01, 0x2a, 0x22, 0x32, 0x2f, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x73, 0x3a, 0x6c, 0x69, 0x6e, 0x74, 0x2d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x48, 0x92, - 0x41, 0x45, 0x0a, 0x0a, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x12, 0x37, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6d, 0x61, 0x6e, 0x61, 0x67, - 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x20, 0x61, 0x6e, - 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x42, 0xb7, 0x02, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x42, - 0x08, 0x4d, 0x63, 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x67, 0x67, 0x69, 0x74, - 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, - 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, - 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, - 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x33, 0x3b, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x33, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x44, 0xaa, 0x02, 0x1f, 0x52, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0xca, 0x02, 0x1f, 0x52, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, - 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0xe2, 0x02, - 0x2b, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, - 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x22, 0x52, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x44, 0x61, - 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x33, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0xda, 0xbf, 0x07, 0x25, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, + 0x1a, 0x17, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x63, 0x70, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x67, 0x65, 0x74, 0x8a, 0xa6, 0x1d, 0x04, 0x08, 0x01, 0x10, + 0x07, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x38, 0x12, 0x36, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x3a, + 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, + 0xaf, 0x04, 0x0a, 0x0d, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x12, 0x35, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, 0x6e, 0x74, 0x4d, + 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0xae, 0x03, 0x92, 0x41, 0xbc, 0x02, 0x12, 0x1e, 0x4c, 0x69, 0x6e, 0x74, 0x20, 0x61, 0x20, + 0x4d, 0x43, 0x50, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0xa3, 0x01, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x73, 0x20, 0x61, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x4d, 0x43, 0x50, 0x20, + 0x74, 0x6f, 0x6f, 0x6c, 0x27, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, + 0x20, 0x6c, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x2e, 0x20, + 0x45, 0x61, 0x63, 0x68, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x27, 0x73, 0x20, 0x59, 0x41, 0x4d, 0x4c, + 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, + 0x73, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x64, 0x2e, 0x20, 0x49, 0x66, 0x20, + 0x6e, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, + 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x20, 0x69, 0x73, 0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x4a, 0x74, 0x0a, + 0x03, 0x32, 0x30, 0x30, 0x12, 0x6d, 0x0a, 0x2f, 0x4c, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, + 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x60, 0x6c, + 0x69, 0x6e, 0x74, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x60, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, 0x12, 0x3a, 0x0a, 0x38, 0x1a, 0x36, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2e, 0x4c, 0x69, + 0x6e, 0x74, 0x4d, 0x43, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0xda, 0xbf, 0x07, 0x25, 0x0a, 0x0a, 0x6d, 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x73, 0x1a, 0x17, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, + 0x63, 0x70, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x67, 0x65, 0x74, 0x8a, 0xa6, 0x1d, 0x04, + 0x08, 0x01, 0x10, 0x04, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x37, 0x3a, 0x01, 0x2a, 0x22, 0x32, 0x2f, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2f, 0x6d, 0x63, 0x70, 0x2d, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x73, 0x3a, 0x6c, 0x69, 0x6e, 0x74, 0x2d, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x1a, 0x48, 0x92, 0x41, 0x45, 0x0a, 0x0a, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x20, 0x4d, + 0x43, 0x50, 0x12, 0x37, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6d, + 0x61, 0x6e, 0x61, 0x67, 0x65, 0x20, 0x4d, 0x43, 0x50, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x42, 0xb7, 0x02, 0x0a, 0x23, + 0x63, 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x33, 0x42, 0x08, 0x4d, 0x63, 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, + 0x67, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, + 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, + 0x61, 0x70, 0x69, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2f, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0x3b, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x44, 0xaa, 0x02, + 0x1f, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x44, 0x61, + 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x33, + 0xca, 0x02, 0x1f, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, + 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x33, 0xe2, 0x02, 0x2b, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, + 0x69, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x33, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0xea, 0x02, 0x22, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, + 0x3a, 0x3a, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x33, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/frontend/src/protogen/redpanda/api/aigateway/v1/backend_pool_pb.ts b/frontend/src/protogen/redpanda/api/aigateway/v1/backend_pool_pb.ts index 3f9cd9c9a1..3dafcda6ea 100644 --- a/frontend/src/protogen/redpanda/api/aigateway/v1/backend_pool_pb.ts +++ b/frontend/src/protogen/redpanda/api/aigateway/v1/backend_pool_pb.ts @@ -17,7 +17,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file redpanda/api/aigateway/v1/backend_pool.proto. */ export const file_redpanda_api_aigateway_v1_backend_pool: GenFile = /*@__PURE__*/ - fileDesc("CixyZWRwYW5kYS9hcGkvYWlnYXRld2F5L3YxL2JhY2tlbmRfcG9vbC5wcm90bxIZcmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MSJZChlDcmVhdGVCYWNrZW5kUG9vbFJlc3BvbnNlEjwKDGJhY2tlbmRfcG9vbBgBIAEoCzImLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuQmFja2VuZFBvb2wiVgoWR2V0QmFja2VuZFBvb2xSZXNwb25zZRI8CgxiYWNrZW5kX3Bvb2wYASABKAsyJi5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkJhY2tlbmRQb29sIlkKGVVwZGF0ZUJhY2tlbmRQb29sUmVzcG9uc2USPAoMYmFja2VuZF9wb29sGAEgASgLMiYucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5CYWNrZW5kUG9vbCIbChlEZWxldGVCYWNrZW5kUG9vbFJlc3BvbnNlItsICgtCYWNrZW5kUG9vbBIRCgRuYW1lGAEgASgJQgPgQQgSGQoMZGlzcGxheV9uYW1lGAIgASgJQgPgQQISEwoLZGVzY3JpcHRpb24YAyABKAkSOwoIYmFsYW5jZXIYBCABKAsyKS5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkJhbGFuY2VyQ29uZmlnEjIKB3NlcnZlcnMYBSADKAsyIS5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLlNlcnZlchIaChJyZXF1ZXN0X3RyYW5zZm9ybXMYBiADKAkSGwoTcmVzcG9uc2VfdHJhbnNmb3JtcxgHIAMoCRI5CgdyZXdyaXRlGAggASgLMigucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5SZXdyaXRlQ29uZmlnEkIKDGhlYWx0aF9jaGVjaxgJIAEoCzIsLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuSGVhbHRoQ2hlY2tDb25maWcSQAoLaHR0cF9jbGllbnQYCiABKAsyKy5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkhUVFBDbGllbnRDb25maWcSDwoHZW5hYmxlZBgLIAEoCBJGCghtZXRhZGF0YRgMIAMoCzI0LnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuQmFja2VuZFBvb2wuTWV0YWRhdGFFbnRyeRI0CgtjcmVhdGVfdGltZRgNIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCA+BBAxI0Cgt1cGRhdGVfdGltZRgOIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCA+BBAxJGCgxiYWNrZW5kX3R5cGUYDyABKA4yJi5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkJhY2tlbmRUeXBlQgi6SAWCAQIQARIVCg1kZWZlcl9sb2FkaW5nGBAgASgIEhQKDGxvYWRfdXBmcm9udBgRIAMoCRIrChp0b29sX2luZGV4X3JlZnJlc2hfc2Vjb25kcxgSIAEoBUIHukgEGgIoABIkCg9zZXNzaW9uX3RpbWVvdXQYEyABKAVCC7pICBoGGICjBSgAEkwKD3Nlc3Npb25fbWFuYWdlchgUIAEoCzIvLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuU2Vzc2lvbk1hbmFnZXJDb25maWdCAhgBEhoKEmZvcndhcmRfb2lkY190b2tlbhgVIAEoCBovCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAE6dupBcwoiYWlnYXRld2F5LnJlZHBhbmRhLmNvbS9CYWNrZW5kUG9vbBIvZ2F0ZXdheXMve2dhdGV3YXl9L2JhY2tlbmQtcG9vbHMve2JhY2tlbmRfcG9vbH0SHGJhY2tlbmQtcG9vbHMve2JhY2tlbmRfcG9vbH0ixwQKBlNlcnZlchIPCgJpZBgBIAEoCUID4EECEhQKDGRpc3BsYXlfbmFtZRgCIAEoCRIWCgl0cmFuc3BvcnQYAyABKAlCA+BBAhIPCgdhZGRyZXNzGAQgASgJEg8KB2NvbW1hbmQYBSABKAkSDAoEYXJncxgGIAMoCRI3CgNlbnYYByADKAsyKi5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLlNlcnZlci5FbnZFbnRyeRI5CgdyZXdyaXRlGAggASgLMigucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5SZXdyaXRlQ29uZmlnEhcKD3RpbWVvdXRfc2Vjb25kcxgJIAEoBRITCgttYXhfcmV0cmllcxgKIAEoBRIOCgZ3ZWlnaHQYCyABKAUSPAoKdGxzX3ZlcmlmeRgMIAEoDjIoLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuVExTVmVyaWZ5TW9kZRIzCgRhdXRoGA0gASgLMiUucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5BdXRoQ29uZmlnEg8KB2VuYWJsZWQYDiABKAgSGgoSZm9yd2FyZF9vaWRjX3Rva2VuGA8gASgIEiMKFmRlZmVyX2xvYWRpbmdfb3ZlcnJpZGUYECABKAhIAIgBARIQCghwcm92aWRlchgRIAEoCRoqCghFbnZFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBQhkKF19kZWZlcl9sb2FkaW5nX292ZXJyaWRlIngKDkJhbGFuY2VyQ29uZmlnEkIKCHN0cmF0ZWd5GAEgASgOMjAucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5Mb2FkQmFsYW5jaW5nU3RyYXRlZ3kSIgoVc3RyYXRlZ3lfZGlzcGxheV9uYW1lGAIgASgJQgPgQQMixQEKCkF1dGhDb25maWcSMQoEdHlwZRgBIAEoDjIjLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuQXV0aFR5cGUSDwoHYXBpX2tleRgCIAEoCRJDCgdoZWFkZXJzGAMgAygLMjIucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5BdXRoQ29uZmlnLkhlYWRlcnNFbnRyeRouCgxIZWFkZXJzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASKAAQoNUmV3cml0ZUNvbmZpZxI0CgRwYXRoGAEgASgLMiYucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5QYXRoUmV3cml0ZRI5CgdoZWFkZXJzGAIgASgLMigucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5IZWFkZXJSZXdyaXRlIi8KC1BhdGhSZXdyaXRlEg8KB3BhdHRlcm4YASABKAkSDwoHcmVwbGFjZRgCIAEoCSL3AQoNSGVhZGVyUmV3cml0ZRI+CgNzZXQYASADKAsyMS5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkhlYWRlclJld3JpdGUuU2V0RW50cnkSPgoDYWRkGAIgAygLMjEucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5IZWFkZXJSZXdyaXRlLkFkZEVudHJ5Eg4KBnJlbW92ZRgDIAMoCRoqCghTZXRFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBGioKCEFkZEVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEipAEKEUhlYWx0aENoZWNrQ29uZmlnEhsKE3VuaGVhbHRoeV90aHJlc2hvbGQYASABKAUSGQoRaGVhbHRoeV90aHJlc2hvbGQYAiABKAUSGQoRcmVjb3ZlcnlfaW50ZXJ2YWwYAyABKAkSPAoGYWN0aXZlGAQgASgLMiwucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5BY3RpdmVIZWFsdGhDaGVjayKPAQoRQWN0aXZlSGVhbHRoQ2hlY2sSDwoHZW5hYmxlZBgBIAEoCBIMCgR0eXBlGAIgASgJEhAKCGludGVydmFsGAMgASgJEg8KB3RpbWVvdXQYBCABKAkSOAoEaHR0cBgFIAEoCzIqLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuSFRUUEhlYWx0aENoZWNrIkgKD0hUVFBIZWFsdGhDaGVjaxIOCgZtZXRob2QYASABKAkSDAoEcGF0aBgCIAEoCRIXCg9leHBlY3RlZF9zdGF0dXMYAyABKAUizwIKEEhUVFBDbGllbnRDb25maWcSFgoObWF4X2lkbGVfY29ubnMYASABKAUSIQoZbWF4X2lkbGVfY29ubnNfcGVyX3NlcnZlchgCIAEoBRIcChRtYXhfY29ubnNfcGVyX3NlcnZlchgDIAEoBRIZChFpZGxlX2Nvbm5fdGltZW91dBgEIAEoBRIXCg9jb25uZWN0X3RpbWVvdXQYBSABKAUSHQoVdGxzX2hhbmRzaGFrZV90aW1lb3V0GAYgASgFEh8KF3Jlc3BvbnNlX2hlYWRlcl90aW1lb3V0GAcgASgFEh8KF2V4cGVjdF9jb250aW51ZV90aW1lb3V0GAggASgFEhsKE2Rpc2FibGVfY29tcHJlc3Npb24YCSABKAgSGwoTZGlzYWJsZV9rZWVwX2FsaXZlcxgKIAEoCBITCgtmb3JjZV9odHRwMhgLIAEoCCJ3ChRTZXNzaW9uTWFuYWdlckNvbmZpZxITCgdlbmFibGVkGAEgASgIQgIYARIpChhlbmZvcmNlX2lkZW50aXR5X2JpbmRpbmcYAyABKAhCAhgBSACIAQE6AhgBQhsKGV9lbmZvcmNlX2lkZW50aXR5X2JpbmRpbmcihAEKGENyZWF0ZUJhY2tlbmRQb29sUmVxdWVzdBIOCgZwYXJlbnQYASABKAkSQQoMYmFja2VuZF9wb29sGAMgASgLMiYucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5CYWNrZW5kUG9vbEID4EECSgQIAhADUg9iYWNrZW5kX3Bvb2xfaWQiUQoVR2V0QmFja2VuZFBvb2xSZXF1ZXN0EjgKBG5hbWUYASABKAlCKuBBAvpBJAoiYWlnYXRld2F5LnJlZHBhbmRhLmNvbS9CYWNrZW5kUG9vbCJyChdMaXN0QmFja2VuZFBvb2xzUmVxdWVzdBIOCgZwYXJlbnQYASABKAkSEQoJcGFnZV9zaXplGAIgASgFEhIKCnBhZ2VfdG9rZW4YAyABKAkSDgoGZmlsdGVyGAQgASgJEhAKCG9yZGVyX2J5GAUgASgJIoYBChhMaXN0QmFja2VuZFBvb2xzUmVzcG9uc2USPQoNYmFja2VuZF9wb29scxgBIAMoCzImLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuQmFja2VuZFBvb2wSFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJEhIKCnRvdGFsX3NpemUYAyABKAUijgEKGFVwZGF0ZUJhY2tlbmRQb29sUmVxdWVzdBJBCgxiYWNrZW5kX3Bvb2wYASABKAsyJi5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkJhY2tlbmRQb29sQgPgQQISLwoLdXBkYXRlX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrIlQKGERlbGV0ZUJhY2tlbmRQb29sUmVxdWVzdBI4CgRuYW1lGAEgASgJQirgQQL6QSQKImFpZ2F0ZXdheS5yZWRwYW5kYS5jb20vQmFja2VuZFBvb2wqlAIKFUxvYWRCYWxhbmNpbmdTdHJhdGVneRInCiNMT0FEX0JBTEFOQ0lOR19TVFJBVEVHWV9VTlNQRUNJRklFRBAAEicKI0xPQURfQkFMQU5DSU5HX1NUUkFURUdZX1JPVU5EX1JPQklOEAESMAosTE9BRF9CQUxBTkNJTkdfU1RSQVRFR1lfV0VJR0hURURfUk9VTkRfUk9CSU4QAhItCilMT0FEX0JBTEFOQ0lOR19TVFJBVEVHWV9MRUFTVF9DT05ORUNUSU9OUxADEiIKHkxPQURfQkFMQU5DSU5HX1NUUkFURUdZX1JBTkRPTRAEEiQKIExPQURfQkFMQU5DSU5HX1NUUkFURUdZX0ZBSUxPVkVSEAUqZAoNVExTVmVyaWZ5TW9kZRIfChtUTFNfVkVSSUZZX01PREVfVU5TUEVDSUZJRUQQABIYChRUTFNfVkVSSUZZX01PREVfRlVMTBABEhgKFFRMU19WRVJJRllfTU9ERV9TS0lQEAIqaAoIQXV0aFR5cGUSGQoVQVVUSF9UWVBFX1VOU1BFQ0lGSUVEEAASFAoQQVVUSF9UWVBFX0JFQVJFUhABEhUKEUFVVEhfVFlQRV9BUElfS0VZEAISFAoQQVVUSF9UWVBFX0NVU1RPTRADKlgKC0JhY2tlbmRUeXBlEhwKGEJBQ0tFTkRfVFlQRV9VTlNQRUNJRklFRBAAEhUKEUJBQ0tFTkRfVFlQRV9IVFRQEAESFAoQQkFDS0VORF9UWVBFX01DUBACMuoIChJCYWNrZW5kUG9vbFNlcnZpY2US3gEKEUNyZWF0ZUJhY2tlbmRQb29sEjMucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5DcmVhdGVCYWNrZW5kUG9vbFJlcXVlc3QaNC5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkNyZWF0ZUJhY2tlbmRQb29sUmVzcG9uc2UiXoLT5JMCWDoMYmFja2VuZF9wb29sWiE6DGJhY2tlbmRfcG9vbCIRL3YxL2JhY2tlbmQtcG9vbHMiJS92MS97cGFyZW50PWdhdGV3YXlzLyp9L2JhY2tlbmQtcG9vbHMSwgEKDkdldEJhY2tlbmRQb29sEjAucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5HZXRCYWNrZW5kUG9vbFJlcXVlc3QaMS5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkdldEJhY2tlbmRQb29sUmVzcG9uc2UiS4LT5JMCRVocEhovdjEve25hbWU9YmFja2VuZC1wb29scy8qfRIlL3YxL3tuYW1lPWdhdGV3YXlzLyovYmFja2VuZC1wb29scy8qfRK/AQoQTGlzdEJhY2tlbmRQb29scxIyLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuTGlzdEJhY2tlbmRQb29sc1JlcXVlc3QaMy5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkxpc3RCYWNrZW5kUG9vbHNSZXNwb25zZSJCgtPkkwI8WhMSES92MS9iYWNrZW5kLXBvb2xzEiUvdjEve3BhcmVudD1nYXRld2F5cy8qfS9iYWNrZW5kLXBvb2xzEoICChFVcGRhdGVCYWNrZW5kUG9vbBIzLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuVXBkYXRlQmFja2VuZFBvb2xSZXF1ZXN0GjQucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5VcGRhdGVCYWNrZW5kUG9vbFJlc3BvbnNlIoEBgtPkkwJ7OgxiYWNrZW5kX3Bvb2xaNzoMYmFja2VuZF9wb29sMicvdjEve2JhY2tlbmRfcG9vbC5uYW1lPWJhY2tlbmQtcG9vbHMvKn0yMi92MS97YmFja2VuZF9wb29sLm5hbWU9Z2F0ZXdheXMvKi9iYWNrZW5kLXBvb2xzLyp9EssBChFEZWxldGVCYWNrZW5kUG9vbBIzLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuRGVsZXRlQmFja2VuZFBvb2xSZXF1ZXN0GjQucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5EZWxldGVCYWNrZW5kUG9vbFJlc3BvbnNlIkuC0+STAkVaHCoaL3YxL3tuYW1lPWJhY2tlbmQtcG9vbHMvKn0qJS92MS97bmFtZT1nYXRld2F5cy8qL2JhY2tlbmQtcG9vbHMvKn0aGcpBFmFpZ2F0ZXdheS5yZWRwYW5kYS5jb21CTVpLZ28ucGFuZGEuZGV2L3JlZHBhbmRhLWFpZ3cvcHJvdG9zL2dlbi9yZWRwYW5kYS9hcGkvYWlnYXRld2F5L3YxO2FpZ2F0ZXdheXYxYgZwcm90bzM", [file_buf_validate_validate, file_google_api_annotations, file_google_api_client, file_google_api_field_behavior, file_google_api_resource, file_google_protobuf_field_mask, file_google_protobuf_timestamp]); + fileDesc("CixyZWRwYW5kYS9hcGkvYWlnYXRld2F5L3YxL2JhY2tlbmRfcG9vbC5wcm90bxIZcmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MSJZChlDcmVhdGVCYWNrZW5kUG9vbFJlc3BvbnNlEjwKDGJhY2tlbmRfcG9vbBgBIAEoCzImLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuQmFja2VuZFBvb2wiVgoWR2V0QmFja2VuZFBvb2xSZXNwb25zZRI8CgxiYWNrZW5kX3Bvb2wYASABKAsyJi5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkJhY2tlbmRQb29sIlkKGVVwZGF0ZUJhY2tlbmRQb29sUmVzcG9uc2USPAoMYmFja2VuZF9wb29sGAEgASgLMiYucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5CYWNrZW5kUG9vbCIbChlEZWxldGVCYWNrZW5kUG9vbFJlc3BvbnNlItsICgtCYWNrZW5kUG9vbBIRCgRuYW1lGAEgASgJQgPgQQgSGQoMZGlzcGxheV9uYW1lGAIgASgJQgPgQQISEwoLZGVzY3JpcHRpb24YAyABKAkSOwoIYmFsYW5jZXIYBCABKAsyKS5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkJhbGFuY2VyQ29uZmlnEjIKB3NlcnZlcnMYBSADKAsyIS5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLlNlcnZlchIaChJyZXF1ZXN0X3RyYW5zZm9ybXMYBiADKAkSGwoTcmVzcG9uc2VfdHJhbnNmb3JtcxgHIAMoCRI5CgdyZXdyaXRlGAggASgLMigucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5SZXdyaXRlQ29uZmlnEkIKDGhlYWx0aF9jaGVjaxgJIAEoCzIsLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuSGVhbHRoQ2hlY2tDb25maWcSQAoLaHR0cF9jbGllbnQYCiABKAsyKy5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkhUVFBDbGllbnRDb25maWcSDwoHZW5hYmxlZBgLIAEoCBJGCghtZXRhZGF0YRgMIAMoCzI0LnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuQmFja2VuZFBvb2wuTWV0YWRhdGFFbnRyeRI0CgtjcmVhdGVfdGltZRgNIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCA+BBAxI0Cgt1cGRhdGVfdGltZRgOIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCA+BBAxJGCgxiYWNrZW5kX3R5cGUYDyABKA4yJi5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkJhY2tlbmRUeXBlQgi6SAWCAQIQARIVCg1kZWZlcl9sb2FkaW5nGBAgASgIEhQKDGxvYWRfdXBmcm9udBgRIAMoCRIrChp0b29sX2luZGV4X3JlZnJlc2hfc2Vjb25kcxgSIAEoBUIHukgEGgIoABIkCg9zZXNzaW9uX3RpbWVvdXQYEyABKAVCC7pICBoGGICjBSgAEkwKD3Nlc3Npb25fbWFuYWdlchgUIAEoCzIvLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuU2Vzc2lvbk1hbmFnZXJDb25maWdCAhgBEhoKEmZvcndhcmRfb2lkY190b2tlbhgVIAEoCBovCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAE6dupBcwoiYWlnYXRld2F5LnJlZHBhbmRhLmNvbS9CYWNrZW5kUG9vbBIvZ2F0ZXdheXMve2dhdGV3YXl9L2JhY2tlbmQtcG9vbHMve2JhY2tlbmRfcG9vbH0SHGJhY2tlbmQtcG9vbHMve2JhY2tlbmRfcG9vbH0ingQKBlNlcnZlchIPCgJpZBgBIAEoCUID4EECEhQKDGRpc3BsYXlfbmFtZRgCIAEoCRIWCgl0cmFuc3BvcnQYAyABKAlCA+BBAhIPCgdhZGRyZXNzGAQgASgJEg8KB2NvbW1hbmQYBSABKAkSDAoEYXJncxgGIAMoCRI3CgNlbnYYByADKAsyKi5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLlNlcnZlci5FbnZFbnRyeRI5CgdyZXdyaXRlGAggASgLMigucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5SZXdyaXRlQ29uZmlnEhcKD3RpbWVvdXRfc2Vjb25kcxgJIAEoBRITCgttYXhfcmV0cmllcxgKIAEoBRIOCgZ3ZWlnaHQYCyABKAUSPAoKdGxzX3ZlcmlmeRgMIAEoDjIoLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuVExTVmVyaWZ5TW9kZRIPCgdlbmFibGVkGA4gASgIEhoKEmZvcndhcmRfb2lkY190b2tlbhgPIAEoCBIjChZkZWZlcl9sb2FkaW5nX292ZXJyaWRlGBAgASgISACIAQESEAoIcHJvdmlkZXIYESABKAkaKgoIRW52RW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4AUIZChdfZGVmZXJfbG9hZGluZ19vdmVycmlkZUoECA0QDlIEYXV0aCJ4Cg5CYWxhbmNlckNvbmZpZxJCCghzdHJhdGVneRgBIAEoDjIwLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuTG9hZEJhbGFuY2luZ1N0cmF0ZWd5EiIKFXN0cmF0ZWd5X2Rpc3BsYXlfbmFtZRgCIAEoCUID4EEDIoABCg1SZXdyaXRlQ29uZmlnEjQKBHBhdGgYASABKAsyJi5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLlBhdGhSZXdyaXRlEjkKB2hlYWRlcnMYAiABKAsyKC5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkhlYWRlclJld3JpdGUiLwoLUGF0aFJld3JpdGUSDwoHcGF0dGVybhgBIAEoCRIPCgdyZXBsYWNlGAIgASgJIvcBCg1IZWFkZXJSZXdyaXRlEj4KA3NldBgBIAMoCzIxLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuSGVhZGVyUmV3cml0ZS5TZXRFbnRyeRI+CgNhZGQYAiADKAsyMS5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkhlYWRlclJld3JpdGUuQWRkRW50cnkSDgoGcmVtb3ZlGAMgAygJGioKCFNldEVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaKgoIQWRkRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASKkAQoRSGVhbHRoQ2hlY2tDb25maWcSGwoTdW5oZWFsdGh5X3RocmVzaG9sZBgBIAEoBRIZChFoZWFsdGh5X3RocmVzaG9sZBgCIAEoBRIZChFyZWNvdmVyeV9pbnRlcnZhbBgDIAEoCRI8CgZhY3RpdmUYBCABKAsyLC5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkFjdGl2ZUhlYWx0aENoZWNrIo8BChFBY3RpdmVIZWFsdGhDaGVjaxIPCgdlbmFibGVkGAEgASgIEgwKBHR5cGUYAiABKAkSEAoIaW50ZXJ2YWwYAyABKAkSDwoHdGltZW91dBgEIAEoCRI4CgRodHRwGAUgASgLMioucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5IVFRQSGVhbHRoQ2hlY2siSAoPSFRUUEhlYWx0aENoZWNrEg4KBm1ldGhvZBgBIAEoCRIMCgRwYXRoGAIgASgJEhcKD2V4cGVjdGVkX3N0YXR1cxgDIAEoBSLPAgoQSFRUUENsaWVudENvbmZpZxIWCg5tYXhfaWRsZV9jb25ucxgBIAEoBRIhChltYXhfaWRsZV9jb25uc19wZXJfc2VydmVyGAIgASgFEhwKFG1heF9jb25uc19wZXJfc2VydmVyGAMgASgFEhkKEWlkbGVfY29ubl90aW1lb3V0GAQgASgFEhcKD2Nvbm5lY3RfdGltZW91dBgFIAEoBRIdChV0bHNfaGFuZHNoYWtlX3RpbWVvdXQYBiABKAUSHwoXcmVzcG9uc2VfaGVhZGVyX3RpbWVvdXQYByABKAUSHwoXZXhwZWN0X2NvbnRpbnVlX3RpbWVvdXQYCCABKAUSGwoTZGlzYWJsZV9jb21wcmVzc2lvbhgJIAEoCBIbChNkaXNhYmxlX2tlZXBfYWxpdmVzGAogASgIEhMKC2ZvcmNlX2h0dHAyGAsgASgIIncKFFNlc3Npb25NYW5hZ2VyQ29uZmlnEhMKB2VuYWJsZWQYASABKAhCAhgBEikKGGVuZm9yY2VfaWRlbnRpdHlfYmluZGluZxgDIAEoCEICGAFIAIgBAToCGAFCGwoZX2VuZm9yY2VfaWRlbnRpdHlfYmluZGluZyKEAQoYQ3JlYXRlQmFja2VuZFBvb2xSZXF1ZXN0Eg4KBnBhcmVudBgBIAEoCRJBCgxiYWNrZW5kX3Bvb2wYAyABKAsyJi5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkJhY2tlbmRQb29sQgPgQQJKBAgCEANSD2JhY2tlbmRfcG9vbF9pZCJRChVHZXRCYWNrZW5kUG9vbFJlcXVlc3QSOAoEbmFtZRgBIAEoCUIq4EEC+kEkCiJhaWdhdGV3YXkucmVkcGFuZGEuY29tL0JhY2tlbmRQb29sInIKF0xpc3RCYWNrZW5kUG9vbHNSZXF1ZXN0Eg4KBnBhcmVudBgBIAEoCRIRCglwYWdlX3NpemUYAiABKAUSEgoKcGFnZV90b2tlbhgDIAEoCRIOCgZmaWx0ZXIYBCABKAkSEAoIb3JkZXJfYnkYBSABKAkihgEKGExpc3RCYWNrZW5kUG9vbHNSZXNwb25zZRI9Cg1iYWNrZW5kX3Bvb2xzGAEgAygLMiYucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5CYWNrZW5kUG9vbBIXCg9uZXh0X3BhZ2VfdG9rZW4YAiABKAkSEgoKdG90YWxfc2l6ZRgDIAEoBSKOAQoYVXBkYXRlQmFja2VuZFBvb2xSZXF1ZXN0EkEKDGJhY2tlbmRfcG9vbBgBIAEoCzImLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuQmFja2VuZFBvb2xCA+BBAhIvCgt1cGRhdGVfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siVAoYRGVsZXRlQmFja2VuZFBvb2xSZXF1ZXN0EjgKBG5hbWUYASABKAlCKuBBAvpBJAoiYWlnYXRld2F5LnJlZHBhbmRhLmNvbS9CYWNrZW5kUG9vbCqUAgoVTG9hZEJhbGFuY2luZ1N0cmF0ZWd5EicKI0xPQURfQkFMQU5DSU5HX1NUUkFURUdZX1VOU1BFQ0lGSUVEEAASJwojTE9BRF9CQUxBTkNJTkdfU1RSQVRFR1lfUk9VTkRfUk9CSU4QARIwCixMT0FEX0JBTEFOQ0lOR19TVFJBVEVHWV9XRUlHSFRFRF9ST1VORF9ST0JJThACEi0KKUxPQURfQkFMQU5DSU5HX1NUUkFURUdZX0xFQVNUX0NPTk5FQ1RJT05TEAMSIgoeTE9BRF9CQUxBTkNJTkdfU1RSQVRFR1lfUkFORE9NEAQSJAogTE9BRF9CQUxBTkNJTkdfU1RSQVRFR1lfRkFJTE9WRVIQBSpkCg1UTFNWZXJpZnlNb2RlEh8KG1RMU19WRVJJRllfTU9ERV9VTlNQRUNJRklFRBAAEhgKFFRMU19WRVJJRllfTU9ERV9GVUxMEAESGAoUVExTX1ZFUklGWV9NT0RFX1NLSVAQAipoCghBdXRoVHlwZRIZChVBVVRIX1RZUEVfVU5TUEVDSUZJRUQQABIUChBBVVRIX1RZUEVfQkVBUkVSEAESFQoRQVVUSF9UWVBFX0FQSV9LRVkQAhIUChBBVVRIX1RZUEVfQ1VTVE9NEAMqWAoLQmFja2VuZFR5cGUSHAoYQkFDS0VORF9UWVBFX1VOU1BFQ0lGSUVEEAASFQoRQkFDS0VORF9UWVBFX0hUVFAQARIUChBCQUNLRU5EX1RZUEVfTUNQEAIy6ggKEkJhY2tlbmRQb29sU2VydmljZRLeAQoRQ3JlYXRlQmFja2VuZFBvb2wSMy5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkNyZWF0ZUJhY2tlbmRQb29sUmVxdWVzdBo0LnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuQ3JlYXRlQmFja2VuZFBvb2xSZXNwb25zZSJegtPkkwJYOgxiYWNrZW5kX3Bvb2xaIToMYmFja2VuZF9wb29sIhEvdjEvYmFja2VuZC1wb29scyIlL3YxL3twYXJlbnQ9Z2F0ZXdheXMvKn0vYmFja2VuZC1wb29scxLCAQoOR2V0QmFja2VuZFBvb2wSMC5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkdldEJhY2tlbmRQb29sUmVxdWVzdBoxLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuR2V0QmFja2VuZFBvb2xSZXNwb25zZSJLgtPkkwJFWhwSGi92MS97bmFtZT1iYWNrZW5kLXBvb2xzLyp9EiUvdjEve25hbWU9Z2F0ZXdheXMvKi9iYWNrZW5kLXBvb2xzLyp9Er8BChBMaXN0QmFja2VuZFBvb2xzEjIucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5MaXN0QmFja2VuZFBvb2xzUmVxdWVzdBozLnJlZHBhbmRhLmFwaS5haWdhdGV3YXkudjEuTGlzdEJhY2tlbmRQb29sc1Jlc3BvbnNlIkKC0+STAjxaExIRL3YxL2JhY2tlbmQtcG9vbHMSJS92MS97cGFyZW50PWdhdGV3YXlzLyp9L2JhY2tlbmQtcG9vbHMSggIKEVVwZGF0ZUJhY2tlbmRQb29sEjMucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5VcGRhdGVCYWNrZW5kUG9vbFJlcXVlc3QaNC5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLlVwZGF0ZUJhY2tlbmRQb29sUmVzcG9uc2UigQGC0+STAns6DGJhY2tlbmRfcG9vbFo3OgxiYWNrZW5kX3Bvb2wyJy92MS97YmFja2VuZF9wb29sLm5hbWU9YmFja2VuZC1wb29scy8qfTIyL3YxL3tiYWNrZW5kX3Bvb2wubmFtZT1nYXRld2F5cy8qL2JhY2tlbmQtcG9vbHMvKn0SywEKEURlbGV0ZUJhY2tlbmRQb29sEjMucmVkcGFuZGEuYXBpLmFpZ2F0ZXdheS52MS5EZWxldGVCYWNrZW5kUG9vbFJlcXVlc3QaNC5yZWRwYW5kYS5hcGkuYWlnYXRld2F5LnYxLkRlbGV0ZUJhY2tlbmRQb29sUmVzcG9uc2UiS4LT5JMCRVocKhovdjEve25hbWU9YmFja2VuZC1wb29scy8qfSolL3YxL3tuYW1lPWdhdGV3YXlzLyovYmFja2VuZC1wb29scy8qfRoZykEWYWlnYXRld2F5LnJlZHBhbmRhLmNvbUJNWktnby5wYW5kYS5kZXYvcmVkcGFuZGEtYWlndy9wcm90b3MvZ2VuL3JlZHBhbmRhL2FwaS9haWdhdGV3YXkvdjE7YWlnYXRld2F5djFiBnByb3RvMw", [file_buf_validate_validate, file_google_api_annotations, file_google_api_client, file_google_api_field_behavior, file_google_api_resource, file_google_protobuf_field_mask, file_google_protobuf_timestamp]); /** * Response message for CreateBackendPool RPC. @@ -360,13 +360,6 @@ export type Server = Message<"redpanda.api.aigateway.v1.Server"> & { */ tlsVerify: TLSVerifyMode; - /** - * Optional: Authentication configuration - * - * @generated from field: redpanda.api.aigateway.v1.AuthConfig auth = 13; - */ - auth?: AuthConfig; - /** * Whether this server is enabled * @@ -436,33 +429,6 @@ export type BalancerConfig = Message<"redpanda.api.aigateway.v1.BalancerConfig"> export const BalancerConfigSchema: GenMessage = /*@__PURE__*/ messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 6); -/** - * @generated from message redpanda.api.aigateway.v1.AuthConfig - */ -export type AuthConfig = Message<"redpanda.api.aigateway.v1.AuthConfig"> & { - /** - * @generated from field: redpanda.api.aigateway.v1.AuthType type = 1; - */ - type: AuthType; - - /** - * @generated from field: string api_key = 2; - */ - apiKey: string; - - /** - * @generated from field: map headers = 3; - */ - headers: { [key: string]: string }; -}; - -/** - * Describes the message redpanda.api.aigateway.v1.AuthConfig. - * Use `create(AuthConfigSchema)` to create a new message. - */ -export const AuthConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 7); - /** * RewriteConfig defines HTTP request rewriting rules. * @@ -489,7 +455,7 @@ export type RewriteConfig = Message<"redpanda.api.aigateway.v1.RewriteConfig"> & * Use `create(RewriteConfigSchema)` to create a new message. */ export const RewriteConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 8); + messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 7); /** * PathRewrite defines path rewriting rules. @@ -517,7 +483,7 @@ export type PathRewrite = Message<"redpanda.api.aigateway.v1.PathRewrite"> & { * Use `create(PathRewriteSchema)` to create a new message. */ export const PathRewriteSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 9); + messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 8); /** * HeaderRewrite defines header manipulation rules. @@ -552,7 +518,7 @@ export type HeaderRewrite = Message<"redpanda.api.aigateway.v1.HeaderRewrite"> & * Use `create(HeaderRewriteSchema)` to create a new message. */ export const HeaderRewriteSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 10); + messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 9); /** * HealthCheckConfig configures passive and active health checking. @@ -594,7 +560,7 @@ export type HealthCheckConfig = Message<"redpanda.api.aigateway.v1.HealthCheckCo * Use `create(HealthCheckConfigSchema)` to create a new message. */ export const HealthCheckConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 11); + messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 10); /** * ActiveHealthCheck configures periodic probing of backend servers. @@ -643,7 +609,7 @@ export type ActiveHealthCheck = Message<"redpanda.api.aigateway.v1.ActiveHealthC * Use `create(ActiveHealthCheckSchema)` to create a new message. */ export const ActiveHealthCheckSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 12); + messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 11); /** * HTTPHealthCheck configures HTTP-based active health checks. @@ -678,7 +644,7 @@ export type HTTPHealthCheck = Message<"redpanda.api.aigateway.v1.HTTPHealthCheck * Use `create(HTTPHealthCheckSchema)` to create a new message. */ export const HTTPHealthCheckSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 13); + messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 12); /** * HTTPClientConfig configures the HTTP client for backend requests. @@ -755,7 +721,7 @@ export type HTTPClientConfig = Message<"redpanda.api.aigateway.v1.HTTPClientConf * Use `create(HTTPClientConfigSchema)` to create a new message. */ export const HTTPClientConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 14); + messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 13); /** * DEPRECATED: SessionManagerConfig is deprecated. @@ -799,7 +765,7 @@ export type SessionManagerConfig = Message<"redpanda.api.aigateway.v1.SessionMan * @deprecated */ export const SessionManagerConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 15); + messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 14); /** * @generated from message redpanda.api.aigateway.v1.CreateBackendPoolRequest @@ -821,7 +787,7 @@ export type CreateBackendPoolRequest = Message<"redpanda.api.aigateway.v1.Create * Use `create(CreateBackendPoolRequestSchema)` to create a new message. */ export const CreateBackendPoolRequestSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 16); + messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 15); /** * @generated from message redpanda.api.aigateway.v1.GetBackendPoolRequest @@ -838,7 +804,7 @@ export type GetBackendPoolRequest = Message<"redpanda.api.aigateway.v1.GetBacken * Use `create(GetBackendPoolRequestSchema)` to create a new message. */ export const GetBackendPoolRequestSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 17); + messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 16); /** * @generated from message redpanda.api.aigateway.v1.ListBackendPoolsRequest @@ -875,7 +841,7 @@ export type ListBackendPoolsRequest = Message<"redpanda.api.aigateway.v1.ListBac * Use `create(ListBackendPoolsRequestSchema)` to create a new message. */ export const ListBackendPoolsRequestSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 18); + messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 17); /** * @generated from message redpanda.api.aigateway.v1.ListBackendPoolsResponse @@ -902,7 +868,7 @@ export type ListBackendPoolsResponse = Message<"redpanda.api.aigateway.v1.ListBa * Use `create(ListBackendPoolsResponseSchema)` to create a new message. */ export const ListBackendPoolsResponseSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 19); + messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 18); /** * @generated from message redpanda.api.aigateway.v1.UpdateBackendPoolRequest @@ -924,7 +890,7 @@ export type UpdateBackendPoolRequest = Message<"redpanda.api.aigateway.v1.Update * Use `create(UpdateBackendPoolRequestSchema)` to create a new message. */ export const UpdateBackendPoolRequestSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 20); + messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 19); /** * @generated from message redpanda.api.aigateway.v1.DeleteBackendPoolRequest @@ -941,7 +907,7 @@ export type DeleteBackendPoolRequest = Message<"redpanda.api.aigateway.v1.Delete * Use `create(DeleteBackendPoolRequestSchema)` to create a new message. */ export const DeleteBackendPoolRequestSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 21); + messageDesc(file_redpanda_api_aigateway_v1_backend_pool, 20); /** * @generated from enum redpanda.api.aigateway.v1.LoadBalancingStrategy diff --git a/frontend/src/protogen/redpanda/api/common/v1/options_pb.ts b/frontend/src/protogen/redpanda/api/common/v1/options_pb.ts index fce7ac575e..16a0509c73 100644 --- a/frontend/src/protogen/redpanda/api/common/v1/options_pb.ts +++ b/frontend/src/protogen/redpanda/api/common/v1/options_pb.ts @@ -2,20 +2,159 @@ // @generated from file redpanda/api/common/v1/options.proto (package redpanda.api.common.v1, syntax proto3) /* eslint-disable */ -import type { GenExtension, GenFile } from "@bufbuild/protobuf/codegenv1"; -import { extDesc, fileDesc } from "@bufbuild/protobuf/codegenv1"; +import type { GenExtension, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1"; +import { extDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1"; import type { MethodOptions } from "@bufbuild/protobuf/wkt"; import { file_google_protobuf_descriptor } from "@bufbuild/protobuf/wkt"; +import type { Message } from "@bufbuild/protobuf"; /** * Describes the file redpanda/api/common/v1/options.proto. */ export const file_redpanda_api_common_v1_options: GenFile = /*@__PURE__*/ - fileDesc("CiRyZWRwYW5kYS9hcGkvY29tbW9uL3YxL29wdGlvbnMucHJvdG8SFnJlZHBhbmRhLmFwaS5jb21tb24udjE6UAoTcmVxdWlyZWRfcGVybWlzc2lvbhIeLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RPcHRpb25zGPd3IAMoCVIScmVxdWlyZWRQZXJtaXNzaW9uQllaV2J1Zi5idWlsZC9nZW4vZ28vcmVkcGFuZGFkYXRhL2NvbW1vbi9wcm90b2NvbGJ1ZmZlcnMvZ28vcmVkcGFuZGEvYXBpL2NvbW1vbi92MTtjb21tb252MWIGcHJvdG8z", [file_google_protobuf_descriptor]); + fileDesc("CiRyZWRwYW5kYS9hcGkvY29tbW9uL3YxL29wdGlvbnMucHJvdG8SFnJlZHBhbmRhLmFwaS5jb21tb24udjEiZQoTTWV0aG9kQXV0aG9yaXphdGlvbhIVCg1yZXNvdXJjZV90eXBlGAEgASgJEhUKDWlkX2dldHRlcl9jZWwYAiABKAkSEgoKcGVybWlzc2lvbhgDIAEoCRIMCgRza2lwGAQgASgIInMKF0NvbGxlY3Rpb25BdXRob3JpemF0aW9uEh0KFWNvbGxlY3Rpb25fZ2V0dGVyX2NlbBgBIAEoCRI5CgRlYWNoGAIgASgLMisucmVkcGFuZGEuYXBpLmNvbW1vbi52MS5NZXRob2RBdXRob3JpemF0aW9uOlAKE3JlcXVpcmVkX3Blcm1pc3Npb24SHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxj3dyADKAlSEnJlcXVpcmVkUGVybWlzc2lvbjp/ChRtZXRob2RfYXV0aG9yaXphdGlvbhIeLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RPcHRpb25zGPt3IAEoCzIrLnJlZHBhbmRhLmFwaS5jb21tb24udjEuTWV0aG9kQXV0aG9yaXphdGlvblITbWV0aG9kQXV0aG9yaXphdGlvbjqLAQoYY29sbGVjdGlvbl9hdXRob3JpemF0aW9uEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMY/HcgASgLMi8ucmVkcGFuZGEuYXBpLmNvbW1vbi52MS5Db2xsZWN0aW9uQXV0aG9yaXphdGlvblIXY29sbGVjdGlvbkF1dGhvcml6YXRpb25CWVpXYnVmLmJ1aWxkL2dlbi9nby9yZWRwYW5kYWRhdGEvY29tbW9uL3Byb3RvY29sYnVmZmVycy9nby9yZWRwYW5kYS9hcGkvY29tbW9uL3YxO2NvbW1vbnYxYgZwcm90bzM", [file_google_protobuf_descriptor]); /** + * MethodAuthorization defines the authorization requirements for a single-resource RPC. + * + * @generated from message redpanda.api.common.v1.MethodAuthorization + */ +export type MethodAuthorization = Message<"redpanda.api.common.v1.MethodAuthorization"> & { + /** + * resource_type is the type segment appended to the base resource path, + * e.g. "pipelines", "aiagents", "mcpservers", "knowledgebases". + * + * @generated from field: string resource_type = 1; + */ + resourceType: string; + + /** + * id_getter_cel is a CEL expression to extract the resource ID from the request. + * Available variables: + * - request: the request proto message + * + * e.g. "request.id", "request.pipeline.name", "request.name" + * Empty string means the permission applies at the base resource level + * (no sub-resource scoping). + * + * @generated from field: string id_getter_cel = 2; + */ + idGetterCel: string; + + /** + * permission is the permission name to check. + * + * e.g. "dataplane_pipeline_create", "dataplane_aiagent_get" + * + * @generated from field: string permission = 3; + */ + permission: string; + + /** + * skip exempts this method from authorization. The interceptor passes + * through without any permission check. Use for RPCs that must remain + * open (e.g. health checks on the same gRPC server). + * + * e.g.: + * option (redpanda.api.common.v1.method_authorization) = { skip: true }; + * + * @generated from field: bool skip = 4; + */ + skip: boolean; +}; + +/** + * Describes the message redpanda.api.common.v1.MethodAuthorization. + * Use `create(MethodAuthorizationSchema)` to create a new message. + */ +export const MethodAuthorizationSchema: GenMessage = /*@__PURE__*/ + messageDesc(file_redpanda_api_common_v1_options, 0); + +/** + * CollectionAuthorization defines authorization for list RPCs returning collections. + * + * @generated from message redpanda.api.common.v1.CollectionAuthorization + */ +export type CollectionAuthorization = Message<"redpanda.api.common.v1.CollectionAuthorization"> & { + /** + * collection_getter_cel is a CEL expression to extract the collection + * from the response message. + * + * e.g. "response.pipelines", "response.agents" + * + * @generated from field: string collection_getter_cel = 1; + */ + collectionGetterCel: string; + + /** + * each defines the permission check applied to each element in the collection. + * + * @generated from field: redpanda.api.common.v1.MethodAuthorization each = 2; + */ + each?: MethodAuthorization; +}; + +/** + * Describes the message redpanda.api.common.v1.CollectionAuthorization. + * Use `create(CollectionAuthorizationSchema)` to create a new message. + */ +export const CollectionAuthorizationSchema: GenMessage = /*@__PURE__*/ + messageDesc(file_redpanda_api_common_v1_options, 1); + +/** + * required_permission is a simple permission string required to call this method. + * Use this for methods that don't need per-resource scoping. + * + * e.g.: + * option (redpanda.api.common.v1.required_permission) = "dataplane_pipeline_create"; + * * @generated from extension: repeated string required_permission = 15351; */ export const required_permission: GenExtension = /*@__PURE__*/ extDesc(file_redpanda_api_common_v1_options, 0); +/** + * method_authorization defines the permission and resource extraction + * for single-resource RPCs (create, get, update, delete, start, stop). + * Can also be used to skip authorization entirely via the skip field. + * + * When used together with collection_authorization on the same RPC, + * the interceptor performs BOTH a pre-call permission check (using this + * annotation) AND post-call per-item filtering (using collection_authorization). + * + * e.g.: + * option (redpanda.api.common.v1.method_authorization) = { + * resource_type: "pipelines", + * id_getter_cel: "request.pipeline.id", + * permission: "dataplane_pipeline_create" + * }; + * + * @generated from extension: redpanda.api.common.v1.MethodAuthorization method_authorization = 15355; + */ +export const method_authorization: GenExtension = /*@__PURE__*/ + extDesc(file_redpanda_api_common_v1_options, 1); + +/** + * collection_authorization defines per-item filtering for list RPCs that + * return collections of resources. After the handler runs, items the + * principal lacks permission for are removed from the response. + * + * When used alone, the pre-call permission check is skipped — the principal + * may only have permission on specific resources, not at the parent level. + * When used together with method_authorization, the pre-call check also runs. + * + * e.g.: + * option (redpanda.api.common.v1.collection_authorization) = { + * collection_getter_cel: "response.pipelines", + * each: { + * resource_type: "pipelines", + * id_getter_cel: "each.id", + * permission: "dataplane_pipeline_list" + * } + * }; + * + * @generated from extension: redpanda.api.common.v1.CollectionAuthorization collection_authorization = 15356; + */ +export const collection_authorization: GenExtension = /*@__PURE__*/ + extDesc(file_redpanda_api_common_v1_options, 2); + diff --git a/frontend/src/protogen/redpanda/api/console/v1alpha1/list_messages_pb.ts b/frontend/src/protogen/redpanda/api/console/v1alpha1/list_messages_pb.ts index 4de938e1fa..9f59d93528 100644 --- a/frontend/src/protogen/redpanda/api/console/v1alpha1/list_messages_pb.ts +++ b/frontend/src/protogen/redpanda/api/console/v1alpha1/list_messages_pb.ts @@ -13,7 +13,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file redpanda/api/console/v1alpha1/list_messages.proto. */ export const file_redpanda_api_console_v1alpha1_list_messages: GenFile = /*@__PURE__*/ - fileDesc("CjFyZWRwYW5kYS9hcGkvY29uc29sZS92MWFscGhhMS9saXN0X21lc3NhZ2VzLnByb3RvEh1yZWRwYW5kYS5hcGkuY29uc29sZS52MWFscGhhMSLOBAoTTGlzdE1lc3NhZ2VzUmVxdWVzdBItCgV0b3BpYxgBIAEoCUIeukgbchkQARj5ATISXlthLXpBLVowLTkuX1wtXSokEiMKDHN0YXJ0X29mZnNldBgCIAEoEkINukgKQggwATADMAUwBxIXCg9zdGFydF90aW1lc3RhbXAYAyABKAMSJgoMcGFydGl0aW9uX2lkGAQgASgFQhC6SA0aCyj///////////8BEhMKC21heF9yZXN1bHRzGAUgASgFEh8KF2ZpbHRlcl9pbnRlcnByZXRlcl9jb2RlGAYgASgJEhIKCmVudGVycHJpc2UYByABKAwSFAoMdHJvdWJsZXNob290GAggASgIEiQKHGluY2x1ZGVfb3JpZ2luYWxfcmF3X3BheWxvYWQYCSABKAgSTQoQa2V5X2Rlc2VyaWFsaXplchgKIAEoDjIuLnJlZHBhbmRhLmFwaS5jb25zb2xlLnYxYWxwaGExLlBheWxvYWRFbmNvZGluZ0gAiAEBEk8KEnZhbHVlX2Rlc2VyaWFsaXplchgLIAEoDjIuLnJlZHBhbmRhLmFwaS5jb25zb2xlLnYxYWxwaGExLlBheWxvYWRFbmNvZGluZ0gBiAEBEh0KFWlnbm9yZV9tYXhfc2l6ZV9saW1pdBgMIAEoCBISCgpwYWdlX3Rva2VuGA0gASgJEh0KCXBhZ2Vfc2l6ZRgOIAEoBUIKukgHGgUYkE4oAUITChFfa2V5X2Rlc2VyaWFsaXplckIVChNfdmFsdWVfZGVzZXJpYWxpemVyItkIChRMaXN0TWVzc2FnZXNSZXNwb25zZRJPCgRkYXRhGAEgASgLMj8ucmVkcGFuZGEuYXBpLmNvbnNvbGUudjFhbHBoYTEuTGlzdE1lc3NhZ2VzUmVzcG9uc2UuRGF0YU1lc3NhZ2VIABJRCgVwaGFzZRgCIAEoCzJALnJlZHBhbmRhLmFwaS5jb25zb2xlLnYxYWxwaGExLkxpc3RNZXNzYWdlc1Jlc3BvbnNlLlBoYXNlTWVzc2FnZUgAElcKCHByb2dyZXNzGAMgASgLMkMucmVkcGFuZGEuYXBpLmNvbnNvbGUudjFhbHBoYTEuTGlzdE1lc3NhZ2VzUmVzcG9uc2UuUHJvZ3Jlc3NNZXNzYWdlSAASWgoEZG9uZRgEIAEoCzJKLnJlZHBhbmRhLmFwaS5jb25zb2xlLnYxYWxwaGExLkxpc3RNZXNzYWdlc1Jlc3BvbnNlLlN0cmVhbUNvbXBsZXRlZE1lc3NhZ2VIABJRCgVlcnJvchgFIAEoCzJALnJlZHBhbmRhLmFwaS5jb25zb2xlLnYxYWxwaGExLkxpc3RNZXNzYWdlc1Jlc3BvbnNlLkVycm9yTWVzc2FnZUgAGuoCCgtEYXRhTWVzc2FnZRIUCgxwYXJ0aXRpb25faWQYASABKAUSDgoGb2Zmc2V0GAIgASgDEhEKCXRpbWVzdGFtcBgDIAEoAxJDCgtjb21wcmVzc2lvbhgEIAEoDjIuLnJlZHBhbmRhLmFwaS5jb25zb2xlLnYxYWxwaGExLkNvbXByZXNzaW9uVHlwZRIYChBpc190cmFuc2FjdGlvbmFsGAUgASgIEkEKB2hlYWRlcnMYBiADKAsyMC5yZWRwYW5kYS5hcGkuY29uc29sZS52MWFscGhhMS5LYWZrYVJlY29yZEhlYWRlchI+CgNrZXkYByABKAsyMS5yZWRwYW5kYS5hcGkuY29uc29sZS52MWFscGhhMS5LYWZrYVJlY29yZFBheWxvYWQSQAoFdmFsdWUYCCABKAsyMS5yZWRwYW5kYS5hcGkuY29uc29sZS52MWFscGhhMS5LYWZrYVJlY29yZFBheWxvYWQaHQoMUGhhc2VNZXNzYWdlEg0KBXBoYXNlGAEgASgJGkQKD1Byb2dyZXNzTWVzc2FnZRIZChFtZXNzYWdlc19jb25zdW1lZBgBIAEoAxIWCg5ieXRlc19jb25zdW1lZBgCIAEoAxqOAQoWU3RyZWFtQ29tcGxldGVkTWVzc2FnZRISCgplbGFwc2VkX21zGAEgASgDEhQKDGlzX2NhbmNlbGxlZBgCIAEoCBIZChFtZXNzYWdlc19jb25zdW1lZBgDIAEoAxIWCg5ieXRlc19jb25zdW1lZBgEIAEoAxIXCg9uZXh0X3BhZ2VfdG9rZW4YBSABKAkaHwoMRXJyb3JNZXNzYWdlEg8KB21lc3NhZ2UYASABKAlCEQoPY29udHJvbF9tZXNzYWdlIuwCChJLYWZrYVJlY29yZFBheWxvYWQSHQoQb3JpZ2luYWxfcGF5bG9hZBgBIAEoDEgAiAEBEh8KEm5vcm1hbGl6ZWRfcGF5bG9hZBgCIAEoDEgBiAEBEkAKCGVuY29kaW5nGAMgASgOMi4ucmVkcGFuZGEuYXBpLmNvbnNvbGUudjFhbHBoYTEuUGF5bG9hZEVuY29kaW5nEhYKCXNjaGVtYV9pZBgEIAEoBUgCiAEBEhQKDHBheWxvYWRfc2l6ZRgFIAEoBRIcChRpc19wYXlsb2FkX3Rvb19sYXJnZRgGIAEoCBJOChN0cm91Ymxlc2hvb3RfcmVwb3J0GAcgAygLMjEucmVkcGFuZGEuYXBpLmNvbnNvbGUudjFhbHBoYTEuVHJvdWJsZXNob290UmVwb3J0QhMKEV9vcmlnaW5hbF9wYXlsb2FkQhUKE19ub3JtYWxpemVkX3BheWxvYWRCDAoKX3NjaGVtYV9pZGIGcHJvdG8z", [file_buf_validate_validate, file_redpanda_api_console_v1alpha1_common]); + fileDesc("CjFyZWRwYW5kYS9hcGkvY29uc29sZS92MWFscGhhMS9saXN0X21lc3NhZ2VzLnByb3RvEh1yZWRwYW5kYS5hcGkuY29uc29sZS52MWFscGhhMSLOBAoTTGlzdE1lc3NhZ2VzUmVxdWVzdBItCgV0b3BpYxgBIAEoCUIeukgbchkQARj5ATISXlthLXpBLVowLTkuX1wtXSokEiMKDHN0YXJ0X29mZnNldBgCIAEoEkINukgKQggwATADMAUwBxIXCg9zdGFydF90aW1lc3RhbXAYAyABKAMSJgoMcGFydGl0aW9uX2lkGAQgASgFQhC6SA0aCyj///////////8BEhMKC21heF9yZXN1bHRzGAUgASgFEh8KF2ZpbHRlcl9pbnRlcnByZXRlcl9jb2RlGAYgASgJEhIKCmVudGVycHJpc2UYByABKAwSFAoMdHJvdWJsZXNob290GAggASgIEiQKHGluY2x1ZGVfb3JpZ2luYWxfcmF3X3BheWxvYWQYCSABKAgSTQoQa2V5X2Rlc2VyaWFsaXplchgKIAEoDjIuLnJlZHBhbmRhLmFwaS5jb25zb2xlLnYxYWxwaGExLlBheWxvYWRFbmNvZGluZ0gAiAEBEk8KEnZhbHVlX2Rlc2VyaWFsaXplchgLIAEoDjIuLnJlZHBhbmRhLmFwaS5jb25zb2xlLnYxYWxwaGExLlBheWxvYWRFbmNvZGluZ0gBiAEBEh0KFWlnbm9yZV9tYXhfc2l6ZV9saW1pdBgMIAEoCBISCgpwYWdlX3Rva2VuGA0gASgJEh0KCXBhZ2Vfc2l6ZRgOIAEoBUIKukgHGgUY9AMoAUITChFfa2V5X2Rlc2VyaWFsaXplckIVChNfdmFsdWVfZGVzZXJpYWxpemVyItkIChRMaXN0TWVzc2FnZXNSZXNwb25zZRJPCgRkYXRhGAEgASgLMj8ucmVkcGFuZGEuYXBpLmNvbnNvbGUudjFhbHBoYTEuTGlzdE1lc3NhZ2VzUmVzcG9uc2UuRGF0YU1lc3NhZ2VIABJRCgVwaGFzZRgCIAEoCzJALnJlZHBhbmRhLmFwaS5jb25zb2xlLnYxYWxwaGExLkxpc3RNZXNzYWdlc1Jlc3BvbnNlLlBoYXNlTWVzc2FnZUgAElcKCHByb2dyZXNzGAMgASgLMkMucmVkcGFuZGEuYXBpLmNvbnNvbGUudjFhbHBoYTEuTGlzdE1lc3NhZ2VzUmVzcG9uc2UuUHJvZ3Jlc3NNZXNzYWdlSAASWgoEZG9uZRgEIAEoCzJKLnJlZHBhbmRhLmFwaS5jb25zb2xlLnYxYWxwaGExLkxpc3RNZXNzYWdlc1Jlc3BvbnNlLlN0cmVhbUNvbXBsZXRlZE1lc3NhZ2VIABJRCgVlcnJvchgFIAEoCzJALnJlZHBhbmRhLmFwaS5jb25zb2xlLnYxYWxwaGExLkxpc3RNZXNzYWdlc1Jlc3BvbnNlLkVycm9yTWVzc2FnZUgAGuoCCgtEYXRhTWVzc2FnZRIUCgxwYXJ0aXRpb25faWQYASABKAUSDgoGb2Zmc2V0GAIgASgDEhEKCXRpbWVzdGFtcBgDIAEoAxJDCgtjb21wcmVzc2lvbhgEIAEoDjIuLnJlZHBhbmRhLmFwaS5jb25zb2xlLnYxYWxwaGExLkNvbXByZXNzaW9uVHlwZRIYChBpc190cmFuc2FjdGlvbmFsGAUgASgIEkEKB2hlYWRlcnMYBiADKAsyMC5yZWRwYW5kYS5hcGkuY29uc29sZS52MWFscGhhMS5LYWZrYVJlY29yZEhlYWRlchI+CgNrZXkYByABKAsyMS5yZWRwYW5kYS5hcGkuY29uc29sZS52MWFscGhhMS5LYWZrYVJlY29yZFBheWxvYWQSQAoFdmFsdWUYCCABKAsyMS5yZWRwYW5kYS5hcGkuY29uc29sZS52MWFscGhhMS5LYWZrYVJlY29yZFBheWxvYWQaHQoMUGhhc2VNZXNzYWdlEg0KBXBoYXNlGAEgASgJGkQKD1Byb2dyZXNzTWVzc2FnZRIZChFtZXNzYWdlc19jb25zdW1lZBgBIAEoAxIWCg5ieXRlc19jb25zdW1lZBgCIAEoAxqOAQoWU3RyZWFtQ29tcGxldGVkTWVzc2FnZRISCgplbGFwc2VkX21zGAEgASgDEhQKDGlzX2NhbmNlbGxlZBgCIAEoCBIZChFtZXNzYWdlc19jb25zdW1lZBgDIAEoAxIWCg5ieXRlc19jb25zdW1lZBgEIAEoAxIXCg9uZXh0X3BhZ2VfdG9rZW4YBSABKAkaHwoMRXJyb3JNZXNzYWdlEg8KB21lc3NhZ2UYASABKAlCEQoPY29udHJvbF9tZXNzYWdlIuwCChJLYWZrYVJlY29yZFBheWxvYWQSHQoQb3JpZ2luYWxfcGF5bG9hZBgBIAEoDEgAiAEBEh8KEm5vcm1hbGl6ZWRfcGF5bG9hZBgCIAEoDEgBiAEBEkAKCGVuY29kaW5nGAMgASgOMi4ucmVkcGFuZGEuYXBpLmNvbnNvbGUudjFhbHBoYTEuUGF5bG9hZEVuY29kaW5nEhYKCXNjaGVtYV9pZBgEIAEoBUgCiAEBEhQKDHBheWxvYWRfc2l6ZRgFIAEoBRIcChRpc19wYXlsb2FkX3Rvb19sYXJnZRgGIAEoCBJOChN0cm91Ymxlc2hvb3RfcmVwb3J0GAcgAygLMjEucmVkcGFuZGEuYXBpLmNvbnNvbGUudjFhbHBoYTEuVHJvdWJsZXNob290UmVwb3J0QhMKEV9vcmlnaW5hbF9wYXlsb2FkQhUKE19ub3JtYWxpemVkX3BheWxvYWRCDAoKX3NjaGVtYV9pZGIGcHJvdG8z", [file_buf_validate_validate, file_redpanda_api_console_v1alpha1_common]); /** * ListMessagesRequest is the request for ListMessages call. diff --git a/frontend/src/protogen/redpanda/api/dataplane/v1/mcp_pb.ts b/frontend/src/protogen/redpanda/api/dataplane/v1/mcp_pb.ts index 8407de9551..587978d703 100644 --- a/frontend/src/protogen/redpanda/api/dataplane/v1/mcp_pb.ts +++ b/frontend/src/protogen/redpanda/api/dataplane/v1/mcp_pb.ts @@ -14,6 +14,7 @@ import { file_protoc_gen_openapiv2_options_annotations } from "../../../../proto import { file_redpanda_api_auth_v1_authorization } from "../../auth/v1/authorization_pb"; import type { LintHint } from "../../common/v1/linthint_pb"; import { file_redpanda_api_common_v1_linthint } from "../../common/v1/linthint_pb"; +import { file_redpanda_api_common_v1_options } from "../../common/v1/options_pb"; import type { Pipeline_Resources } from "./pipeline_pb"; import { file_redpanda_api_dataplane_v1_pipeline } from "./pipeline_pb"; import type { Message } from "@bufbuild/protobuf"; @@ -22,7 +23,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file redpanda/api/dataplane/v1/mcp.proto. */ export const file_redpanda_api_dataplane_v1_mcp: GenFile = /*@__PURE__*/ - fileDesc("CiNyZWRwYW5kYS9hcGkvZGF0YXBsYW5lL3YxL21jcC5wcm90bxIZcmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MSLKDQoJTUNQU2VydmVyEioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQSOgoMZGlzcGxheV9uYW1lGAIgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAyABKAlCCLpIBXIDGIACErkBCgV0b29scxgEIAMoCzIvLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVyLlRvb2xzRW50cnlCeZJBaDJmTWFwIG9mIHRvb2wgbmFtZXMgdG8gdGhlaXIgY29uZmlndXJhdGlvbnMuIEVhY2ggdG9vbCBkZWZpbmVzIGEgY2FwYWJpbGl0eSB0aGF0IHRoZSBNQ1Agc2VydmVyIGV4cG9zZXMu4EECukgIyAEBmgECCAES/AEKCXJlc291cmNlcxgFIAEoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUuUmVzb3VyY2VzQrkBkkG1ATKyAVRoZSByZXF1ZXN0ZWQgYW1vdW50IG9mIHJlc291cmNlcyBmb3IgdGhlIE1DUCBzZXJ2ZXIuIERlcGVuZGluZyBvbiB0aGUgYmFja2VuZCwgdGhlIHJlc291cmNlcyBtaWdodCBiZSBndWFyYW50ZWVkLCBvciBtaWdodCBiZSB0d2Vha2VkIGJhc2VkIG9uIHRoZSB1dGlsaXphdGlvbiBvZiB0aGUgTUNQIHNlcnZlci4SawoEdGFncxgGIAMoCzIuLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVyLlRhZ3NFbnRyeUItukgqmgEnEBAqI3IhMh9eKFtccHtMfVxwe1p9XHB7Tn1fLjovPStcLUBdKikkEj4KBXN0YXRlGAcgASgOMioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIuU3RhdGVCA+BBAxJACgZzdGF0dXMYCCABKAsyKy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLk1DUFNlcnZlci5TdGF0dXNCA+BBAxIQCgN1cmwYCSABKAlCA+BBAxJXCg9zZXJ2aWNlX2FjY291bnQYCiABKAsyMy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLk1DUFNlcnZlci5TZXJ2aWNlQWNjb3VudEIJ4EECukgDyAEBGqYCCgRUb29sElsKDmNvbXBvbmVudF90eXBlGAEgASgOMjcucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIuVG9vbC5Db21wb25lbnRUeXBlQgq6SAeCAQQQASAAEiIKC2NvbmZpZ195YW1sGAIgASgJQg3gQQK6SAfIAQFyAhABIpwBCg1Db21wb25lbnRUeXBlEh4KGkNPTVBPTkVOVF9UWVBFX1VOU1BFQ0lGSUVEEAASHAoYQ09NUE9ORU5UX1RZUEVfUFJPQ0VTU09SEAESGAoUQ09NUE9ORU5UX1RZUEVfQ0FDSEUQAhIYChRDT01QT05FTlRfVFlQRV9JTlBVVBADEhkKFUNPTVBPTkVOVF9UWVBFX09VVFBVVBAEGlcKClRvb2xzRW50cnkSCwoDa2V5GAEgASgJEjgKBXZhbHVlGAIgASgLMikucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIuVG9vbDoCOAEaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaFwoGU3RhdHVzEg0KBWVycm9yGAEgASgJGpYBCg5TZXJ2aWNlQWNjb3VudBIcCgljbGllbnRfaWQYASABKAlCCeBBArpIA8gBARJmCg1jbGllbnRfc2VjcmV0GAIgASgJQk/gQQK6SEnIAQFyRDJCXlwkXHtzZWNyZXRzXC5bQS1aYS16X11bQS1aYS16MC05X10qKFwuW0EtWmEtel9dW0EtWmEtejAtOV9dKik/XH0kIn0KBVN0YXRlEhUKEVNUQVRFX1VOU1BFQ0lGSUVEEAASEgoOU1RBVEVfU1RBUlRJTkcQARIRCg1TVEFURV9SVU5OSU5HEAISEgoOU1RBVEVfU1RPUFBJTkcQAxIRCg1TVEFURV9TVE9QUEVEEAQSDwoLU1RBVEVfRVJST1IQBTpB6kE+CiNyZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxL01DUFNlcnZlcioLbWNwX3NlcnZlcnMyCm1jcF9zZXJ2ZXIipAYKD01DUFNlcnZlckNyZWF0ZRI6CgxkaXNwbGF5X25hbWUYASABKAlCJOBBArpIHsgBAXIZEAMYgAEyEl5bQS1aYS16MC05LV8gL10rJBIdCgtkZXNjcmlwdGlvbhgCIAEoCUIIukgFcgMYgAIS2AEKBXRvb2xzGAMgAygLMjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXJDcmVhdGUuVG9vbHNFbnRyeUKRAZJBaDJmTWFwIG9mIHRvb2wgbmFtZXMgdG8gdGhlaXIgY29uZmlndXJhdGlvbnMuIEVhY2ggdG9vbCBkZWZpbmVzIGEgY2FwYWJpbGl0eSB0aGF0IHRoZSBNQ1Agc2VydmVyIGV4cG9zZXMu4EECukggyAEBmgEaCAEiFnIUGEAyEF5bQS1aYS16MC05Xy1dKyQSQAoJcmVzb3VyY2VzGAQgASgLMi0ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5SZXNvdXJjZXMScQoEdGFncxgFIAMoCzI0LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVyQ3JlYXRlLlRhZ3NFbnRyeUItukgqmgEnEBAqI3IhMh9eKFtccHtMfVxwe1p9XHB7Tn1fLjovPStcLUBdKikkElcKD3NlcnZpY2VfYWNjb3VudBgGIAEoCzIzLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVyLlNlcnZpY2VBY2NvdW50QgngQQK6SAPIAQEaVwoKVG9vbHNFbnRyeRILCgNrZXkYASABKAkSOAoFdmFsdWUYAiABKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLk1DUFNlcnZlci5Ub29sOgI4ARorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ATpH6kFECilyZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxL01DUFNlcnZlckNyZWF0ZSoLbWNwX3NlcnZlcnMyCm1jcF9zZXJ2ZXIiWAoWQ3JlYXRlTUNQU2VydmVyUmVxdWVzdBI+CgptY3Bfc2VydmVyGAEgASgLMioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXJDcmVhdGUiUwoXQ3JlYXRlTUNQU2VydmVyUmVzcG9uc2USOAoKbWNwX3NlcnZlchgBIAEoCzIkLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVyIkEKE0dldE1DUFNlcnZlclJlcXVlc3QSKgoCaWQYASABKAlCHuBBArpIGMgBAXITMhFeW0EtWmEtejAtOS1fL10rJCJQChRHZXRNQ1BTZXJ2ZXJSZXNwb25zZRI4CgptY3Bfc2VydmVyGAEgASgLMiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIi5AUKFUxpc3RNQ1BTZXJ2ZXJzUmVxdWVzdBJHCgZmaWx0ZXIYASABKAsyNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpc3RNQ1BTZXJ2ZXJzUmVxdWVzdC5GaWx0ZXISngEKCXBhZ2Vfc2l6ZRgCIAEoBUKKAZJBdTJhTGltaXQgdGhlIHBhZ2luYXRlZCByZXNwb25zZSB0byBhIG51bWJlciBvZiBpdGVtcy4gRGVmYXVsdHMgdG8gMTAwLiBVc2UgLTEgdG8gZGlzYWJsZSBwYWdpbmF0aW9uLlkAAAAAAABJQGkAAAAAAADwv7pIDxoNGDIo////////////ARISCgpwYWdlX3Rva2VuGAMgASgJGswDCgZGaWx0ZXISdgoVZGlzcGxheV9uYW1lX2NvbnRhaW5zGAEgASgJQleSQTUyM1JldHVybnMgTUNQIHNlcnZlcnMgdGhhdCBwYXJ0aWFsbHkgbWF0Y2ggdGhpcyBuYW1lLrpIHNgBAXIXGIABMhJeW0EtWmEtejAtOS1fIC9dKyQS7AEKBHRhZ3MYAiADKAsyQS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpc3RNQ1BTZXJ2ZXJzUmVxdWVzdC5GaWx0ZXIuVGFnc0VudHJ5QpoBkkFqMmhGaWx0ZXJzIGJ5IHRhZ3MgdXNpbmcgZXhhY3QgbWF0Y2guIFJldHVybnMgb25seSBNQ1Agc2VydmVycyB0aGF0IGhhdmUgYWxsIHRoZSBzcGVjaWZpZWQga2V5LXZhbHVlIHBhaXJzLrpIKpoBJxAQKiNyITIfXihbXHB7TH1ccHtafVxwe059Xy46Lz0rXC1AXSopJBIuCglzZWNyZXRfaWQYAyABKAlCG7pIGNgBAXITMhFeW0EtWl1bQS1aMC05X10qJBorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJsChZMaXN0TUNQU2VydmVyc1Jlc3BvbnNlEjkKC21jcF9zZXJ2ZXJzGAEgAygLMiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXISFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJIosGCg9NQ1BTZXJ2ZXJVcGRhdGUSNAoMZGlzcGxheV9uYW1lGAEgASgJQh66SBtyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAiABKAlCCLpIBXIDGIACEtABCgV0b29scxgDIAMoCzI1LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVyVXBkYXRlLlRvb2xzRW50cnlCiQGSQWgyZk1hcCBvZiB0b29sIG5hbWVzIHRvIHRoZWlyIGNvbmZpZ3VyYXRpb25zLiBFYWNoIHRvb2wgZGVmaW5lcyBhIGNhcGFiaWxpdHkgdGhhdCB0aGUgTUNQIHNlcnZlciBleHBvc2VzLrpIG5oBGCIWchQYQDIQXltBLVphLXowLTlfLV0rJBJACglyZXNvdXJjZXMYBCABKAsyLS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lLlJlc291cmNlcxJxCgR0YWdzGAUgAygLMjQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXJVcGRhdGUuVGFnc0VudHJ5Qi26SCqaAScQECojciEyH14oW1xwe0x9XHB7Wn1ccHtOfV8uOi89K1wtQF0qKSQSTAoPc2VydmljZV9hY2NvdW50GAYgASgLMjMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIuU2VydmljZUFjY291bnQaVwoKVG9vbHNFbnRyeRILCgNrZXkYASABKAkSOAoFdmFsdWUYAiABKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLk1DUFNlcnZlci5Ub29sOgI4ARorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ATpH6kFECilyZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxL01DUFNlcnZlclVwZGF0ZSoLbWNwX3NlcnZlcnMyCm1jcF9zZXJ2ZXIiwAEKFlVwZGF0ZU1DUFNlcnZlclJlcXVlc3QSKgoCaWQYASABKAlCHuBBArpIGMgBAXITMhFeW0EtWmEtejAtOS1fL10rJBJJCgptY3Bfc2VydmVyGAIgASgLMioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXJVcGRhdGVCCeBBArpIA8gBARIvCgt1cGRhdGVfbWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siUwoXVXBkYXRlTUNQU2VydmVyUmVzcG9uc2USOAoKbWNwX3NlcnZlchgBIAEoCzIkLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVyIkQKFkRlbGV0ZU1DUFNlcnZlclJlcXVlc3QSKgoCaWQYASABKAlCHuBBArpIGMgBAXITMhFeW0EtWmEtejAtOS1fL10rJCIZChdEZWxldGVNQ1BTZXJ2ZXJSZXNwb25zZSJCChRTdG9wTUNQU2VydmVyUmVxdWVzdBIqCgJpZBgBIAEoCUIe4EECukgYyAEBchMyEV5bQS1aYS16MC05LV8vXSskIlEKFVN0b3BNQ1BTZXJ2ZXJSZXNwb25zZRI4CgptY3Bfc2VydmVyGAEgASgLMiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIiQwoVU3RhcnRNQ1BTZXJ2ZXJSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiUgoWU3RhcnRNQ1BTZXJ2ZXJSZXNwb25zZRI4CgptY3Bfc2VydmVyGAEgASgLMiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIiKAomR2V0TUNQU2VydmVyU2VydmljZUNvbmZpZ1NjaGVtYVJlcXVlc3Qi4gIKJ0dldE1DUFNlcnZlclNlcnZpY2VDb25maWdTY2hlbWFSZXNwb25zZRKyAQoTY29uZmlndXJhdGlvbl95YW1scxgBIAMoCzJaLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuR2V0TUNQU2VydmVyU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNlLkNvbmZpZ3VyYXRpb25ZQU1MU2NoZW1hQjmSQS4yLFRoZSBjb25maWd1cmF0aW9uIHNjaGVtYSBmb3IgdGhlIE1DUCBzZXJ2ZXIuukgFkgECCAEagQEKF0NvbmZpZ3VyYXRpb25ZQU1MU2NoZW1hEk8KDmNvbXBvbmVudF90eXBlGAEgASgOMjcucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIuVG9vbC5Db21wb25lbnRUeXBlEhUKDWNvbmZpZ19zY2hlbWEYAiABKAkixQEKFExpbnRNQ1BDb25maWdSZXF1ZXN0ElQKBXRvb2xzGAEgAygLMjoucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5MaW50TUNQQ29uZmlnUmVxdWVzdC5Ub29sc0VudHJ5QgngQQK6SAPIAQEaVwoKVG9vbHNFbnRyeRILCgNrZXkYASABKAkSOAoFdmFsdWUYAiABKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLk1DUFNlcnZlci5Ub29sOgI4ASLAAQoVTGludE1DUENvbmZpZ1Jlc3BvbnNlElMKCmxpbnRfaGludHMYASADKAsyPy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpbnRNQ1BDb25maWdSZXNwb25zZS5MaW50SGludHNFbnRyeRpSCg5MaW50SGludHNFbnRyeRILCgNrZXkYASABKAkSLwoFdmFsdWUYAiABKAsyIC5yZWRwYW5kYS5hcGkuY29tbW9uLnYxLkxpbnRIaW50OgI4ATLOGQoQTUNQU2VydmVyU2VydmljZRKeAgoPQ3JlYXRlTUNQU2VydmVyEjEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5DcmVhdGVNQ1BTZXJ2ZXJSZXF1ZXN0GjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5DcmVhdGVNQ1BTZXJ2ZXJSZXNwb25zZSKjAZJBZBIRQ3JlYXRlIE1DUCBzZXJ2ZXIaGENyZWF0ZSBhIG5ldyBNQ1Agc2VydmVyLko1CgMyMDESLgoCT0sSKAomGiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXKKph0ECAIQB4LT5JMCLjoKbWNwX3NlcnZlciIgL3YxL3JlZHBhbmRhLWNvbm5lY3QvbWNwLXNlcnZlcnMSugIKDEdldE1DUFNlcnZlchIuLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuR2V0TUNQU2VydmVyUmVxdWVzdBovLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuR2V0TUNQU2VydmVyUmVzcG9uc2UiyAGSQY8BEg5HZXQgTUNQIHNlcnZlchoaR2V0IGEgc3BlY2lmaWMgTUNQIHNlcnZlci5KNQoDMjAwEi4KAk9LEigKJhokLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVySioKAzQwNBIjCglOb3QgRm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXOKph0ECAEQB4LT5JMCJxIlL3YxL3JlZHBhbmRhLWNvbm5lY3QvbWNwLXNlcnZlcnMve2lkfRLNAgoOTGlzdE1DUFNlcnZlcnMSMC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpc3RNQ1BTZXJ2ZXJzUmVxdWVzdBoxLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTGlzdE1DUFNlcnZlcnNSZXNwb25zZSLVAZJBoQESEExpc3QgTUNQIHNlcnZlcnMaSUxpc3RzIE1DUCBzZXJ2ZXJzLiBPcHRpb25hbGx5IGZpbHRlciBieSBkaXNwbGF5IG5hbWUsIHRhZ3MsIG9yIHNlY3JldCBJRC5KQgoDMjAwEjsKAk9LEjUKMxoxLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTGlzdE1DUFNlcnZlcnNSZXNwb25zZYqmHQQIARAHgtPkkwIiEiAvdjEvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVycxK4AgoPVXBkYXRlTUNQU2VydmVyEjEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5VcGRhdGVNQ1BTZXJ2ZXJSZXF1ZXN0GjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5VcGRhdGVNQ1BTZXJ2ZXJSZXNwb25zZSK9AZJBeRIUVXBkYXRlIGFuIE1DUCBzZXJ2ZXIaKlVwZGF0ZSB0aGUgY29uZmlndXJhdGlvbiBvZiBhbiBNQ1Agc2VydmVyLko1CgMyMDASLgoCT0sSKAomGiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXKKph0ECAIQB4LT5JMCMzoKbWNwX3NlcnZlcholL3YxL3JlZHBhbmRhLWNvbm5lY3QvbWNwLXNlcnZlcnMve2lkfRKgAgoPRGVsZXRlTUNQU2VydmVyEjEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5EZWxldGVNQ1BTZXJ2ZXJSZXF1ZXN0GjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5EZWxldGVNQ1BTZXJ2ZXJSZXNwb25zZSKlAZJBbRIURGVsZXRlIGFuIE1DUCBzZXJ2ZXIaFURlbGV0ZSBhbiBNQ1Agc2VydmVyLkoSCgMyMDQSCwoHRGVsZXRlZBIASioKAzQwNBIjCglOb3QgRm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXOKph0ECAIQB4LT5JMCJyolL3YxL3JlZHBhbmRhLWNvbm5lY3QvbWNwLXNlcnZlcnMve2lkfRLLAgoNU3RvcE1DUFNlcnZlchIvLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuU3RvcE1DUFNlcnZlclJlcXVlc3QaMC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlN0b3BNQ1BTZXJ2ZXJSZXNwb25zZSLWAZJBmAESElN0b3AgYW4gTUNQIHNlcnZlchoaU3RvcCBhIHJ1bm5pbmcgTUNQIHNlcnZlci5KOgoDMjAwEjMKB1N0b3BwZWQSKAomGiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXJKKgoDNDA0EiMKCU5vdCBGb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c4qmHQQIAhAHgtPkkwIsIiovdjEvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVycy97aWR9OnN0b3AS0QIKDlN0YXJ0TUNQU2VydmVyEjAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5TdGFydE1DUFNlcnZlclJlcXVlc3QaMS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlN0YXJ0TUNQU2VydmVyUmVzcG9uc2Ui2QGSQZoBEhNTdGFydCBhbiBNQ1Agc2VydmVyGhtTdGFydCBhIHN0b3BwZWQgTUNQIHNlcnZlci5KOgoDMjAwEjMKB1N0YXJ0ZWQSKAomGiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXJKKgoDNDA0EiMKCU5vdCBGb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c4qmHQQIAhAHgtPkkwItIisvdjEvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVycy97aWR9OnN0YXJ0EtADCh9HZXRNQ1BTZXJ2ZXJTZXJ2aWNlQ29uZmlnU2NoZW1hEkEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5HZXRNQ1BTZXJ2ZXJTZXJ2aWNlQ29uZmlnU2NoZW1hUmVxdWVzdBpCLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuR2V0TUNQU2VydmVyU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNlIqUCkkHhARIjR2V0IE1DUCBzZXJ2ZXIgY29uZmlndXJhdGlvbiBzY2hlbWEaZVJldHVybnMgdGhlIGNvbmZpZ3VyYXRpb24gc2NoZW1hIGZvciBNQ1Agc2VydmVyIHRvb2xzLCBpbmNsdWRpbmcgYXZhaWxhYmxlIGNvbXBvbmVudHMgYW5kIHByb2Nlc3NvcnMuSlMKAzIwMBJMCgJPSxJGCkQaQi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkdldE1DUFNlcnZlclNlcnZpY2VDb25maWdTY2hlbWFSZXNwb25zZYqmHQQIARAHgtPkkwIyEjAvdjEvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVyczpnZXRDb25maWdTY2hlbWES7gMKDUxpbnRNQ1BDb25maWcSLy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpbnRNQ1BDb25maWdSZXF1ZXN0GjAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5MaW50TUNQQ29uZmlnUmVzcG9uc2Ui+QKSQbYCEh5MaW50IGEgTUNQIHRvb2xzIGNvbmZpZ3VyYXRpb24aowFWYWxpZGF0ZXMgYSBnaXZlbiBNQ1AgdG9vbCdzIGNvbmZpZ3VyYXRpb24gYW5kIHJldHVybnMgbGludGluZyBoaW50cy4gRWFjaCB0b29sJ3MgWUFNTCBjb25maWd1cmF0aW9uIGlzIHZhbGlkYXRlZC4gSWYgbm8gcHJvYmxlbXMgYXJlIGZvdW5kLCB0aGUgcmVzcG9uc2UgaXMgZW1wdHkuSm4KAzIwMBJnCi9MaW50aW5nIGZpbmlzaGVkLiBTZWUgYGxpbnRfaGludHNgIGZvciBkZXRhaWxzLhI0CjIaMC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpbnRNQ1BDb25maWdSZXNwb25zZYqmHQQIARAEgtPkkwIxOgEqIiwvdjEvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVyczpsaW50LWNvbmZpZxpIkkFFCgpSZW1vdGUgTUNQEjdDcmVhdGUgYW5kIG1hbmFnZSBNQ1Agc2VydmVycyBhbmQgdGhlaXIgY29uZmlndXJhdGlvbnMuYgZwcm90bzM", [file_buf_validate_validate, file_google_api_annotations, file_google_api_field_behavior, file_google_api_resource, file_google_protobuf_field_mask, file_protoc_gen_openapiv2_options_annotations, file_redpanda_api_auth_v1_authorization, file_redpanda_api_common_v1_linthint, file_redpanda_api_dataplane_v1_pipeline]); + fileDesc("CiNyZWRwYW5kYS9hcGkvZGF0YXBsYW5lL3YxL21jcC5wcm90bxIZcmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MSLKDQoJTUNQU2VydmVyEioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQSOgoMZGlzcGxheV9uYW1lGAIgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAyABKAlCCLpIBXIDGIACErkBCgV0b29scxgEIAMoCzIvLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVyLlRvb2xzRW50cnlCeZJBaDJmTWFwIG9mIHRvb2wgbmFtZXMgdG8gdGhlaXIgY29uZmlndXJhdGlvbnMuIEVhY2ggdG9vbCBkZWZpbmVzIGEgY2FwYWJpbGl0eSB0aGF0IHRoZSBNQ1Agc2VydmVyIGV4cG9zZXMu4EECukgIyAEBmgECCAES/AEKCXJlc291cmNlcxgFIAEoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUuUmVzb3VyY2VzQrkBkkG1ATKyAVRoZSByZXF1ZXN0ZWQgYW1vdW50IG9mIHJlc291cmNlcyBmb3IgdGhlIE1DUCBzZXJ2ZXIuIERlcGVuZGluZyBvbiB0aGUgYmFja2VuZCwgdGhlIHJlc291cmNlcyBtaWdodCBiZSBndWFyYW50ZWVkLCBvciBtaWdodCBiZSB0d2Vha2VkIGJhc2VkIG9uIHRoZSB1dGlsaXphdGlvbiBvZiB0aGUgTUNQIHNlcnZlci4SawoEdGFncxgGIAMoCzIuLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVyLlRhZ3NFbnRyeUItukgqmgEnEBAqI3IhMh9eKFtccHtMfVxwe1p9XHB7Tn1fLjovPStcLUBdKikkEj4KBXN0YXRlGAcgASgOMioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIuU3RhdGVCA+BBAxJACgZzdGF0dXMYCCABKAsyKy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLk1DUFNlcnZlci5TdGF0dXNCA+BBAxIQCgN1cmwYCSABKAlCA+BBAxJXCg9zZXJ2aWNlX2FjY291bnQYCiABKAsyMy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLk1DUFNlcnZlci5TZXJ2aWNlQWNjb3VudEIJ4EECukgDyAEBGqYCCgRUb29sElsKDmNvbXBvbmVudF90eXBlGAEgASgOMjcucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIuVG9vbC5Db21wb25lbnRUeXBlQgq6SAeCAQQQASAAEiIKC2NvbmZpZ195YW1sGAIgASgJQg3gQQK6SAfIAQFyAhABIpwBCg1Db21wb25lbnRUeXBlEh4KGkNPTVBPTkVOVF9UWVBFX1VOU1BFQ0lGSUVEEAASHAoYQ09NUE9ORU5UX1RZUEVfUFJPQ0VTU09SEAESGAoUQ09NUE9ORU5UX1RZUEVfQ0FDSEUQAhIYChRDT01QT05FTlRfVFlQRV9JTlBVVBADEhkKFUNPTVBPTkVOVF9UWVBFX09VVFBVVBAEGlcKClRvb2xzRW50cnkSCwoDa2V5GAEgASgJEjgKBXZhbHVlGAIgASgLMikucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIuVG9vbDoCOAEaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaFwoGU3RhdHVzEg0KBWVycm9yGAEgASgJGpYBCg5TZXJ2aWNlQWNjb3VudBIcCgljbGllbnRfaWQYASABKAlCCeBBArpIA8gBARJmCg1jbGllbnRfc2VjcmV0GAIgASgJQk/gQQK6SEnIAQFyRDJCXlwkXHtzZWNyZXRzXC5bQS1aYS16X11bQS1aYS16MC05X10qKFwuW0EtWmEtel9dW0EtWmEtejAtOV9dKik/XH0kIn0KBVN0YXRlEhUKEVNUQVRFX1VOU1BFQ0lGSUVEEAASEgoOU1RBVEVfU1RBUlRJTkcQARIRCg1TVEFURV9SVU5OSU5HEAISEgoOU1RBVEVfU1RPUFBJTkcQAxIRCg1TVEFURV9TVE9QUEVEEAQSDwoLU1RBVEVfRVJST1IQBTpB6kE+CiNyZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxL01DUFNlcnZlcioLbWNwX3NlcnZlcnMyCm1jcF9zZXJ2ZXIipAYKD01DUFNlcnZlckNyZWF0ZRI6CgxkaXNwbGF5X25hbWUYASABKAlCJOBBArpIHsgBAXIZEAMYgAEyEl5bQS1aYS16MC05LV8gL10rJBIdCgtkZXNjcmlwdGlvbhgCIAEoCUIIukgFcgMYgAIS2AEKBXRvb2xzGAMgAygLMjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXJDcmVhdGUuVG9vbHNFbnRyeUKRAZJBaDJmTWFwIG9mIHRvb2wgbmFtZXMgdG8gdGhlaXIgY29uZmlndXJhdGlvbnMuIEVhY2ggdG9vbCBkZWZpbmVzIGEgY2FwYWJpbGl0eSB0aGF0IHRoZSBNQ1Agc2VydmVyIGV4cG9zZXMu4EECukggyAEBmgEaCAEiFnIUGEAyEF5bQS1aYS16MC05Xy1dKyQSQAoJcmVzb3VyY2VzGAQgASgLMi0ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5SZXNvdXJjZXMScQoEdGFncxgFIAMoCzI0LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVyQ3JlYXRlLlRhZ3NFbnRyeUItukgqmgEnEBAqI3IhMh9eKFtccHtMfVxwe1p9XHB7Tn1fLjovPStcLUBdKikkElcKD3NlcnZpY2VfYWNjb3VudBgGIAEoCzIzLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVyLlNlcnZpY2VBY2NvdW50QgngQQK6SAPIAQEaVwoKVG9vbHNFbnRyeRILCgNrZXkYASABKAkSOAoFdmFsdWUYAiABKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLk1DUFNlcnZlci5Ub29sOgI4ARorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ATpH6kFECilyZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxL01DUFNlcnZlckNyZWF0ZSoLbWNwX3NlcnZlcnMyCm1jcF9zZXJ2ZXIiWAoWQ3JlYXRlTUNQU2VydmVyUmVxdWVzdBI+CgptY3Bfc2VydmVyGAEgASgLMioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXJDcmVhdGUiUwoXQ3JlYXRlTUNQU2VydmVyUmVzcG9uc2USOAoKbWNwX3NlcnZlchgBIAEoCzIkLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVyIkEKE0dldE1DUFNlcnZlclJlcXVlc3QSKgoCaWQYASABKAlCHuBBArpIGMgBAXITMhFeW0EtWmEtejAtOS1fL10rJCJQChRHZXRNQ1BTZXJ2ZXJSZXNwb25zZRI4CgptY3Bfc2VydmVyGAEgASgLMiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIi5AUKFUxpc3RNQ1BTZXJ2ZXJzUmVxdWVzdBJHCgZmaWx0ZXIYASABKAsyNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpc3RNQ1BTZXJ2ZXJzUmVxdWVzdC5GaWx0ZXISngEKCXBhZ2Vfc2l6ZRgCIAEoBUKKAZJBdTJhTGltaXQgdGhlIHBhZ2luYXRlZCByZXNwb25zZSB0byBhIG51bWJlciBvZiBpdGVtcy4gRGVmYXVsdHMgdG8gMTAwLiBVc2UgLTEgdG8gZGlzYWJsZSBwYWdpbmF0aW9uLlkAAAAAAABJQGkAAAAAAADwv7pIDxoNGDIo////////////ARISCgpwYWdlX3Rva2VuGAMgASgJGswDCgZGaWx0ZXISdgoVZGlzcGxheV9uYW1lX2NvbnRhaW5zGAEgASgJQleSQTUyM1JldHVybnMgTUNQIHNlcnZlcnMgdGhhdCBwYXJ0aWFsbHkgbWF0Y2ggdGhpcyBuYW1lLrpIHNgBAXIXGIABMhJeW0EtWmEtejAtOS1fIC9dKyQS7AEKBHRhZ3MYAiADKAsyQS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpc3RNQ1BTZXJ2ZXJzUmVxdWVzdC5GaWx0ZXIuVGFnc0VudHJ5QpoBkkFqMmhGaWx0ZXJzIGJ5IHRhZ3MgdXNpbmcgZXhhY3QgbWF0Y2guIFJldHVybnMgb25seSBNQ1Agc2VydmVycyB0aGF0IGhhdmUgYWxsIHRoZSBzcGVjaWZpZWQga2V5LXZhbHVlIHBhaXJzLrpIKpoBJxAQKiNyITIfXihbXHB7TH1ccHtafVxwe059Xy46Lz0rXC1AXSopJBIuCglzZWNyZXRfaWQYAyABKAlCG7pIGNgBAXITMhFeW0EtWl1bQS1aMC05X10qJBorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJsChZMaXN0TUNQU2VydmVyc1Jlc3BvbnNlEjkKC21jcF9zZXJ2ZXJzGAEgAygLMiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXISFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJIosGCg9NQ1BTZXJ2ZXJVcGRhdGUSNAoMZGlzcGxheV9uYW1lGAEgASgJQh66SBtyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAiABKAlCCLpIBXIDGIACEtABCgV0b29scxgDIAMoCzI1LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVyVXBkYXRlLlRvb2xzRW50cnlCiQGSQWgyZk1hcCBvZiB0b29sIG5hbWVzIHRvIHRoZWlyIGNvbmZpZ3VyYXRpb25zLiBFYWNoIHRvb2wgZGVmaW5lcyBhIGNhcGFiaWxpdHkgdGhhdCB0aGUgTUNQIHNlcnZlciBleHBvc2VzLrpIG5oBGCIWchQYQDIQXltBLVphLXowLTlfLV0rJBJACglyZXNvdXJjZXMYBCABKAsyLS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lLlJlc291cmNlcxJxCgR0YWdzGAUgAygLMjQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXJVcGRhdGUuVGFnc0VudHJ5Qi26SCqaAScQECojciEyH14oW1xwe0x9XHB7Wn1ccHtOfV8uOi89K1wtQF0qKSQSTAoPc2VydmljZV9hY2NvdW50GAYgASgLMjMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIuU2VydmljZUFjY291bnQaVwoKVG9vbHNFbnRyeRILCgNrZXkYASABKAkSOAoFdmFsdWUYAiABKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLk1DUFNlcnZlci5Ub29sOgI4ARorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ATpH6kFECilyZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxL01DUFNlcnZlclVwZGF0ZSoLbWNwX3NlcnZlcnMyCm1jcF9zZXJ2ZXIiwAEKFlVwZGF0ZU1DUFNlcnZlclJlcXVlc3QSKgoCaWQYASABKAlCHuBBArpIGMgBAXITMhFeW0EtWmEtejAtOS1fL10rJBJJCgptY3Bfc2VydmVyGAIgASgLMioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXJVcGRhdGVCCeBBArpIA8gBARIvCgt1cGRhdGVfbWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siUwoXVXBkYXRlTUNQU2VydmVyUmVzcG9uc2USOAoKbWNwX3NlcnZlchgBIAEoCzIkLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVyIkQKFkRlbGV0ZU1DUFNlcnZlclJlcXVlc3QSKgoCaWQYASABKAlCHuBBArpIGMgBAXITMhFeW0EtWmEtejAtOS1fL10rJCIZChdEZWxldGVNQ1BTZXJ2ZXJSZXNwb25zZSJCChRTdG9wTUNQU2VydmVyUmVxdWVzdBIqCgJpZBgBIAEoCUIe4EECukgYyAEBchMyEV5bQS1aYS16MC05LV8vXSskIlEKFVN0b3BNQ1BTZXJ2ZXJSZXNwb25zZRI4CgptY3Bfc2VydmVyGAEgASgLMiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIiQwoVU3RhcnRNQ1BTZXJ2ZXJSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiUgoWU3RhcnRNQ1BTZXJ2ZXJSZXNwb25zZRI4CgptY3Bfc2VydmVyGAEgASgLMiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIiKAomR2V0TUNQU2VydmVyU2VydmljZUNvbmZpZ1NjaGVtYVJlcXVlc3Qi4gIKJ0dldE1DUFNlcnZlclNlcnZpY2VDb25maWdTY2hlbWFSZXNwb25zZRKyAQoTY29uZmlndXJhdGlvbl95YW1scxgBIAMoCzJaLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuR2V0TUNQU2VydmVyU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNlLkNvbmZpZ3VyYXRpb25ZQU1MU2NoZW1hQjmSQS4yLFRoZSBjb25maWd1cmF0aW9uIHNjaGVtYSBmb3IgdGhlIE1DUCBzZXJ2ZXIuukgFkgECCAEagQEKF0NvbmZpZ3VyYXRpb25ZQU1MU2NoZW1hEk8KDmNvbXBvbmVudF90eXBlGAEgASgOMjcucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXIuVG9vbC5Db21wb25lbnRUeXBlEhUKDWNvbmZpZ19zY2hlbWEYAiABKAkixQEKFExpbnRNQ1BDb25maWdSZXF1ZXN0ElQKBXRvb2xzGAEgAygLMjoucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5MaW50TUNQQ29uZmlnUmVxdWVzdC5Ub29sc0VudHJ5QgngQQK6SAPIAQEaVwoKVG9vbHNFbnRyeRILCgNrZXkYASABKAkSOAoFdmFsdWUYAiABKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLk1DUFNlcnZlci5Ub29sOgI4ASLAAQoVTGludE1DUENvbmZpZ1Jlc3BvbnNlElMKCmxpbnRfaGludHMYASADKAsyPy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpbnRNQ1BDb25maWdSZXNwb25zZS5MaW50SGludHNFbnRyeRpSCg5MaW50SGludHNFbnRyeRILCgNrZXkYASABKAkSLwoFdmFsdWUYAiABKAsyIC5yZWRwYW5kYS5hcGkuY29tbW9uLnYxLkxpbnRIaW50OgI4ATKsHQoQTUNQU2VydmVyU2VydmljZRLKAgoPQ3JlYXRlTUNQU2VydmVyEjEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5DcmVhdGVNQ1BTZXJ2ZXJSZXF1ZXN0GjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5DcmVhdGVNQ1BTZXJ2ZXJSZXNwb25zZSLPAZJBZBIRQ3JlYXRlIE1DUCBzZXJ2ZXIaGENyZWF0ZSBhIG5ldyBNQ1Agc2VydmVyLko1CgMyMDESLgoCT0sSKAomGiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXLavwcoCgptY3BzZXJ2ZXJzGhpkYXRhcGxhbmVfbWNwc2VydmVyX2NyZWF0ZYqmHQQIAhAHgtPkkwIuOgptY3Bfc2VydmVyIiAvdjEvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVycxLvAgoMR2V0TUNQU2VydmVyEi4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5HZXRNQ1BTZXJ2ZXJSZXF1ZXN0Gi8ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5HZXRNQ1BTZXJ2ZXJSZXNwb25zZSL9AZJBjwESDkdldCBNQ1Agc2VydmVyGhpHZXQgYSBzcGVjaWZpYyBNQ1Agc2VydmVyLko1CgMyMDASLgoCT0sSKAomGiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5NQ1BTZXJ2ZXJKKgoDNDA0EiMKCU5vdCBGb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c9q/BzEKCm1jcHNlcnZlcnMSCnJlcXVlc3QuaWQaF2RhdGFwbGFuZV9tY3BzZXJ2ZXJfZ2V0iqYdBAgBEAeC0+STAicSJS92MS9yZWRwYW5kYS1jb25uZWN0L21jcC1zZXJ2ZXJzL3tpZH0SmAMKDkxpc3RNQ1BTZXJ2ZXJzEjAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5MaXN0TUNQU2VydmVyc1JlcXVlc3QaMS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpc3RNQ1BTZXJ2ZXJzUmVzcG9uc2UioAKSQaEBEhBMaXN0IE1DUCBzZXJ2ZXJzGklMaXN0cyBNQ1Agc2VydmVycy4gT3B0aW9uYWxseSBmaWx0ZXIgYnkgZGlzcGxheSBuYW1lLCB0YWdzLCBvciBzZWNyZXQgSUQuSkIKAzIwMBI7CgJPSxI1CjMaMS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpc3RNQ1BTZXJ2ZXJzUmVzcG9uc2XivwdHChRyZXNwb25zZS5tY3Bfc2VydmVycxIvCgptY3BzZXJ2ZXJzEgdlYWNoLmlkGhhkYXRhcGxhbmVfbWNwc2VydmVyX2xpc3SKph0ECAEQB4LT5JMCIhIgL3YxL3JlZHBhbmRhLWNvbm5lY3QvbWNwLXNlcnZlcnMS8AIKD1VwZGF0ZU1DUFNlcnZlchIxLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuVXBkYXRlTUNQU2VydmVyUmVxdWVzdBoyLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuVXBkYXRlTUNQU2VydmVyUmVzcG9uc2Ui9QGSQXkSFFVwZGF0ZSBhbiBNQ1Agc2VydmVyGipVcGRhdGUgdGhlIGNvbmZpZ3VyYXRpb24gb2YgYW4gTUNQIHNlcnZlci5KNQoDMjAwEi4KAk9LEigKJhokLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVy2r8HNAoKbWNwc2VydmVycxIKcmVxdWVzdC5pZBoaZGF0YXBsYW5lX21jcHNlcnZlcl91cGRhdGWKph0ECAIQB4LT5JMCMzoKbWNwX3NlcnZlcholL3YxL3JlZHBhbmRhLWNvbm5lY3QvbWNwLXNlcnZlcnMve2lkfRLYAgoPRGVsZXRlTUNQU2VydmVyEjEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5EZWxldGVNQ1BTZXJ2ZXJSZXF1ZXN0GjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5EZWxldGVNQ1BTZXJ2ZXJSZXNwb25zZSLdAZJBbRIURGVsZXRlIGFuIE1DUCBzZXJ2ZXIaFURlbGV0ZSBhbiBNQ1Agc2VydmVyLkoSCgMyMDQSCwoHRGVsZXRlZBIASioKAzQwNBIjCglOb3QgRm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXPavwc0CgptY3BzZXJ2ZXJzEgpyZXF1ZXN0LmlkGhpkYXRhcGxhbmVfbWNwc2VydmVyX2RlbGV0ZYqmHQQIAhAHgtPkkwInKiUvdjEvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVycy97aWR9EoMDCg1TdG9wTUNQU2VydmVyEi8ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5TdG9wTUNQU2VydmVyUmVxdWVzdBowLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuU3RvcE1DUFNlcnZlclJlc3BvbnNlIo4CkkGYARISU3RvcCBhbiBNQ1Agc2VydmVyGhpTdG9wIGEgcnVubmluZyBNQ1Agc2VydmVyLko6CgMyMDASMwoHU3RvcHBlZBIoCiYaJC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLk1DUFNlcnZlckoqCgM0MDQSIwoJTm90IEZvdW5kEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVz2r8HNAoKbWNwc2VydmVycxIKcmVxdWVzdC5pZBoaZGF0YXBsYW5lX21jcHNlcnZlcl9kZWxldGWKph0ECAIQB4LT5JMCLCIqL3YxL3JlZHBhbmRhLWNvbm5lY3QvbWNwLXNlcnZlcnMve2lkfTpzdG9wEokDCg5TdGFydE1DUFNlcnZlchIwLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuU3RhcnRNQ1BTZXJ2ZXJSZXF1ZXN0GjEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5TdGFydE1DUFNlcnZlclJlc3BvbnNlIpECkkGaARITU3RhcnQgYW4gTUNQIHNlcnZlchobU3RhcnQgYSBzdG9wcGVkIE1DUCBzZXJ2ZXIuSjoKAzIwMBIzCgdTdGFydGVkEigKJhokLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTUNQU2VydmVySioKAzQwNBIjCglOb3QgRm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXPavwc0CgptY3BzZXJ2ZXJzEgpyZXF1ZXN0LmlkGhpkYXRhcGxhbmVfbWNwc2VydmVyX2NyZWF0ZYqmHQQIAhAHgtPkkwItIisvdjEvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVycy97aWR9OnN0YXJ0EvkDCh9HZXRNQ1BTZXJ2ZXJTZXJ2aWNlQ29uZmlnU2NoZW1hEkEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5HZXRNQ1BTZXJ2ZXJTZXJ2aWNlQ29uZmlnU2NoZW1hUmVxdWVzdBpCLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuR2V0TUNQU2VydmVyU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNlIs4CkkHhARIjR2V0IE1DUCBzZXJ2ZXIgY29uZmlndXJhdGlvbiBzY2hlbWEaZVJldHVybnMgdGhlIGNvbmZpZ3VyYXRpb24gc2NoZW1hIGZvciBNQ1Agc2VydmVyIHRvb2xzLCBpbmNsdWRpbmcgYXZhaWxhYmxlIGNvbXBvbmVudHMgYW5kIHByb2Nlc3NvcnMuSlMKAzIwMBJMCgJPSxJGCkQaQi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkdldE1DUFNlcnZlclNlcnZpY2VDb25maWdTY2hlbWFSZXNwb25zZdq/ByUKCm1jcHNlcnZlcnMaF2RhdGFwbGFuZV9tY3BzZXJ2ZXJfZ2V0iqYdBAgBEAeC0+STAjISMC92MS9yZWRwYW5kYS1jb25uZWN0L21jcC1zZXJ2ZXJzOmdldENvbmZpZ1NjaGVtYRKXBAoNTGludE1DUENvbmZpZxIvLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTGludE1DUENvbmZpZ1JlcXVlc3QaMC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpbnRNQ1BDb25maWdSZXNwb25zZSKiA5JBtgISHkxpbnQgYSBNQ1AgdG9vbHMgY29uZmlndXJhdGlvbhqjAVZhbGlkYXRlcyBhIGdpdmVuIE1DUCB0b29sJ3MgY29uZmlndXJhdGlvbiBhbmQgcmV0dXJucyBsaW50aW5nIGhpbnRzLiBFYWNoIHRvb2wncyBZQU1MIGNvbmZpZ3VyYXRpb24gaXMgdmFsaWRhdGVkLiBJZiBubyBwcm9ibGVtcyBhcmUgZm91bmQsIHRoZSByZXNwb25zZSBpcyBlbXB0eS5KbgoDMjAwEmcKL0xpbnRpbmcgZmluaXNoZWQuIFNlZSBgbGludF9oaW50c2AgZm9yIGRldGFpbHMuEjQKMhowLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTGludE1DUENvbmZpZ1Jlc3BvbnNl2r8HJQoKbWNwc2VydmVycxoXZGF0YXBsYW5lX21jcHNlcnZlcl9nZXSKph0ECAEQBILT5JMCMToBKiIsL3YxL3JlZHBhbmRhLWNvbm5lY3QvbWNwLXNlcnZlcnM6bGludC1jb25maWcaSJJBRQoKUmVtb3RlIE1DUBI3Q3JlYXRlIGFuZCBtYW5hZ2UgTUNQIHNlcnZlcnMgYW5kIHRoZWlyIGNvbmZpZ3VyYXRpb25zLmIGcHJvdG8z", [file_buf_validate_validate, file_google_api_annotations, file_google_api_field_behavior, file_google_api_resource, file_google_protobuf_field_mask, file_protoc_gen_openapiv2_options_annotations, file_redpanda_api_auth_v1_authorization, file_redpanda_api_common_v1_linthint, file_redpanda_api_common_v1_options, file_redpanda_api_dataplane_v1_pipeline]); /** * Defines the MCP server resource. diff --git a/frontend/src/protogen/redpanda/api/dataplane/v1/pipeline_pb.ts b/frontend/src/protogen/redpanda/api/dataplane/v1/pipeline_pb.ts index 2433d4a680..208725f6ca 100644 --- a/frontend/src/protogen/redpanda/api/dataplane/v1/pipeline_pb.ts +++ b/frontend/src/protogen/redpanda/api/dataplane/v1/pipeline_pb.ts @@ -14,13 +14,14 @@ import { file_protoc_gen_openapiv2_options_annotations } from "../../../../proto import { file_redpanda_api_auth_v1_authorization } from "../../auth/v1/authorization_pb"; import type { LintHint } from "../../common/v1/linthint_pb"; import { file_redpanda_api_common_v1_linthint } from "../../common/v1/linthint_pb"; +import { file_redpanda_api_common_v1_options } from "../../common/v1/options_pb"; import type { Message } from "@bufbuild/protobuf"; /** * Describes the file redpanda/api/dataplane/v1/pipeline.proto. */ export const file_redpanda_api_dataplane_v1_pipeline: GenFile = /*@__PURE__*/ - fileDesc("CihyZWRwYW5kYS9hcGkvZGF0YXBsYW5lL3YxL3BpcGVsaW5lLnByb3RvEhlyZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxIt0LCghQaXBlbGluZRIqCgJpZBgBIAEoCUIe4EECukgYyAEBchMyEV5bQS1aYS16MC05LV8vXSskEjoKDGRpc3BsYXlfbmFtZRgCIAEoCUIk4EECukgeyAEBchkQAxiAATISXltBLVphLXowLTktXyAvXSskEh0KC2Rlc2NyaXB0aW9uGAMgASgJQgi6SAVyAxiAAhL4AQoLY29uZmlnX3lhbWwYBCABKAlC4gGSQdUBMtIBVGhlIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUgY29uZmlndXJhdGlvbiBpbiBZQU1MIGZvcm1hdC4gU2VlIHRoZSBbUmVkcGFuZGEgQ29ubmVjdCBDb25maWd1cmF0aW9uXShodHRwczovL2RvY3MucmVkcGFuZGEuY29tL3JlZHBhbmRhLWNsb3VkL2RldmVsb3AvY29ubmVjdC9jb25maWd1cmF0aW9uL2Fib3V0KSBkb2N1bWVudGF0aW9uIGZvciBtb3JlIGRldGFpbHMu4EECukgDyAEBEvgBCglyZXNvdXJjZXMYCSABKAsyLS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lLlJlc291cmNlc0K1AZJBsQEyrgFUaGUgcmVxdWVzdGVkIGFtb3VudCBvZiByZXNvdXJjZXMgZm9yIHRoZSBwaXBlbGluZS4gRGVwZW5kaW5nIG9uIHRoZSBiYWNrZW5kLCB0aGUgcmVzb3VyY2VzIG1pZ2h0IGJlIGd1YXJhbnRlZWQsIG9yIG1pZ2h0IGJlIHR3ZWFrZWQgYmFzZWQgb24gdGhlIHV0aWxpemF0aW9uIG9mIHRoZSBwaXBlbGluZS4SPQoFc3RhdGUYByABKA4yKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lLlN0YXRlQgPgQQMSPwoGc3RhdHVzGAggASgLMioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5TdGF0dXNCA+BBAxILCgN1cmwYCiABKAkSagoEdGFncxgLIAMoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUuVGFnc0VudHJ5Qi26SCqaAScQECojciEyH14oW1xwe0x9XHB7Wn1ccHtOfV8uOi89K1wtQF0qKSQSUAoPc2VydmljZV9hY2NvdW50GAwgASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5TZXJ2aWNlQWNjb3VudEID4EEBGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBGkwKCVJlc291cmNlcxIgCg1tZW1vcnlfc2hhcmVzGAEgASgJQgngQQK6SAPIAQESHQoKY3B1X3NoYXJlcxgCIAEoCUIJ4EECukgDyAEBGhcKBlN0YXR1cxINCgVlcnJvchgCIAEoCRqFAQoOU2VydmljZUFjY291bnQSEQoJY2xpZW50X2lkGAEgASgJEmAKDWNsaWVudF9zZWNyZXQYAiABKAlCSbpIRnJEMkJeXCRce3NlY3JldHNcLltBLVphLXpfXVtBLVphLXowLTlfXSooXC5bQS1aYS16X11bQS1aYS16MC05X10qKT9cfSQikgEKBVN0YXRlEhUKEVNUQVRFX1VOU1BFQ0lGSUVEEAASEgoOU1RBVEVfU1RBUlRJTkcQARIRCg1TVEFURV9SVU5OSU5HEAISEgoOU1RBVEVfU1RPUFBJTkcQAxIRCg1TVEFURV9TVE9QUEVEEAQSDwoLU1RBVEVfRVJST1IQBRITCg9TVEFURV9DT01QTEVURUQQBjo86kE5CiJyZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxL1BpcGVsaW5lKglwaXBlbGluZXMyCHBpcGVsaW5lSgQIBRAGSgQIBhAHUgdyZXF1ZXN0UgVsaW1pdCKeBAoOUGlwZWxpbmVDcmVhdGUSOgoMZGlzcGxheV9uYW1lGAEgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAiABKAlCCLpIBXIDGIACEh4KC2NvbmZpZ195YW1sGAMgASgJQgngQQK6SAPIAQESQAoJcmVzb3VyY2VzGAYgASgLMi0ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5SZXNvdXJjZXMScAoEdGFncxgHIAMoCzIzLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmVDcmVhdGUuVGFnc0VudHJ5Qi26SCqaAScQECojciEyH14oW1xwe0x9XHB7Wn1ccHtOfV8uOi89K1wtQF0qKSQSUAoPc2VydmljZV9hY2NvdW50GAggASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5TZXJ2aWNlQWNjb3VudEID4EEBGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBOkLqQT8KKHJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEvUGlwZWxpbmVDcmVhdGUqCXBpcGVsaW5lczIIcGlwZWxpbmVKBAgEEAVKBAgFEAZSB3JlcXVlc3RSBWxpbWl0IlQKFUNyZWF0ZVBpcGVsaW5lUmVxdWVzdBI7CghwaXBlbGluZRgBIAEoCzIpLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmVDcmVhdGUiTwoWQ3JlYXRlUGlwZWxpbmVSZXNwb25zZRI1CghwaXBlbGluZRgBIAEoCzIjLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUiQAoSR2V0UGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiTAoTR2V0UGlwZWxpbmVSZXNwb25zZRI1CghwaXBlbGluZRgBIAEoCzIjLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUimwUKFExpc3RQaXBlbGluZXNSZXF1ZXN0EkYKBmZpbHRlchgBIAEoCzI2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTGlzdFBpcGVsaW5lc1JlcXVlc3QuRmlsdGVyEp8BCglwYWdlX3NpemUYAiABKAVCiwGSQXUyYUxpbWl0IHRoZSBwYWdpbmF0ZWQgcmVzcG9uc2UgdG8gYSBudW1iZXIgb2YgaXRlbXMuIERlZmF1bHRzIHRvIDEwMC4gVXNlIC0xIHRvIGRpc2FibGUgcGFnaW5hdGlvbi5ZAAAAAABAj0BpAAAAAAAA8L+6SBAaDhjoByj///////////8BEhIKCnBhZ2VfdG9rZW4YAyABKAkahAMKBkZpbHRlchJ5Cg1uYW1lX2NvbnRhaW5zGAEgASgJQmKSQUAyPkFueSBwaXBlbGluZXMgdGhhdCBwYXJ0aWFsbHkgbWF0Y2ggdGhpcyBuYW1lIHdpbGwgYmUgcmV0dXJuZWQuukgc2AEBchcYgAEyEl5bQS1aYS16MC05LV8gL10rJBK+AQoEdGFncxgCIAMoCzJALnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTGlzdFBpcGVsaW5lc1JlcXVlc3QuRmlsdGVyLlRhZ3NFbnRyeUJukkE+MjxQaXBlbGluZXMgdGhhdCBtYXRjaCBhbGwgdGhlIHByb3ZpZGVkIHRhZ3Mgd2lsbCBiZSByZXR1cm5lZC66SCqaAScQECojciEyH14oW1xwe0x9XHB7Wn1ccHtOfV8uOi89K1wtQF0qKSQSEQoJc2VjcmV0X2lkGAMgASgJGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBImgKFUxpc3RQaXBlbGluZXNSZXNwb25zZRI2CglwaXBlbGluZXMYASADKAsyIy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lEhcKD25leHRfcGFnZV90b2tlbhgCIAEoCSKhBAoOUGlwZWxpbmVVcGRhdGUSOgoMZGlzcGxheV9uYW1lGAEgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSIAoLZGVzY3JpcHRpb24YAiABKAlCC7pICNgBAXIDGIACEh4KC2NvbmZpZ195YW1sGAMgASgJQgngQQK6SAPIAQESQAoJcmVzb3VyY2VzGAYgASgLMi0ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5SZXNvdXJjZXMScAoEdGFncxgHIAMoCzIzLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmVVcGRhdGUuVGFnc0VudHJ5Qi26SCqaAScQECojciEyH14oW1xwe0x9XHB7Wn1ccHtOfV8uOi89K1wtQF0qKSQSUAoPc2VydmljZV9hY2NvdW50GAggASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5TZXJ2aWNlQWNjb3VudEID4EEBGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBOkLqQT8KKHJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEvUGlwZWxpbmVVcGRhdGUqCXBpcGVsaW5lczIIcGlwZWxpbmVKBAgEEAVKBAgFEAZSB3JlcXVlc3RSBWxpbWl0IrwBChVVcGRhdGVQaXBlbGluZVJlcXVlc3QSKgoCaWQYASABKAlCHuBBArpIGMgBAXITMhFeW0EtWmEtejAtOS1fL10rJBJGCghwaXBlbGluZRgCIAEoCzIpLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmVVcGRhdGVCCeBBArpIA8gBARIvCgt1cGRhdGVfbWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siTwoWVXBkYXRlUGlwZWxpbmVSZXNwb25zZRI1CghwaXBlbGluZRgBIAEoCzIjLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUiQwoVRGVsZXRlUGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiGAoWRGVsZXRlUGlwZWxpbmVSZXNwb25zZSJBChNTdG9wUGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiTQoUU3RvcFBpcGVsaW5lUmVzcG9uc2USNQoIcGlwZWxpbmUYASABKAsyIy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lIkIKFFN0YXJ0UGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiTgoVU3RhcnRQaXBlbGluZVJlc3BvbnNlEjUKCHBpcGVsaW5lGAEgASgLMiMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZSInCiVHZXRQaXBlbGluZVNlcnZpY2VDb25maWdTY2hlbWFSZXF1ZXN0Ij8KJkdldFBpcGVsaW5lU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNlEhUKDWNvbmZpZ19zY2hlbWEYASABKAkiRgoVTGlzdENvbXBvbmVudHNSZXF1ZXN0Ei0KCXJlYWRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siVgoWTGlzdENvbXBvbmVudHNSZXNwb25zZRI8Cgpjb21wb25lbnRzGAEgASgLMigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5Db21wb25lbnRMaXN0IpAHCg1Db21wb25lbnRMaXN0Es8BCgd2ZXJzaW9uGAEgASgJQr0Buki5AXK2ATKzAV4oMHxbMS05XVxkKilcLigwfFsxLTldXGQqKVwuKDB8WzEtOV1cZCopKD86LSgoPzowfFsxLTldXGQqfFxkKlthLXpBLVotXVswLTlhLXpBLVotXSopKD86XC4oPzowfFsxLTldXGQqfFxkKlthLXpBLVotXVswLTlhLXpBLVotXSopKSopKT8oPzpcKyhbMC05YS16QS1aLV0rKD86XC5bMC05YS16QS1aLV0rKSopKT8kEjkKB2J1ZmZlcnMYAiADKAsyKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkNvbXBvbmVudFNwZWMSOAoGY2FjaGVzGAMgAygLMigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5Db21wb25lbnRTcGVjEjgKBmlucHV0cxgEIAMoCzIoLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuQ29tcG9uZW50U3BlYxI5CgdvdXRwdXRzGAUgAygLMigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5Db21wb25lbnRTcGVjEjwKCnByb2Nlc3NvcnMYBiADKAsyKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkNvbXBvbmVudFNwZWMSPQoLcmF0ZV9saW1pdHMYByADKAsyKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkNvbXBvbmVudFNwZWMSOQoHbWV0cmljcxgIIAMoCzIoLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuQ29tcG9uZW50U3BlYxI5Cgd0cmFjZXJzGAkgAygLMigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5Db21wb25lbnRTcGVjEjoKCHNjYW5uZXJzGAogAygLMigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5Db21wb25lbnRTcGVjEksKEmJsb2JsYW5nX2Z1bmN0aW9ucxgLIAMoCzIvLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuQmxvYmxhbmdGdW5jdGlvblNwZWMSRwoQYmxvYmxhbmdfbWV0aG9kcxgMIAMoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuQmxvYmxhbmdNZXRob2RTcGVjIs4DCg1Db21wb25lbnRTcGVjEgwKBG5hbWUYASABKAkSDAoEdHlwZRgCIAEoCRI6CgZzdGF0dXMYAyABKA4yKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkNvbXBvbmVudFN0YXR1cxIPCgdzdW1tYXJ5GAQgASgJEhMKC2Rlc2NyaXB0aW9uGAUgASgJEhIKCmNhdGVnb3JpZXMYBiADKAkSzwEKB3ZlcnNpb24YByABKAlCvQG6SLkBcrYBMrMBXigwfFsxLTldXGQqKVwuKDB8WzEtOV1cZCopXC4oMHxbMS05XVxkKikoPzotKCg/OjB8WzEtOV1cZCp8XGQqW2EtekEtWi1dWzAtOWEtekEtWi1dKikoPzpcLig/OjB8WzEtOV1cZCp8XGQqW2EtekEtWi1dWzAtOWEtekEtWi1dKikpKikpPyg/OlwrKFswLTlhLXpBLVotXSsoPzpcLlswLTlhLXpBLVotXSspKikpPyQSNAoGY29uZmlnGAggASgLMiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5GaWVsZFNwZWMSEAoIZXhhbXBsZXMYCSADKAkSEQoJZm9vdG5vdGVzGAogASgJIpIECglGaWVsZFNwZWMSDAoEbmFtZRgBIAEoCRIMCgR0eXBlGAIgASgJEgwKBGtpbmQYAyABKAkSEwoLZGVzY3JpcHRpb24YBCABKAkSEAoIYWR2YW5jZWQYBSABKAgSEgoKZGVwcmVjYXRlZBgGIAEoCBIQCghvcHRpb25hbBgHIAEoCBIVCg1kZWZhdWx0X3ZhbHVlGAggASgJEhAKCGV4YW1wbGVzGAkgAygJEjYKCGNoaWxkcmVuGAogAygLMiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5GaWVsZFNwZWMSRQoRYW5ub3RhdGVkX29wdGlvbnMYCyADKAsyKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkFubm90YXRlZE9wdGlvbhIUCgxpbnRlcnBvbGF0ZWQYDCADKAkSzwEKB3ZlcnNpb24YDSABKAlCvQG6SLkBcrYBMrMBXigwfFsxLTldXGQqKVwuKDB8WzEtOV1cZCopXC4oMHxbMS05XVxkKikoPzotKCg/OjB8WzEtOV1cZCp8XGQqW2EtekEtWi1dWzAtOWEtekEtWi1dKikoPzpcLig/OjB8WzEtOV1cZCp8XGQqW2EtekEtWi1dWzAtOWEtekEtWi1dKikpKikpPyg/OlwrKFswLTlhLXpBLVotXSsoPzpcLlswLTlhLXpBLVotXSspKikpPyQiNQoPQW5ub3RhdGVkT3B0aW9uEg0KBXZhbHVlGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJIvcCChRCbG9ibGFuZ0Z1bmN0aW9uU3BlYxIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEg4KBnN0YXR1cxgDIAEoCRISCgpjYXRlZ29yaWVzGAQgAygJEjQKBnBhcmFtcxgFIAEoCzIkLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGFyYW1TcGVjEhAKCGV4YW1wbGVzGAYgAygJEs8BCgd2ZXJzaW9uGAcgASgJQr0Buki5AXK2ATKzAV4oMHxbMS05XVxkKilcLigwfFsxLTldXGQqKVwuKDB8WzEtOV1cZCopKD86LSgoPzowfFsxLTldXGQqfFxkKlthLXpBLVotXVswLTlhLXpBLVotXSopKD86XC4oPzowfFsxLTldXGQqfFxkKlthLXpBLVotXVswLTlhLXpBLVotXSopKSopKT8oPzpcKyhbMC05YS16QS1aLV0rKD86XC5bMC05YS16QS1aLV0rKSopKT8kIvUCChJCbG9ibGFuZ01ldGhvZFNwZWMSDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIOCgZzdGF0dXMYAyABKAkSEgoKY2F0ZWdvcmllcxgEIAMoCRI0CgZwYXJhbXMYBSABKAsyJC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBhcmFtU3BlYxIQCghleGFtcGxlcxgGIAMoCRLPAQoHdmVyc2lvbhgHIAEoCUK9AbpIuQFytgEyswFeKDB8WzEtOV1cZCopXC4oMHxbMS05XVxkKilcLigwfFsxLTldXGQqKSg/Oi0oKD86MHxbMS05XVxkKnxcZCpbYS16QS1aLV1bMC05YS16QS1aLV0qKSg/OlwuKD86MHxbMS05XVxkKnxcZCpbYS16QS1aLV1bMC05YS16QS1aLV0qKSkqKSk/KD86XCsoWzAtOWEtekEtWi1dKyg/OlwuWzAtOWEtekEtWi1dKykqKSk/JCJMCglQYXJhbVNwZWMSPwoLZGVmaW5pdGlvbnMYASADKAsyKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBhcmFtRGVmaW5pdGlvbiJZCg9QYXJhbURlZmluaXRpb24SDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIMCgR0eXBlGAMgASgJEhUKDWRlZmF1bHRfdmFsdWUYBCABKAkiXwoSUGlwZWxpbmVzRm9yU2VjcmV0EhEKCXNlY3JldF9pZBgBIAEoCRI2CglwaXBlbGluZXMYAiADKAsyIy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lIlEKHEdldFBpcGVsaW5lc0ZvclNlY3JldFJlcXVlc3QSMQoJc2VjcmV0X2lkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVpdW0EtWjAtOV9dKiQibAodR2V0UGlwZWxpbmVzRm9yU2VjcmV0UmVzcG9uc2USSwoUcGlwZWxpbmVzX2Zvcl9zZWNyZXQYASABKAsyLS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lc0ZvclNlY3JldCIeChxHZXRQaXBlbGluZXNCeVNlY3JldHNSZXF1ZXN0ImwKHUdldFBpcGVsaW5lc0J5U2VjcmV0c1Jlc3BvbnNlEksKFHBpcGVsaW5lc19mb3Jfc2VjcmV0GAEgAygLMi0ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZXNGb3JTZWNyZXQiOwoZTGludFBpcGVsaW5lQ29uZmlnUmVxdWVzdBIeCgtjb25maWdfeWFtbBgBIAEoCUIJ4EECukgDyAEBIlIKGkxpbnRQaXBlbGluZUNvbmZpZ1Jlc3BvbnNlEjQKCmxpbnRfaGludHMYASADKAsyIC5yZWRwYW5kYS5hcGkuY29tbW9uLnYxLkxpbnRIaW50Kq8BCg9Db21wb25lbnRTdGF0dXMSIAocQ09NUE9ORU5UX1NUQVRVU19VTlNQRUNJRklFRBAAEhsKF0NPTVBPTkVOVF9TVEFUVVNfU1RBQkxFEAESGQoVQ09NUE9ORU5UX1NUQVRVU19CRVRBEAISIQodQ09NUE9ORU5UX1NUQVRVU19FWFBFUklNRU5UQUwQAxIfChtDT01QT05FTlRfU1RBVFVTX0RFUFJFQ0FURUQQBDKRJgoPUGlwZWxpbmVTZXJ2aWNlErUCCg5DcmVhdGVQaXBlbGluZRIwLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuQ3JlYXRlUGlwZWxpbmVSZXF1ZXN0GjEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5DcmVhdGVQaXBlbGluZVJlc3BvbnNlIr0BkkGBARIgQ3JlYXRlIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUaJ0NyZWF0ZSBhIG5ldyBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lLko0CgMyMDESLQoCT0sSJwolGiMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZYqmHQQIAhAEgtPkkwIqOghwaXBlbGluZSIeL3YxL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzEtICCgtHZXRQaXBlbGluZRItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuR2V0UGlwZWxpbmVSZXF1ZXN0Gi4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5HZXRQaXBlbGluZVJlc3BvbnNlIuMBkkGsARIdR2V0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUaKUdldCBhIHNwZWNpZmljIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUuSjQKAzIwMBItCgJPSxInCiUaIy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lSioKAzQwNBIjCglOb3QgRm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXOKph0ECAEQBILT5JMCJRIjL3YxL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzL3tpZH0S1gIKDUxpc3RQaXBlbGluZXMSLy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpc3RQaXBlbGluZXNSZXF1ZXN0GjAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5MaXN0UGlwZWxpbmVzUmVzcG9uc2Ui4QGSQa8BEh9MaXN0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzGklMaXN0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzLiBPcHRpb25hbDogZmlsdGVyIGJhc2VkIG9uIHBpcGVsaW5lIG5hbWUuSkEKAzIwMBI6CgJPSxI0CjIaMC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpc3RQaXBlbGluZXNSZXNwb25zZYqmHQQIARAEgtPkkwIgEh4vdjEvcmVkcGFuZGEtY29ubmVjdC9waXBlbGluZXMSngMKDlVwZGF0ZVBpcGVsaW5lEjAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5VcGRhdGVQaXBlbGluZVJlcXVlc3QaMS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlVwZGF0ZVBpcGVsaW5lUmVzcG9uc2UipgKSQeUBEiJVcGRhdGUgYSBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lGogBVXBkYXRlIHRoZSBbY29uZmlndXJhdGlvbl0oaHR0cHM6Ly9kb2NzLnJlZHBhbmRhLmNvbS9yZWRwYW5kYS1jbG91ZC9kZXZlbG9wL2Nvbm5lY3QvY29uZmlndXJhdGlvbi9hYm91dCkgb2YgYSBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lLko0CgMyMDASLQoCT0sSJwolGiMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZYqmHQQIAhAEgtPkkwIvOghwaXBlbGluZRojL3YxL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzL3tpZH0SuAIKDkRlbGV0ZVBpcGVsaW5lEjAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5EZWxldGVQaXBlbGluZVJlcXVlc3QaMS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkRlbGV0ZVBpcGVsaW5lUmVzcG9uc2UiwAGSQYkBEiJEZWxldGUgYSBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lGiNEZWxldGUgYSBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lLkoSCgMyMDQSCwoHRGVsZXRlZBIASioKAzQwNBIjCglOb3QgRm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXOKph0ECAIQBILT5JMCJSojL3YxL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzL3tpZH0S4wIKDFN0b3BQaXBlbGluZRIuLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuU3RvcFBpcGVsaW5lUmVxdWVzdBovLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuU3RvcFBpcGVsaW5lUmVzcG9uc2Ui8QGSQbUBEiFTdG9wcyBhIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUaKVN0b3AgYSBydW5uaW5nIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUuSjkKAzIwMBIyCgdTdG9wcGVkEicKJRojLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmVKKgoDNDA0EiMKCU5vdCBGb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c4qmHQQIAhAEgtPkkwIqGigvdjEvcmVkcGFuZGEtY29ubmVjdC9waXBlbGluZXMve2lkfS9zdG9wEugCCg1TdGFydFBpcGVsaW5lEi8ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5TdGFydFBpcGVsaW5lUmVxdWVzdBowLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuU3RhcnRQaXBlbGluZVJlc3BvbnNlIvMBkkG2ARIhU3RhcnQgYSBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lGipTdGFydCBhIHN0b3BwZWQgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZS5KOQoDMjAwEjIKB1N0YXJ0ZWQSJwolGiMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZUoqCgM0MDQSIwoJTm90IEZvdW5kEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVziqYdBAgCEASC0+STAisaKS92MS9yZWRwYW5kYS1jb25uZWN0L3BpcGVsaW5lcy97aWR9L3N0YXJ0EqwECh5HZXRQaXBlbGluZVNlcnZpY2VDb25maWdTY2hlbWESQC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkdldFBpcGVsaW5lU2VydmljZUNvbmZpZ1NjaGVtYVJlcXVlc3QaQS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkdldFBpcGVsaW5lU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNlIoQDkkHOAhJAUmV0cmlldmUgdGhlIHNjaGVtYSBmb3IgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZSBjb25maWd1cmF0aW9ucxq1AVRoZSBjb25maWd1cmF0aW9uIHNjaGVtYSBpbmNsdWRlcyBhdmFpbGFibGUgW2NvbXBvbmVudHMgYW5kIHByb2Nlc3NvcnNdKGh0dHBzOi8vZG9jcy5yZWRwYW5kYS5jb20vcmVkcGFuZGEtY2xvdWQvZGV2ZWxvcC9jb25uZWN0L2NvbXBvbmVudHMvYWJvdXQpIGluIHRoaXMgUmVkcGFuZGEgQ29ubmVjdCBpbnN0YW5jZS5KUgoDMjAwEksKAk9LEkUKQxpBLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuR2V0UGlwZWxpbmVTZXJ2aWNlQ29uZmlnU2NoZW1hUmVzcG9uc2WKph0ECAEQBILT5JMCJBIiL3YxL3JlZHBhbmRhLWNvbm5lY3QvY29uZmlnLXNjaGVtYRKyAwoOTGlzdENvbXBvbmVudHMSMC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpc3RDb21wb25lbnRzUmVxdWVzdBoxLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTGlzdENvbXBvbmVudHNSZXNwb25zZSK6ApJBhwISKVJldHJpZXZlIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBjb21wb25lbnRzGpUBUmV0dXJucyBhIEpTT04gbGlzdCBvZiBhdmFpbGFibGUgW2NvbXBvbmVudHNdKGh0dHBzOi8vZG9jcy5yZWRwYW5kYS5jb20vcmVkcGFuZGEtY2xvdWQvZGV2ZWxvcC9jb25uZWN0L2NvbXBvbmVudHMvYWJvdXQpLCBmaWx0ZXJlZCBieSBjb21wb25lbnQgdHlwZS5KQgoDMjAwEjsKAk9LEjUKMxoxLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTGlzdENvbXBvbmVudHNSZXNwb25zZYqmHQQIARAEgtPkkwIhEh8vdjEvcmVkcGFuZGEtY29ubmVjdC9jb21wb25lbnRzEvQCChVHZXRQaXBlbGluZXNGb3JTZWNyZXQSNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkdldFBpcGVsaW5lc0ZvclNlY3JldFJlcXVlc3QaOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkdldFBpcGVsaW5lc0ZvclNlY3JldFJlc3BvbnNlIucBkkGqARIpR2V0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzIGZvciBzZWNyZXQaMkdldCBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lcyBmb3IgYSBnaXZlbiBzZWNyZXQuSkkKAzIwMBJCCgJPSxI8CjoaOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkdldFBpcGVsaW5lc0ZvclNlY3JldFJlc3BvbnNliqYdBAgBEASC0+STAisSKS92MS9yZWRwYW5kYS1jb25uZWN0L3BpcGVsaW5lcy1mb3Itc2VjcmV0EuwCChVHZXRQaXBlbGluZXNCeVNlY3JldHMSNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkdldFBpcGVsaW5lc0J5U2VjcmV0c1JlcXVlc3QaOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkdldFBpcGVsaW5lc0J5U2VjcmV0c1Jlc3BvbnNlIt8BkkGiARIpR2V0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzIGJ5IHNlY3JldHMaKkdldCBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lcyBieSBzZWNyZXRzLkpJCgMyMDASQgoCT0sSPAo6GjgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5HZXRQaXBlbGluZXNCeVNlY3JldHNSZXNwb25zZYqmHQQIARAEgtPkkwIrEikvdjEvcmVkcGFuZGEtY29ubmVjdC9waXBlbGluZXMtYnktc2VjcmV0cxLyAwoSTGludFBpcGVsaW5lQ29uZmlnEjQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5MaW50UGlwZWxpbmVDb25maWdSZXF1ZXN0GjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5MaW50UGlwZWxpbmVDb25maWdSZXNwb25zZSLuApJBrQISLkxpbnQgYSBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lIGNvbmZpZ3VyYXRpb24ahQFWYWxpZGF0ZXMgYSBzdXBwbGllZCBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lIFlBTUwgYW5kIHJldHVybnMgYSBsaXN0IG9mIGxpbnRpbmcgaGludHMuIElmIG5vIHByb2JsZW1zIGFyZSBmb3VuZCwgdGhlIGxpc3QgaXMgZW1wdHkuSnMKAzIwMBJsCi9MaW50aW5nIGZpbmlzaGVkLiBTZWUgYGxpbnRfaGludHNgIGZvciBkZXRhaWxzLhI5CjcaNS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpbnRQaXBlbGluZUNvbmZpZ1Jlc3BvbnNliqYdBAgBEASC0+STAi86ASoiKi92MS9yZWRwYW5kYS1jb25uZWN0L3BpcGVsaW5lczpsaW50LWNvbmZpZxqrAZJBpwEKGlJlZHBhbmRhIENvbm5lY3QgUGlwZWxpbmVzEogBQ3JlYXRlIGFuZCBtYW5hZ2UgW1JlZHBhbmRhIENvbm5lY3RdKGh0dHBzOi8vZG9jcy5yZWRwYW5kYS5jb20vcmVkcGFuZGEtY2xvdWQvZGV2ZWxvcC9jb25uZWN0L2Fib3V0KSBwaXBlbGluZXMgYW5kIHRoZWlyIGNvbmZpZ3VyYXRpb25zLmIGcHJvdG8z", [file_buf_validate_validate, file_google_api_annotations, file_google_api_field_behavior, file_google_api_resource, file_google_protobuf_field_mask, file_protoc_gen_openapiv2_options_annotations, file_redpanda_api_auth_v1_authorization, file_redpanda_api_common_v1_linthint]); + fileDesc("CihyZWRwYW5kYS9hcGkvZGF0YXBsYW5lL3YxL3BpcGVsaW5lLnByb3RvEhlyZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxIt0LCghQaXBlbGluZRIqCgJpZBgBIAEoCUIe4EECukgYyAEBchMyEV5bQS1aYS16MC05LV8vXSskEjoKDGRpc3BsYXlfbmFtZRgCIAEoCUIk4EECukgeyAEBchkQAxiAATISXltBLVphLXowLTktXyAvXSskEh0KC2Rlc2NyaXB0aW9uGAMgASgJQgi6SAVyAxiAAhL4AQoLY29uZmlnX3lhbWwYBCABKAlC4gGSQdUBMtIBVGhlIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUgY29uZmlndXJhdGlvbiBpbiBZQU1MIGZvcm1hdC4gU2VlIHRoZSBbUmVkcGFuZGEgQ29ubmVjdCBDb25maWd1cmF0aW9uXShodHRwczovL2RvY3MucmVkcGFuZGEuY29tL3JlZHBhbmRhLWNsb3VkL2RldmVsb3AvY29ubmVjdC9jb25maWd1cmF0aW9uL2Fib3V0KSBkb2N1bWVudGF0aW9uIGZvciBtb3JlIGRldGFpbHMu4EECukgDyAEBEvgBCglyZXNvdXJjZXMYCSABKAsyLS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lLlJlc291cmNlc0K1AZJBsQEyrgFUaGUgcmVxdWVzdGVkIGFtb3VudCBvZiByZXNvdXJjZXMgZm9yIHRoZSBwaXBlbGluZS4gRGVwZW5kaW5nIG9uIHRoZSBiYWNrZW5kLCB0aGUgcmVzb3VyY2VzIG1pZ2h0IGJlIGd1YXJhbnRlZWQsIG9yIG1pZ2h0IGJlIHR3ZWFrZWQgYmFzZWQgb24gdGhlIHV0aWxpemF0aW9uIG9mIHRoZSBwaXBlbGluZS4SPQoFc3RhdGUYByABKA4yKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lLlN0YXRlQgPgQQMSPwoGc3RhdHVzGAggASgLMioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5TdGF0dXNCA+BBAxILCgN1cmwYCiABKAkSagoEdGFncxgLIAMoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUuVGFnc0VudHJ5Qi26SCqaAScQECojciEyH14oW1xwe0x9XHB7Wn1ccHtOfV8uOi89K1wtQF0qKSQSUAoPc2VydmljZV9hY2NvdW50GAwgASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5TZXJ2aWNlQWNjb3VudEID4EEBGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBGkwKCVJlc291cmNlcxIgCg1tZW1vcnlfc2hhcmVzGAEgASgJQgngQQK6SAPIAQESHQoKY3B1X3NoYXJlcxgCIAEoCUIJ4EECukgDyAEBGhcKBlN0YXR1cxINCgVlcnJvchgCIAEoCRqFAQoOU2VydmljZUFjY291bnQSEQoJY2xpZW50X2lkGAEgASgJEmAKDWNsaWVudF9zZWNyZXQYAiABKAlCSbpIRnJEMkJeXCRce3NlY3JldHNcLltBLVphLXpfXVtBLVphLXowLTlfXSooXC5bQS1aYS16X11bQS1aYS16MC05X10qKT9cfSQikgEKBVN0YXRlEhUKEVNUQVRFX1VOU1BFQ0lGSUVEEAASEgoOU1RBVEVfU1RBUlRJTkcQARIRCg1TVEFURV9SVU5OSU5HEAISEgoOU1RBVEVfU1RPUFBJTkcQAxIRCg1TVEFURV9TVE9QUEVEEAQSDwoLU1RBVEVfRVJST1IQBRITCg9TVEFURV9DT01QTEVURUQQBjo86kE5CiJyZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxL1BpcGVsaW5lKglwaXBlbGluZXMyCHBpcGVsaW5lSgQIBRAGSgQIBhAHUgdyZXF1ZXN0UgVsaW1pdCKeBAoOUGlwZWxpbmVDcmVhdGUSOgoMZGlzcGxheV9uYW1lGAEgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAiABKAlCCLpIBXIDGIACEh4KC2NvbmZpZ195YW1sGAMgASgJQgngQQK6SAPIAQESQAoJcmVzb3VyY2VzGAYgASgLMi0ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5SZXNvdXJjZXMScAoEdGFncxgHIAMoCzIzLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmVDcmVhdGUuVGFnc0VudHJ5Qi26SCqaAScQECojciEyH14oW1xwe0x9XHB7Wn1ccHtOfV8uOi89K1wtQF0qKSQSUAoPc2VydmljZV9hY2NvdW50GAggASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5TZXJ2aWNlQWNjb3VudEID4EEBGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBOkLqQT8KKHJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEvUGlwZWxpbmVDcmVhdGUqCXBpcGVsaW5lczIIcGlwZWxpbmVKBAgEEAVKBAgFEAZSB3JlcXVlc3RSBWxpbWl0IlQKFUNyZWF0ZVBpcGVsaW5lUmVxdWVzdBI7CghwaXBlbGluZRgBIAEoCzIpLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmVDcmVhdGUiTwoWQ3JlYXRlUGlwZWxpbmVSZXNwb25zZRI1CghwaXBlbGluZRgBIAEoCzIjLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUiQAoSR2V0UGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiTAoTR2V0UGlwZWxpbmVSZXNwb25zZRI1CghwaXBlbGluZRgBIAEoCzIjLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUimwUKFExpc3RQaXBlbGluZXNSZXF1ZXN0EkYKBmZpbHRlchgBIAEoCzI2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTGlzdFBpcGVsaW5lc1JlcXVlc3QuRmlsdGVyEp8BCglwYWdlX3NpemUYAiABKAVCiwGSQXUyYUxpbWl0IHRoZSBwYWdpbmF0ZWQgcmVzcG9uc2UgdG8gYSBudW1iZXIgb2YgaXRlbXMuIERlZmF1bHRzIHRvIDEwMC4gVXNlIC0xIHRvIGRpc2FibGUgcGFnaW5hdGlvbi5ZAAAAAABAj0BpAAAAAAAA8L+6SBAaDhjoByj///////////8BEhIKCnBhZ2VfdG9rZW4YAyABKAkahAMKBkZpbHRlchJ5Cg1uYW1lX2NvbnRhaW5zGAEgASgJQmKSQUAyPkFueSBwaXBlbGluZXMgdGhhdCBwYXJ0aWFsbHkgbWF0Y2ggdGhpcyBuYW1lIHdpbGwgYmUgcmV0dXJuZWQuukgc2AEBchcYgAEyEl5bQS1aYS16MC05LV8gL10rJBK+AQoEdGFncxgCIAMoCzJALnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTGlzdFBpcGVsaW5lc1JlcXVlc3QuRmlsdGVyLlRhZ3NFbnRyeUJukkE+MjxQaXBlbGluZXMgdGhhdCBtYXRjaCBhbGwgdGhlIHByb3ZpZGVkIHRhZ3Mgd2lsbCBiZSByZXR1cm5lZC66SCqaAScQECojciEyH14oW1xwe0x9XHB7Wn1ccHtOfV8uOi89K1wtQF0qKSQSEQoJc2VjcmV0X2lkGAMgASgJGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBImgKFUxpc3RQaXBlbGluZXNSZXNwb25zZRI2CglwaXBlbGluZXMYASADKAsyIy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lEhcKD25leHRfcGFnZV90b2tlbhgCIAEoCSKhBAoOUGlwZWxpbmVVcGRhdGUSOgoMZGlzcGxheV9uYW1lGAEgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSIAoLZGVzY3JpcHRpb24YAiABKAlCC7pICNgBAXIDGIACEh4KC2NvbmZpZ195YW1sGAMgASgJQgngQQK6SAPIAQESQAoJcmVzb3VyY2VzGAYgASgLMi0ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5SZXNvdXJjZXMScAoEdGFncxgHIAMoCzIzLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmVVcGRhdGUuVGFnc0VudHJ5Qi26SCqaAScQECojciEyH14oW1xwe0x9XHB7Wn1ccHtOfV8uOi89K1wtQF0qKSQSUAoPc2VydmljZV9hY2NvdW50GAggASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5TZXJ2aWNlQWNjb3VudEID4EEBGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBOkLqQT8KKHJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEvUGlwZWxpbmVVcGRhdGUqCXBpcGVsaW5lczIIcGlwZWxpbmVKBAgEEAVKBAgFEAZSB3JlcXVlc3RSBWxpbWl0IrwBChVVcGRhdGVQaXBlbGluZVJlcXVlc3QSKgoCaWQYASABKAlCHuBBArpIGMgBAXITMhFeW0EtWmEtejAtOS1fL10rJBJGCghwaXBlbGluZRgCIAEoCzIpLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmVVcGRhdGVCCeBBArpIA8gBARIvCgt1cGRhdGVfbWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siTwoWVXBkYXRlUGlwZWxpbmVSZXNwb25zZRI1CghwaXBlbGluZRgBIAEoCzIjLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUiQwoVRGVsZXRlUGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiGAoWRGVsZXRlUGlwZWxpbmVSZXNwb25zZSJBChNTdG9wUGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiTQoUU3RvcFBpcGVsaW5lUmVzcG9uc2USNQoIcGlwZWxpbmUYASABKAsyIy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lIkIKFFN0YXJ0UGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiTgoVU3RhcnRQaXBlbGluZVJlc3BvbnNlEjUKCHBpcGVsaW5lGAEgASgLMiMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZSInCiVHZXRQaXBlbGluZVNlcnZpY2VDb25maWdTY2hlbWFSZXF1ZXN0Ij8KJkdldFBpcGVsaW5lU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNlEhUKDWNvbmZpZ19zY2hlbWEYASABKAkiRgoVTGlzdENvbXBvbmVudHNSZXF1ZXN0Ei0KCXJlYWRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siVgoWTGlzdENvbXBvbmVudHNSZXNwb25zZRI8Cgpjb21wb25lbnRzGAEgASgLMigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5Db21wb25lbnRMaXN0IpAHCg1Db21wb25lbnRMaXN0Es8BCgd2ZXJzaW9uGAEgASgJQr0Buki5AXK2ATKzAV4oMHxbMS05XVxkKilcLigwfFsxLTldXGQqKVwuKDB8WzEtOV1cZCopKD86LSgoPzowfFsxLTldXGQqfFxkKlthLXpBLVotXVswLTlhLXpBLVotXSopKD86XC4oPzowfFsxLTldXGQqfFxkKlthLXpBLVotXVswLTlhLXpBLVotXSopKSopKT8oPzpcKyhbMC05YS16QS1aLV0rKD86XC5bMC05YS16QS1aLV0rKSopKT8kEjkKB2J1ZmZlcnMYAiADKAsyKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkNvbXBvbmVudFNwZWMSOAoGY2FjaGVzGAMgAygLMigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5Db21wb25lbnRTcGVjEjgKBmlucHV0cxgEIAMoCzIoLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuQ29tcG9uZW50U3BlYxI5CgdvdXRwdXRzGAUgAygLMigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5Db21wb25lbnRTcGVjEjwKCnByb2Nlc3NvcnMYBiADKAsyKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkNvbXBvbmVudFNwZWMSPQoLcmF0ZV9saW1pdHMYByADKAsyKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkNvbXBvbmVudFNwZWMSOQoHbWV0cmljcxgIIAMoCzIoLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuQ29tcG9uZW50U3BlYxI5Cgd0cmFjZXJzGAkgAygLMigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5Db21wb25lbnRTcGVjEjoKCHNjYW5uZXJzGAogAygLMigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5Db21wb25lbnRTcGVjEksKEmJsb2JsYW5nX2Z1bmN0aW9ucxgLIAMoCzIvLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuQmxvYmxhbmdGdW5jdGlvblNwZWMSRwoQYmxvYmxhbmdfbWV0aG9kcxgMIAMoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuQmxvYmxhbmdNZXRob2RTcGVjIs4DCg1Db21wb25lbnRTcGVjEgwKBG5hbWUYASABKAkSDAoEdHlwZRgCIAEoCRI6CgZzdGF0dXMYAyABKA4yKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkNvbXBvbmVudFN0YXR1cxIPCgdzdW1tYXJ5GAQgASgJEhMKC2Rlc2NyaXB0aW9uGAUgASgJEhIKCmNhdGVnb3JpZXMYBiADKAkSzwEKB3ZlcnNpb24YByABKAlCvQG6SLkBcrYBMrMBXigwfFsxLTldXGQqKVwuKDB8WzEtOV1cZCopXC4oMHxbMS05XVxkKikoPzotKCg/OjB8WzEtOV1cZCp8XGQqW2EtekEtWi1dWzAtOWEtekEtWi1dKikoPzpcLig/OjB8WzEtOV1cZCp8XGQqW2EtekEtWi1dWzAtOWEtekEtWi1dKikpKikpPyg/OlwrKFswLTlhLXpBLVotXSsoPzpcLlswLTlhLXpBLVotXSspKikpPyQSNAoGY29uZmlnGAggASgLMiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5GaWVsZFNwZWMSEAoIZXhhbXBsZXMYCSADKAkSEQoJZm9vdG5vdGVzGAogASgJIpIECglGaWVsZFNwZWMSDAoEbmFtZRgBIAEoCRIMCgR0eXBlGAIgASgJEgwKBGtpbmQYAyABKAkSEwoLZGVzY3JpcHRpb24YBCABKAkSEAoIYWR2YW5jZWQYBSABKAgSEgoKZGVwcmVjYXRlZBgGIAEoCBIQCghvcHRpb25hbBgHIAEoCBIVCg1kZWZhdWx0X3ZhbHVlGAggASgJEhAKCGV4YW1wbGVzGAkgAygJEjYKCGNoaWxkcmVuGAogAygLMiQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5GaWVsZFNwZWMSRQoRYW5ub3RhdGVkX29wdGlvbnMYCyADKAsyKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkFubm90YXRlZE9wdGlvbhIUCgxpbnRlcnBvbGF0ZWQYDCADKAkSzwEKB3ZlcnNpb24YDSABKAlCvQG6SLkBcrYBMrMBXigwfFsxLTldXGQqKVwuKDB8WzEtOV1cZCopXC4oMHxbMS05XVxkKikoPzotKCg/OjB8WzEtOV1cZCp8XGQqW2EtekEtWi1dWzAtOWEtekEtWi1dKikoPzpcLig/OjB8WzEtOV1cZCp8XGQqW2EtekEtWi1dWzAtOWEtekEtWi1dKikpKikpPyg/OlwrKFswLTlhLXpBLVotXSsoPzpcLlswLTlhLXpBLVotXSspKikpPyQiNQoPQW5ub3RhdGVkT3B0aW9uEg0KBXZhbHVlGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJIvcCChRCbG9ibGFuZ0Z1bmN0aW9uU3BlYxIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEg4KBnN0YXR1cxgDIAEoCRISCgpjYXRlZ29yaWVzGAQgAygJEjQKBnBhcmFtcxgFIAEoCzIkLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGFyYW1TcGVjEhAKCGV4YW1wbGVzGAYgAygJEs8BCgd2ZXJzaW9uGAcgASgJQr0Buki5AXK2ATKzAV4oMHxbMS05XVxkKilcLigwfFsxLTldXGQqKVwuKDB8WzEtOV1cZCopKD86LSgoPzowfFsxLTldXGQqfFxkKlthLXpBLVotXVswLTlhLXpBLVotXSopKD86XC4oPzowfFsxLTldXGQqfFxkKlthLXpBLVotXVswLTlhLXpBLVotXSopKSopKT8oPzpcKyhbMC05YS16QS1aLV0rKD86XC5bMC05YS16QS1aLV0rKSopKT8kIvUCChJCbG9ibGFuZ01ldGhvZFNwZWMSDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIOCgZzdGF0dXMYAyABKAkSEgoKY2F0ZWdvcmllcxgEIAMoCRI0CgZwYXJhbXMYBSABKAsyJC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBhcmFtU3BlYxIQCghleGFtcGxlcxgGIAMoCRLPAQoHdmVyc2lvbhgHIAEoCUK9AbpIuQFytgEyswFeKDB8WzEtOV1cZCopXC4oMHxbMS05XVxkKilcLigwfFsxLTldXGQqKSg/Oi0oKD86MHxbMS05XVxkKnxcZCpbYS16QS1aLV1bMC05YS16QS1aLV0qKSg/OlwuKD86MHxbMS05XVxkKnxcZCpbYS16QS1aLV1bMC05YS16QS1aLV0qKSkqKSk/KD86XCsoWzAtOWEtekEtWi1dKyg/OlwuWzAtOWEtekEtWi1dKykqKSk/JCJMCglQYXJhbVNwZWMSPwoLZGVmaW5pdGlvbnMYASADKAsyKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBhcmFtRGVmaW5pdGlvbiJZCg9QYXJhbURlZmluaXRpb24SDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIMCgR0eXBlGAMgASgJEhUKDWRlZmF1bHRfdmFsdWUYBCABKAkiXwoSUGlwZWxpbmVzRm9yU2VjcmV0EhEKCXNlY3JldF9pZBgBIAEoCRI2CglwaXBlbGluZXMYAiADKAsyIy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lIlEKHEdldFBpcGVsaW5lc0ZvclNlY3JldFJlcXVlc3QSMQoJc2VjcmV0X2lkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVpdW0EtWjAtOV9dKiQibAodR2V0UGlwZWxpbmVzRm9yU2VjcmV0UmVzcG9uc2USSwoUcGlwZWxpbmVzX2Zvcl9zZWNyZXQYASABKAsyLS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lc0ZvclNlY3JldCIeChxHZXRQaXBlbGluZXNCeVNlY3JldHNSZXF1ZXN0ImwKHUdldFBpcGVsaW5lc0J5U2VjcmV0c1Jlc3BvbnNlEksKFHBpcGVsaW5lc19mb3Jfc2VjcmV0GAEgAygLMi0ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZXNGb3JTZWNyZXQiOwoZTGludFBpcGVsaW5lQ29uZmlnUmVxdWVzdBIeCgtjb25maWdfeWFtbBgBIAEoCUIJ4EECukgDyAEBIlIKGkxpbnRQaXBlbGluZUNvbmZpZ1Jlc3BvbnNlEjQKCmxpbnRfaGludHMYASADKAsyIC5yZWRwYW5kYS5hcGkuY29tbW9uLnYxLkxpbnRIaW50Kq8BCg9Db21wb25lbnRTdGF0dXMSIAocQ09NUE9ORU5UX1NUQVRVU19VTlNQRUNJRklFRBAAEhsKF0NPTVBPTkVOVF9TVEFUVVNfU1RBQkxFEAESGQoVQ09NUE9ORU5UX1NUQVRVU19CRVRBEAISIQodQ09NUE9ORU5UX1NUQVRVU19FWFBFUklNRU5UQUwQAxIfChtDT01QT05FTlRfU1RBVFVTX0RFUFJFQ0FURUQQBDLPKgoPUGlwZWxpbmVTZXJ2aWNlEt8CCg5DcmVhdGVQaXBlbGluZRIwLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuQ3JlYXRlUGlwZWxpbmVSZXF1ZXN0GjEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5DcmVhdGVQaXBlbGluZVJlc3BvbnNlIucBkkGBARIgQ3JlYXRlIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUaJ0NyZWF0ZSBhIG5ldyBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lLko0CgMyMDESLQoCT0sSJwolGiMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZdq/ByYKCXBpcGVsaW5lcxoZZGF0YXBsYW5lX3BpcGVsaW5lX2NyZWF0ZYqmHQQIAhAEgtPkkwIqOghwaXBlbGluZSIeL3YxL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzEoUDCgtHZXRQaXBlbGluZRItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuR2V0UGlwZWxpbmVSZXF1ZXN0Gi4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5HZXRQaXBlbGluZVJlc3BvbnNlIpYCkkGsARIdR2V0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUaKUdldCBhIHNwZWNpZmljIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUuSjQKAzIwMBItCgJPSxInCiUaIy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5lSioKAzQwNBIjCglOb3QgRm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXPavwcvCglwaXBlbGluZXMSCnJlcXVlc3QuaWQaFmRhdGFwbGFuZV9waXBlbGluZV9nZXSKph0ECAEQBILT5JMCJRIjL3YxL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzL3tpZH0SnQMKDUxpc3RQaXBlbGluZXMSLy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpc3RQaXBlbGluZXNSZXF1ZXN0GjAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5MaXN0UGlwZWxpbmVzUmVzcG9uc2UiqAKSQa8BEh9MaXN0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzGklMaXN0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzLiBPcHRpb25hbDogZmlsdGVyIGJhc2VkIG9uIHBpcGVsaW5lIG5hbWUuSkEKAzIwMBI6CgJPSxI0CjIaMC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkxpc3RQaXBlbGluZXNSZXNwb25zZeK/B0MKEnJlc3BvbnNlLnBpcGVsaW5lcxItCglwaXBlbGluZXMSB2VhY2guaWQaF2RhdGFwbGFuZV9waXBlbGluZV9saXN0iqYdBAgBEASC0+STAiASHi92MS9yZWRwYW5kYS1jb25uZWN0L3BpcGVsaW5lcxLUAwoOVXBkYXRlUGlwZWxpbmUSMC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlVwZGF0ZVBpcGVsaW5lUmVxdWVzdBoxLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuVXBkYXRlUGlwZWxpbmVSZXNwb25zZSLcApJB5QESIlVwZGF0ZSBhIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUaiAFVcGRhdGUgdGhlIFtjb25maWd1cmF0aW9uXShodHRwczovL2RvY3MucmVkcGFuZGEuY29tL3JlZHBhbmRhLWNsb3VkL2RldmVsb3AvY29ubmVjdC9jb25maWd1cmF0aW9uL2Fib3V0KSBvZiBhIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUuSjQKAzIwMBItCgJPSxInCiUaIy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlBpcGVsaW5l2r8HMgoJcGlwZWxpbmVzEgpyZXF1ZXN0LmlkGhlkYXRhcGxhbmVfcGlwZWxpbmVfdXBkYXRliqYdBAgCEASC0+STAi86CHBpcGVsaW5lGiMvdjEvcmVkcGFuZGEtY29ubmVjdC9waXBlbGluZXMve2lkfRLuAgoORGVsZXRlUGlwZWxpbmUSMC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkRlbGV0ZVBpcGVsaW5lUmVxdWVzdBoxLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuRGVsZXRlUGlwZWxpbmVSZXNwb25zZSL2AZJBiQESIkRlbGV0ZSBhIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUaI0RlbGV0ZSBhIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUuShIKAzIwNBILCgdEZWxldGVkEgBKKgoDNDA0EiMKCU5vdCBGb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c9q/BzIKCXBpcGVsaW5lcxIKcmVxdWVzdC5pZBoZZGF0YXBsYW5lX3BpcGVsaW5lX2RlbGV0ZYqmHQQIAhAEgtPkkwIlKiMvdjEvcmVkcGFuZGEtY29ubmVjdC9waXBlbGluZXMve2lkfRKXAwoMU3RvcFBpcGVsaW5lEi4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5TdG9wUGlwZWxpbmVSZXF1ZXN0Gi8ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5TdG9wUGlwZWxpbmVSZXNwb25zZSKlApJBtQESIVN0b3BzIGEgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZRopU3RvcCBhIHJ1bm5pbmcgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZS5KOQoDMjAwEjIKB1N0b3BwZWQSJwolGiMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZUoqCgM0MDQSIwoJTm90IEZvdW5kEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVz2r8HMAoJcGlwZWxpbmVzEgpyZXF1ZXN0LmlkGhdkYXRhcGxhbmVfcGlwZWxpbmVfc3RvcIqmHQQIAhAEgtPkkwIqGigvdjEvcmVkcGFuZGEtY29ubmVjdC9waXBlbGluZXMve2lkfS9zdG9wEp0DCg1TdGFydFBpcGVsaW5lEi8ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5TdGFydFBpcGVsaW5lUmVxdWVzdBowLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuU3RhcnRQaXBlbGluZVJlc3BvbnNlIqgCkkG2ARIhU3RhcnQgYSBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lGipTdGFydCBhIHN0b3BwZWQgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZS5KOQoDMjAwEjIKB1N0YXJ0ZWQSJwolGiMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZUoqCgM0MDQSIwoJTm90IEZvdW5kEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVz2r8HMQoJcGlwZWxpbmVzEgpyZXF1ZXN0LmlkGhhkYXRhcGxhbmVfcGlwZWxpbmVfc3RhcnSKph0ECAIQBILT5JMCKxopL3YxL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzL3tpZH0vc3RhcnQS0wQKHkdldFBpcGVsaW5lU2VydmljZUNvbmZpZ1NjaGVtYRJALnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuR2V0UGlwZWxpbmVTZXJ2aWNlQ29uZmlnU2NoZW1hUmVxdWVzdBpBLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuR2V0UGlwZWxpbmVTZXJ2aWNlQ29uZmlnU2NoZW1hUmVzcG9uc2UiqwOSQc4CEkBSZXRyaWV2ZSB0aGUgc2NoZW1hIGZvciBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lIGNvbmZpZ3VyYXRpb25zGrUBVGhlIGNvbmZpZ3VyYXRpb24gc2NoZW1hIGluY2x1ZGVzIGF2YWlsYWJsZSBbY29tcG9uZW50cyBhbmQgcHJvY2Vzc29yc10oaHR0cHM6Ly9kb2NzLnJlZHBhbmRhLmNvbS9yZWRwYW5kYS1jbG91ZC9kZXZlbG9wL2Nvbm5lY3QvY29tcG9uZW50cy9hYm91dCkgaW4gdGhpcyBSZWRwYW5kYSBDb25uZWN0IGluc3RhbmNlLkpSCgMyMDASSwoCT0sSRQpDGkEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5HZXRQaXBlbGluZVNlcnZpY2VDb25maWdTY2hlbWFSZXNwb25zZdq/ByMKCXBpcGVsaW5lcxoWZGF0YXBsYW5lX3BpcGVsaW5lX2dldIqmHQQIARAEgtPkkwIkEiIvdjEvcmVkcGFuZGEtY29ubmVjdC9jb25maWctc2NoZW1hEtkDCg5MaXN0Q29tcG9uZW50cxIwLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTGlzdENvbXBvbmVudHNSZXF1ZXN0GjEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5MaXN0Q29tcG9uZW50c1Jlc3BvbnNlIuECkkGHAhIpUmV0cmlldmUgdGhlIGxpc3Qgb2YgYXZhaWxhYmxlIGNvbXBvbmVudHMalQFSZXR1cm5zIGEgSlNPTiBsaXN0IG9mIGF2YWlsYWJsZSBbY29tcG9uZW50c10oaHR0cHM6Ly9kb2NzLnJlZHBhbmRhLmNvbS9yZWRwYW5kYS1jbG91ZC9kZXZlbG9wL2Nvbm5lY3QvY29tcG9uZW50cy9hYm91dCksIGZpbHRlcmVkIGJ5IGNvbXBvbmVudCB0eXBlLkpCCgMyMDASOwoCT0sSNQozGjEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5MaXN0Q29tcG9uZW50c1Jlc3BvbnNl2r8HIwoJcGlwZWxpbmVzGhZkYXRhcGxhbmVfcGlwZWxpbmVfZ2V0iqYdBAgBEASC0+STAiESHy92MS9yZWRwYW5kYS1jb25uZWN0L2NvbXBvbmVudHMSnAMKFUdldFBpcGVsaW5lc0ZvclNlY3JldBI3LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuR2V0UGlwZWxpbmVzRm9yU2VjcmV0UmVxdWVzdBo4LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuR2V0UGlwZWxpbmVzRm9yU2VjcmV0UmVzcG9uc2UijwKSQaoBEilHZXQgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZXMgZm9yIHNlY3JldBoyR2V0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzIGZvciBhIGdpdmVuIHNlY3JldC5KSQoDMjAwEkIKAk9LEjwKOho4LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuR2V0UGlwZWxpbmVzRm9yU2VjcmV0UmVzcG9uc2XavwckCglwaXBlbGluZXMaF2RhdGFwbGFuZV9waXBlbGluZV9saXN0iqYdBAgBEASC0+STAisSKS92MS9yZWRwYW5kYS1jb25uZWN0L3BpcGVsaW5lcy1mb3Itc2VjcmV0EpQDChVHZXRQaXBlbGluZXNCeVNlY3JldHMSNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkdldFBpcGVsaW5lc0J5U2VjcmV0c1JlcXVlc3QaOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLkdldFBpcGVsaW5lc0J5U2VjcmV0c1Jlc3BvbnNlIocCkkGiARIpR2V0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzIGJ5IHNlY3JldHMaKkdldCBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lcyBieSBzZWNyZXRzLkpJCgMyMDASQgoCT0sSPAo6GjgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5HZXRQaXBlbGluZXNCeVNlY3JldHNSZXNwb25zZdq/ByQKCXBpcGVsaW5lcxoXZGF0YXBsYW5lX3BpcGVsaW5lX2xpc3SKph0ECAEQBILT5JMCKxIpL3YxL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzLWJ5LXNlY3JldHMSmQQKEkxpbnRQaXBlbGluZUNvbmZpZxI0LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTGludFBpcGVsaW5lQ29uZmlnUmVxdWVzdBo1LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuTGludFBpcGVsaW5lQ29uZmlnUmVzcG9uc2UilQOSQa0CEi5MaW50IGEgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZSBjb25maWd1cmF0aW9uGoUBVmFsaWRhdGVzIGEgc3VwcGxpZWQgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZSBZQU1MIGFuZCByZXR1cm5zIGEgbGlzdCBvZiBsaW50aW5nIGhpbnRzLiBJZiBubyBwcm9ibGVtcyBhcmUgZm91bmQsIHRoZSBsaXN0IGlzIGVtcHR5LkpzCgMyMDASbAovTGludGluZyBmaW5pc2hlZC4gU2VlIGBsaW50X2hpbnRzYCBmb3IgZGV0YWlscy4SOQo3GjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5MaW50UGlwZWxpbmVDb25maWdSZXNwb25zZdq/ByMKCXBpcGVsaW5lcxoWZGF0YXBsYW5lX3BpcGVsaW5lX2dldIqmHQQIARAEgtPkkwIvOgEqIiovdjEvcmVkcGFuZGEtY29ubmVjdC9waXBlbGluZXM6bGludC1jb25maWcaqwGSQacBChpSZWRwYW5kYSBDb25uZWN0IFBpcGVsaW5lcxKIAUNyZWF0ZSBhbmQgbWFuYWdlIFtSZWRwYW5kYSBDb25uZWN0XShodHRwczovL2RvY3MucmVkcGFuZGEuY29tL3JlZHBhbmRhLWNsb3VkL2RldmVsb3AvY29ubmVjdC9hYm91dCkgcGlwZWxpbmVzIGFuZCB0aGVpciBjb25maWd1cmF0aW9ucy5iBnByb3RvMw", [file_buf_validate_validate, file_google_api_annotations, file_google_api_field_behavior, file_google_api_resource, file_google_protobuf_field_mask, file_protoc_gen_openapiv2_options_annotations, file_redpanda_api_auth_v1_authorization, file_redpanda_api_common_v1_linthint, file_redpanda_api_common_v1_options]); /** * Defines the pipeline resource. diff --git a/frontend/src/protogen/redpanda/api/dataplane/v1alpha2/pipeline_pb.ts b/frontend/src/protogen/redpanda/api/dataplane/v1alpha2/pipeline_pb.ts index 55dedbcb77..b4709e1943 100644 --- a/frontend/src/protogen/redpanda/api/dataplane/v1alpha2/pipeline_pb.ts +++ b/frontend/src/protogen/redpanda/api/dataplane/v1alpha2/pipeline_pb.ts @@ -9,13 +9,14 @@ import { file_google_api_annotations } from "../../../../google/api/annotations_ import { file_google_api_field_behavior } from "../../../../google/api/field_behavior_pb"; import { file_protoc_gen_openapiv2_options_annotations } from "../../../../protoc-gen-openapiv2/options/annotations_pb"; import { file_redpanda_api_auth_v1_authorization } from "../../auth/v1/authorization_pb"; +import { file_redpanda_api_common_v1_options } from "../../common/v1/options_pb"; import type { Message } from "@bufbuild/protobuf"; /** * Describes the file redpanda/api/dataplane/v1alpha2/pipeline.proto. */ export const file_redpanda_api_dataplane_v1alpha2_pipeline: GenFile = /*@__PURE__*/ - fileDesc("Ci5yZWRwYW5kYS9hcGkvZGF0YXBsYW5lL3YxYWxwaGEyL3BpcGVsaW5lLnByb3RvEh9yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyIpEKCghQaXBlbGluZRIqCgJpZBgBIAEoCUIe4EECukgYyAEBchMyEV5bQS1aYS16MC05LV8vXSskEjoKDGRpc3BsYXlfbmFtZRgCIAEoCUIk4EECukgeyAEBchkQAxiAATISXltBLVphLXowLTktXyAvXSskEh0KC2Rlc2NyaXB0aW9uGAMgASgJQgi6SAVyAxiAAhL4AQoLY29uZmlnX3lhbWwYBCABKAlC4gGSQdUBMtIBVGhlIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUgY29uZmlndXJhdGlvbiBpbiBZQU1MIGZvcm1hdC4gU2VlIHRoZSBbUmVkcGFuZGEgQ29ubmVjdCBDb25maWd1cmF0aW9uXShodHRwczovL2RvY3MucmVkcGFuZGEuY29tL3JlZHBhbmRhLWNsb3VkL2RldmVsb3AvY29ubmVjdC9jb25maWd1cmF0aW9uL2Fib3V0KSBkb2N1bWVudGF0aW9uIGZvciBtb3JlIGRldGFpbHMu4EECukgDyAEBEv4BCglyZXNvdXJjZXMYCSABKAsyMy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lLlJlc291cmNlc0K1AZJBsQEyrgFUaGUgcmVxdWVzdGVkIGFtb3VudCBvZiByZXNvdXJjZXMgZm9yIHRoZSBwaXBlbGluZS4gRGVwZW5kaW5nIG9uIHRoZSBiYWNrZW5kLCB0aGUgcmVzb3VyY2VzIG1pZ2h0IGJlIGd1YXJhbnRlZWQsIG9yIG1pZ2h0IGJlIHR3ZWFrZWQgYmFzZWQgb24gdGhlIHV0aWxpemF0aW9uIG9mIHRoZSBwaXBlbGluZS4SQwoFc3RhdGUYByABKA4yLy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lLlN0YXRlQgPgQQMSRQoGc3RhdHVzGAggASgLMjAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZS5TdGF0dXNCA+BBAxJWCg9zZXJ2aWNlX2FjY291bnQYCiABKAsyOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lLlNlcnZpY2VBY2NvdW50QgPgQQEaTAoJUmVzb3VyY2VzEiAKDW1lbW9yeV9zaGFyZXMYASABKAlCCeBBArpIA8gBARIdCgpjcHVfc2hhcmVzGAIgASgJQgngQQK6SAPIAQEaFwoGU3RhdHVzEg0KBWVycm9yGAIgASgJGoUBCg5TZXJ2aWNlQWNjb3VudBIRCgljbGllbnRfaWQYASABKAkSYAoNY2xpZW50X3NlY3JldBgCIAEoCUJJukhGckQyQl5cJFx7c2VjcmV0c1wuW0EtWmEtel9dW0EtWmEtejAtOV9dKihcLltBLVphLXpfXVtBLVphLXowLTlfXSopP1x9JCKSAQoFU3RhdGUSFQoRU1RBVEVfVU5TUEVDSUZJRUQQABISCg5TVEFURV9TVEFSVElORxABEhEKDVNUQVRFX1JVTk5JTkcQAhISCg5TVEFURV9TVE9QUElORxADEhEKDVNUQVRFX1NUT1BQRUQQBBIPCgtTVEFURV9FUlJPUhAFEhMKD1NUQVRFX0NPTVBMRVRFRBAGSgQIBRAGSgQIBhAHUgdyZXF1ZXN0UgVsaW1pdCLHAgoOUGlwZWxpbmVDcmVhdGUSOgoMZGlzcGxheV9uYW1lGAEgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAiABKAlCCLpIBXIDGIACEh4KC2NvbmZpZ195YW1sGAMgASgJQgngQQK6SAPIAQESRgoJcmVzb3VyY2VzGAYgASgLMjMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZS5SZXNvdXJjZXMSVgoPc2VydmljZV9hY2NvdW50GAcgASgLMjgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZS5TZXJ2aWNlQWNjb3VudEID4EEBSgQIBBAFSgQIBRAGUgdyZXF1ZXN0UgVsaW1pdCJaChVDcmVhdGVQaXBlbGluZVJlcXVlc3QSQQoIcGlwZWxpbmUYASABKAsyLy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lQ3JlYXRlIlUKFkNyZWF0ZVBpcGVsaW5lUmVzcG9uc2USOwoIcGlwZWxpbmUYASABKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lIkAKEkdldFBpcGVsaW5lUmVxdWVzdBIqCgJpZBgBIAEoCUIe4EECukgYyAEBchMyEV5bQS1aYS16MC05LV8vXSskIlIKE0dldFBpcGVsaW5lUmVzcG9uc2USOwoIcGlwZWxpbmUYASABKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lItkCChRMaXN0UGlwZWxpbmVzUmVxdWVzdBJMCgZmaWx0ZXIYASABKAsyPC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkxpc3RQaXBlbGluZXNSZXF1ZXN0LkZpbHRlchKfAQoJcGFnZV9zaXplGAIgASgFQosBkkF1MmFMaW1pdCB0aGUgcGFnaW5hdGVkIHJlc3BvbnNlIHRvIGEgbnVtYmVyIG9mIGl0ZW1zLiBEZWZhdWx0cyB0byAxMDAuIFVzZSAtMSB0byBkaXNhYmxlIHBhZ2luYXRpb24uWQAAAAAAQI9AaQAAAAAAAPC/ukgQGg4Y6Aco////////////ARISCgpwYWdlX3Rva2VuGAMgASgJGj0KBkZpbHRlchIzCg1uYW1lX2NvbnRhaW5zGAEgASgJQhy6SBlyFxiAATISXltBLVphLXowLTktXyAvXSskIm4KFUxpc3RQaXBlbGluZXNSZXNwb25zZRI8CglwaXBlbGluZXMYASADKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lEhcKD25leHRfcGFnZV90b2tlbhgCIAEoCSLKAgoOUGlwZWxpbmVVcGRhdGUSOgoMZGlzcGxheV9uYW1lGAEgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSIAoLZGVzY3JpcHRpb24YAiABKAlCC7pICNgBAXIDGIACEh4KC2NvbmZpZ195YW1sGAMgASgJQgngQQK6SAPIAQESRgoJcmVzb3VyY2VzGAYgASgLMjMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZS5SZXNvdXJjZXMSVgoPc2VydmljZV9hY2NvdW50GAcgASgLMjgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZS5TZXJ2aWNlQWNjb3VudEID4EEBSgQIBBAFSgQIBRAGUgdyZXF1ZXN0UgVsaW1pdCKRAQoVVXBkYXRlUGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQSTAoIcGlwZWxpbmUYAiABKAsyLy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lVXBkYXRlQgngQQK6SAPIAQEiVQoWVXBkYXRlUGlwZWxpbmVSZXNwb25zZRI7CghwaXBlbGluZRgBIAEoCzIpLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuUGlwZWxpbmUiQwoVRGVsZXRlUGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiGAoWRGVsZXRlUGlwZWxpbmVSZXNwb25zZSJBChNTdG9wUGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiUwoUU3RvcFBpcGVsaW5lUmVzcG9uc2USOwoIcGlwZWxpbmUYASABKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lIkIKFFN0YXJ0UGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiVAoVU3RhcnRQaXBlbGluZVJlc3BvbnNlEjsKCHBpcGVsaW5lGAEgASgLMikucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZSInCiVHZXRQaXBlbGluZVNlcnZpY2VDb25maWdTY2hlbWFSZXF1ZXN0Ij8KJkdldFBpcGVsaW5lU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNlEhUKDWNvbmZpZ19zY2hlbWEYASABKAkiZQoSUGlwZWxpbmVzRm9yU2VjcmV0EhEKCXNlY3JldF9pZBgBIAEoCRI8CglwaXBlbGluZXMYAiADKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lIlEKHEdldFBpcGVsaW5lc0ZvclNlY3JldFJlcXVlc3QSMQoJc2VjcmV0X2lkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVpdW0EtWjAtOV9dKiQicgodR2V0UGlwZWxpbmVzRm9yU2VjcmV0UmVzcG9uc2USUQoUcGlwZWxpbmVzX2Zvcl9zZWNyZXQYASABKAsyMy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lc0ZvclNlY3JldCIeChxHZXRQaXBlbGluZXNCeVNlY3JldHNSZXF1ZXN0InIKHUdldFBpcGVsaW5lc0J5U2VjcmV0c1Jlc3BvbnNlElEKFHBpcGVsaW5lc19mb3Jfc2VjcmV0GAEgAygLMjMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZXNGb3JTZWNyZXQykSEKD1BpcGVsaW5lU2VydmljZRLXAgoOQ3JlYXRlUGlwZWxpbmUSNi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkNyZWF0ZVBpcGVsaW5lUmVxdWVzdBo3LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuQ3JlYXRlUGlwZWxpbmVSZXNwb25zZSLTAZJBhwESIENyZWF0ZSBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lGidDcmVhdGUgYSBuZXcgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZS5KOgoDMjAxEjMKAk9LEi0KKxopLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuUGlwZWxpbmWKph0ECAIQBILT5JMCOjoIcGlwZWxpbmViCHBpcGVsaW5lIiQvdjFhbHBoYTIvcmVkcGFuZGEtY29ubmVjdC9waXBlbGluZXMS9AIKC0dldFBpcGVsaW5lEjMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5HZXRQaXBlbGluZVJlcXVlc3QaNC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkdldFBpcGVsaW5lUmVzcG9uc2Ui+QGSQbIBEh1HZXQgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZRopR2V0IGEgc3BlY2lmaWMgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZS5KOgoDMjAwEjMKAk9LEi0KKxopLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuUGlwZWxpbmVKKgoDNDA0EiMKCU5vdCBGb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c4qmHQQIARAEgtPkkwI1YghwaXBlbGluZRIpL3YxYWxwaGEyL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzL3tpZH0S7gIKDUxpc3RQaXBlbGluZXMSNS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkxpc3RQaXBlbGluZXNSZXF1ZXN0GjYucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5MaXN0UGlwZWxpbmVzUmVzcG9uc2Ui7QGSQbUBEh9MaXN0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzGklMaXN0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzLiBPcHRpb25hbDogZmlsdGVyIGJhc2VkIG9uIHBpcGVsaW5lIG5hbWUuSkcKAzIwMBJACgJPSxI6CjgaNi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkxpc3RQaXBlbGluZXNSZXNwb25zZYqmHQQIARAEgtPkkwImEiQvdjFhbHBoYTIvcmVkcGFuZGEtY29ubmVjdC9waXBlbGluZXMSwAMKDlVwZGF0ZVBpcGVsaW5lEjYucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5VcGRhdGVQaXBlbGluZVJlcXVlc3QaNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlVwZGF0ZVBpcGVsaW5lUmVzcG9uc2UivAKSQesBEiJVcGRhdGUgYSBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lGogBVXBkYXRlIHRoZSBbY29uZmlndXJhdGlvbl0oaHR0cHM6Ly9kb2NzLnJlZHBhbmRhLmNvbS9yZWRwYW5kYS1jbG91ZC9kZXZlbG9wL2Nvbm5lY3QvY29uZmlndXJhdGlvbi9hYm91dCkgb2YgYSBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lLko6CgMyMDASMwoCT0sSLQorGikucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZYqmHQQIAhAEgtPkkwI/OghwaXBlbGluZWIIcGlwZWxpbmUaKS92MWFscGhhMi9yZWRwYW5kYS1jb25uZWN0L3BpcGVsaW5lcy97aWR9EsoCCg5EZWxldGVQaXBlbGluZRI2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuRGVsZXRlUGlwZWxpbmVSZXF1ZXN0GjcucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5EZWxldGVQaXBlbGluZVJlc3BvbnNlIsYBkkGJARIiRGVsZXRlIGEgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZRojRGVsZXRlIGEgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZS5KEgoDMjA0EgsKB0RlbGV0ZWQSAEoqCgM0MDQSIwoJTm90IEZvdW5kEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVziqYdBAgCEASC0+STAisqKS92MWFscGhhMi9yZWRwYW5kYS1jb25uZWN0L3BpcGVsaW5lcy97aWR9EoUDCgxTdG9wUGlwZWxpbmUSNC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlN0b3BQaXBlbGluZVJlcXVlc3QaNS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlN0b3BQaXBlbGluZVJlc3BvbnNlIocCkkG7ARIhU3RvcHMgYSBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lGilTdG9wIGEgcnVubmluZyBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lLko/CgMyMDASOAoHU3RvcHBlZBItCisaKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lSioKAzQwNBIjCglOb3QgRm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXOKph0ECAIQBILT5JMCOmIIcGlwZWxpbmUaLi92MWFscGhhMi9yZWRwYW5kYS1jb25uZWN0L3BpcGVsaW5lcy97aWR9L3N0b3ASigMKDVN0YXJ0UGlwZWxpbmUSNS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlN0YXJ0UGlwZWxpbmVSZXF1ZXN0GjYucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5TdGFydFBpcGVsaW5lUmVzcG9uc2UiiQKSQbwBEiFTdGFydCBhIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUaKlN0YXJ0IGEgc3RvcHBlZCBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lLko/CgMyMDASOAoHU3RhcnRlZBItCisaKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lSioKAzQwNBIjCglOb3QgRm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXOKph0ECAIQBILT5JMCO2IIcGlwZWxpbmUaLy92MWFscGhhMi9yZWRwYW5kYS1jb25uZWN0L3BpcGVsaW5lcy97aWR9L3N0YXJ0EsgECh5HZXRQaXBlbGluZVNlcnZpY2VDb25maWdTY2hlbWESRi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkdldFBpcGVsaW5lU2VydmljZUNvbmZpZ1NjaGVtYVJlcXVlc3QaRy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkdldFBpcGVsaW5lU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNlIpQDkkHVAhJBUmV0cmlldmUgdGhlIHNjaGVtYSBmb3IgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZSBjb25maWd1cmF0aW9ucy4atQFUaGUgY29uZmlndXJhdGlvbiBzY2hlbWEgaW5jbHVkZXMgYXZhaWxhYmxlIFtjb21wb25lbnRzIGFuZCBwcm9jZXNzb3JzXShodHRwczovL2RvY3MucmVkcGFuZGEuY29tL3JlZHBhbmRhLWNsb3VkL2RldmVsb3AvY29ubmVjdC9jb21wb25lbnRzL2Fib3V0KSBpbiB0aGlzIFJlZHBhbmRhIENvbm5lY3QgaW5zdGFuY2UuSlgKAzIwMBJRCgJPSxJLCkkaRy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkdldFBpcGVsaW5lU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNliqYdBAgBEASC0+STAi1iASoSKC92MWFscGhhMi9yZWRwYW5kYS1jb25uZWN0L2NvbmZpZy1zY2hlbWESjAMKFUdldFBpcGVsaW5lc0ZvclNlY3JldBI9LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuR2V0UGlwZWxpbmVzRm9yU2VjcmV0UmVxdWVzdBo+LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuR2V0UGlwZWxpbmVzRm9yU2VjcmV0UmVzcG9uc2Ui8wGSQbABEilHZXQgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZXMgZm9yIHNlY3JldBoyR2V0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzIGZvciBhIGdpdmVuIHNlY3JldC5KTwoDMjAwEkgKAk9LEkIKQBo+LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuR2V0UGlwZWxpbmVzRm9yU2VjcmV0UmVzcG9uc2WKph0ECAEQBILT5JMCMRIvL3YxYWxwaGEyL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzLWZvci1zZWNyZXQShAMKFUdldFBpcGVsaW5lc0J5U2VjcmV0cxI9LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuR2V0UGlwZWxpbmVzQnlTZWNyZXRzUmVxdWVzdBo+LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuR2V0UGlwZWxpbmVzQnlTZWNyZXRzUmVzcG9uc2Ui6wGSQagBEilHZXQgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZXMgYnkgc2VjcmV0cxoqR2V0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzIGJ5IHNlY3JldHMuSk8KAzIwMBJICgJPSxJCCkAaPi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkdldFBpcGVsaW5lc0J5U2VjcmV0c1Jlc3BvbnNliqYdBAgBEASC0+STAjESLy92MWFscGhhMi9yZWRwYW5kYS1jb25uZWN0L3BpcGVsaW5lcy1ieS1zZWNyZXRzGrUBkkGxAQokUmVkcGFuZGEgQ29ubmVjdCBQaXBlbGluZSAodjFhbHBoYTIpEogBQ3JlYXRlIGFuZCBtYW5hZ2UgW1JlZHBhbmRhIENvbm5lY3RdKGh0dHBzOi8vZG9jcy5yZWRwYW5kYS5jb20vcmVkcGFuZGEtY2xvdWQvZGV2ZWxvcC9jb25uZWN0L2Fib3V0KSBwaXBlbGluZXMgYW5kIHRoZWlyIGNvbmZpZ3VyYXRpb25zLmIGcHJvdG8z", [file_buf_validate_validate, file_google_api_annotations, file_google_api_field_behavior, file_protoc_gen_openapiv2_options_annotations, file_redpanda_api_auth_v1_authorization]); + fileDesc("Ci5yZWRwYW5kYS9hcGkvZGF0YXBsYW5lL3YxYWxwaGEyL3BpcGVsaW5lLnByb3RvEh9yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyIpEKCghQaXBlbGluZRIqCgJpZBgBIAEoCUIe4EECukgYyAEBchMyEV5bQS1aYS16MC05LV8vXSskEjoKDGRpc3BsYXlfbmFtZRgCIAEoCUIk4EECukgeyAEBchkQAxiAATISXltBLVphLXowLTktXyAvXSskEh0KC2Rlc2NyaXB0aW9uGAMgASgJQgi6SAVyAxiAAhL4AQoLY29uZmlnX3lhbWwYBCABKAlC4gGSQdUBMtIBVGhlIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUgY29uZmlndXJhdGlvbiBpbiBZQU1MIGZvcm1hdC4gU2VlIHRoZSBbUmVkcGFuZGEgQ29ubmVjdCBDb25maWd1cmF0aW9uXShodHRwczovL2RvY3MucmVkcGFuZGEuY29tL3JlZHBhbmRhLWNsb3VkL2RldmVsb3AvY29ubmVjdC9jb25maWd1cmF0aW9uL2Fib3V0KSBkb2N1bWVudGF0aW9uIGZvciBtb3JlIGRldGFpbHMu4EECukgDyAEBEv4BCglyZXNvdXJjZXMYCSABKAsyMy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lLlJlc291cmNlc0K1AZJBsQEyrgFUaGUgcmVxdWVzdGVkIGFtb3VudCBvZiByZXNvdXJjZXMgZm9yIHRoZSBwaXBlbGluZS4gRGVwZW5kaW5nIG9uIHRoZSBiYWNrZW5kLCB0aGUgcmVzb3VyY2VzIG1pZ2h0IGJlIGd1YXJhbnRlZWQsIG9yIG1pZ2h0IGJlIHR3ZWFrZWQgYmFzZWQgb24gdGhlIHV0aWxpemF0aW9uIG9mIHRoZSBwaXBlbGluZS4SQwoFc3RhdGUYByABKA4yLy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lLlN0YXRlQgPgQQMSRQoGc3RhdHVzGAggASgLMjAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZS5TdGF0dXNCA+BBAxJWCg9zZXJ2aWNlX2FjY291bnQYCiABKAsyOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lLlNlcnZpY2VBY2NvdW50QgPgQQEaTAoJUmVzb3VyY2VzEiAKDW1lbW9yeV9zaGFyZXMYASABKAlCCeBBArpIA8gBARIdCgpjcHVfc2hhcmVzGAIgASgJQgngQQK6SAPIAQEaFwoGU3RhdHVzEg0KBWVycm9yGAIgASgJGoUBCg5TZXJ2aWNlQWNjb3VudBIRCgljbGllbnRfaWQYASABKAkSYAoNY2xpZW50X3NlY3JldBgCIAEoCUJJukhGckQyQl5cJFx7c2VjcmV0c1wuW0EtWmEtel9dW0EtWmEtejAtOV9dKihcLltBLVphLXpfXVtBLVphLXowLTlfXSopP1x9JCKSAQoFU3RhdGUSFQoRU1RBVEVfVU5TUEVDSUZJRUQQABISCg5TVEFURV9TVEFSVElORxABEhEKDVNUQVRFX1JVTk5JTkcQAhISCg5TVEFURV9TVE9QUElORxADEhEKDVNUQVRFX1NUT1BQRUQQBBIPCgtTVEFURV9FUlJPUhAFEhMKD1NUQVRFX0NPTVBMRVRFRBAGSgQIBRAGSgQIBhAHUgdyZXF1ZXN0UgVsaW1pdCLHAgoOUGlwZWxpbmVDcmVhdGUSOgoMZGlzcGxheV9uYW1lGAEgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAiABKAlCCLpIBXIDGIACEh4KC2NvbmZpZ195YW1sGAMgASgJQgngQQK6SAPIAQESRgoJcmVzb3VyY2VzGAYgASgLMjMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZS5SZXNvdXJjZXMSVgoPc2VydmljZV9hY2NvdW50GAcgASgLMjgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZS5TZXJ2aWNlQWNjb3VudEID4EEBSgQIBBAFSgQIBRAGUgdyZXF1ZXN0UgVsaW1pdCJaChVDcmVhdGVQaXBlbGluZVJlcXVlc3QSQQoIcGlwZWxpbmUYASABKAsyLy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lQ3JlYXRlIlUKFkNyZWF0ZVBpcGVsaW5lUmVzcG9uc2USOwoIcGlwZWxpbmUYASABKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lIkAKEkdldFBpcGVsaW5lUmVxdWVzdBIqCgJpZBgBIAEoCUIe4EECukgYyAEBchMyEV5bQS1aYS16MC05LV8vXSskIlIKE0dldFBpcGVsaW5lUmVzcG9uc2USOwoIcGlwZWxpbmUYASABKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lItkCChRMaXN0UGlwZWxpbmVzUmVxdWVzdBJMCgZmaWx0ZXIYASABKAsyPC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkxpc3RQaXBlbGluZXNSZXF1ZXN0LkZpbHRlchKfAQoJcGFnZV9zaXplGAIgASgFQosBkkF1MmFMaW1pdCB0aGUgcGFnaW5hdGVkIHJlc3BvbnNlIHRvIGEgbnVtYmVyIG9mIGl0ZW1zLiBEZWZhdWx0cyB0byAxMDAuIFVzZSAtMSB0byBkaXNhYmxlIHBhZ2luYXRpb24uWQAAAAAAQI9AaQAAAAAAAPC/ukgQGg4Y6Aco////////////ARISCgpwYWdlX3Rva2VuGAMgASgJGj0KBkZpbHRlchIzCg1uYW1lX2NvbnRhaW5zGAEgASgJQhy6SBlyFxiAATISXltBLVphLXowLTktXyAvXSskIm4KFUxpc3RQaXBlbGluZXNSZXNwb25zZRI8CglwaXBlbGluZXMYASADKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lEhcKD25leHRfcGFnZV90b2tlbhgCIAEoCSLKAgoOUGlwZWxpbmVVcGRhdGUSOgoMZGlzcGxheV9uYW1lGAEgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSIAoLZGVzY3JpcHRpb24YAiABKAlCC7pICNgBAXIDGIACEh4KC2NvbmZpZ195YW1sGAMgASgJQgngQQK6SAPIAQESRgoJcmVzb3VyY2VzGAYgASgLMjMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZS5SZXNvdXJjZXMSVgoPc2VydmljZV9hY2NvdW50GAcgASgLMjgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZS5TZXJ2aWNlQWNjb3VudEID4EEBSgQIBBAFSgQIBRAGUgdyZXF1ZXN0UgVsaW1pdCKRAQoVVXBkYXRlUGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQSTAoIcGlwZWxpbmUYAiABKAsyLy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lVXBkYXRlQgngQQK6SAPIAQEiVQoWVXBkYXRlUGlwZWxpbmVSZXNwb25zZRI7CghwaXBlbGluZRgBIAEoCzIpLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuUGlwZWxpbmUiQwoVRGVsZXRlUGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiGAoWRGVsZXRlUGlwZWxpbmVSZXNwb25zZSJBChNTdG9wUGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiUwoUU3RvcFBpcGVsaW5lUmVzcG9uc2USOwoIcGlwZWxpbmUYASABKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lIkIKFFN0YXJ0UGlwZWxpbmVSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiVAoVU3RhcnRQaXBlbGluZVJlc3BvbnNlEjsKCHBpcGVsaW5lGAEgASgLMikucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZSInCiVHZXRQaXBlbGluZVNlcnZpY2VDb25maWdTY2hlbWFSZXF1ZXN0Ij8KJkdldFBpcGVsaW5lU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNlEhUKDWNvbmZpZ19zY2hlbWEYASABKAkiZQoSUGlwZWxpbmVzRm9yU2VjcmV0EhEKCXNlY3JldF9pZBgBIAEoCRI8CglwaXBlbGluZXMYAiADKAsyKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lIlEKHEdldFBpcGVsaW5lc0ZvclNlY3JldFJlcXVlc3QSMQoJc2VjcmV0X2lkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVpdW0EtWjAtOV9dKiQicgodR2V0UGlwZWxpbmVzRm9yU2VjcmV0UmVzcG9uc2USUQoUcGlwZWxpbmVzX2Zvcl9zZWNyZXQYASABKAsyMy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lc0ZvclNlY3JldCIeChxHZXRQaXBlbGluZXNCeVNlY3JldHNSZXF1ZXN0InIKHUdldFBpcGVsaW5lc0J5U2VjcmV0c1Jlc3BvbnNlElEKFHBpcGVsaW5lc19mb3Jfc2VjcmV0GAEgAygLMjMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5QaXBlbGluZXNGb3JTZWNyZXQygSUKD1BpcGVsaW5lU2VydmljZRKBAwoOQ3JlYXRlUGlwZWxpbmUSNi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkNyZWF0ZVBpcGVsaW5lUmVxdWVzdBo3LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuQ3JlYXRlUGlwZWxpbmVSZXNwb25zZSL9AZJBhwESIENyZWF0ZSBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lGidDcmVhdGUgYSBuZXcgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZS5KOgoDMjAxEjMKAk9LEi0KKxopLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuUGlwZWxpbmXavwcmCglwaXBlbGluZXMaGWRhdGFwbGFuZV9waXBlbGluZV9jcmVhdGWKph0ECAIQBILT5JMCOjoIcGlwZWxpbmViCHBpcGVsaW5lIiQvdjFhbHBoYTIvcmVkcGFuZGEtY29ubmVjdC9waXBlbGluZXMSpwMKC0dldFBpcGVsaW5lEjMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5HZXRQaXBlbGluZVJlcXVlc3QaNC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkdldFBpcGVsaW5lUmVzcG9uc2UirAKSQbIBEh1HZXQgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZRopR2V0IGEgc3BlY2lmaWMgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZS5KOgoDMjAwEjMKAk9LEi0KKxopLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuUGlwZWxpbmVKKgoDNDA0EiMKCU5vdCBGb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c9q/By8KCXBpcGVsaW5lcxIKcmVxdWVzdC5pZBoWZGF0YXBsYW5lX3BpcGVsaW5lX2dldIqmHQQIARAEgtPkkwI1YghwaXBlbGluZRIpL3YxYWxwaGEyL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzL3tpZH0StQMKDUxpc3RQaXBlbGluZXMSNS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkxpc3RQaXBlbGluZXNSZXF1ZXN0GjYucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5MaXN0UGlwZWxpbmVzUmVzcG9uc2UitAKSQbUBEh9MaXN0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzGklMaXN0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzLiBPcHRpb25hbDogZmlsdGVyIGJhc2VkIG9uIHBpcGVsaW5lIG5hbWUuSkcKAzIwMBJACgJPSxI6CjgaNi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkxpc3RQaXBlbGluZXNSZXNwb25zZeK/B0MKEnJlc3BvbnNlLnBpcGVsaW5lcxItCglwaXBlbGluZXMSB2VhY2guaWQaF2RhdGFwbGFuZV9waXBlbGluZV9saXN0iqYdBAgBEASC0+STAiYSJC92MWFscGhhMi9yZWRwYW5kYS1jb25uZWN0L3BpcGVsaW5lcxL2AwoOVXBkYXRlUGlwZWxpbmUSNi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlVwZGF0ZVBpcGVsaW5lUmVxdWVzdBo3LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuVXBkYXRlUGlwZWxpbmVSZXNwb25zZSLyApJB6wESIlVwZGF0ZSBhIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUaiAFVcGRhdGUgdGhlIFtjb25maWd1cmF0aW9uXShodHRwczovL2RvY3MucmVkcGFuZGEuY29tL3JlZHBhbmRhLWNsb3VkL2RldmVsb3AvY29ubmVjdC9jb25maWd1cmF0aW9uL2Fib3V0KSBvZiBhIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUuSjoKAzIwMBIzCgJPSxItCisaKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5l2r8HMgoJcGlwZWxpbmVzEgpyZXF1ZXN0LmlkGhlkYXRhcGxhbmVfcGlwZWxpbmVfdXBkYXRliqYdBAgCEASC0+STAj86CHBpcGVsaW5lYghwaXBlbGluZRopL3YxYWxwaGEyL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzL3tpZH0SgAMKDkRlbGV0ZVBpcGVsaW5lEjYucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5EZWxldGVQaXBlbGluZVJlcXVlc3QaNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkRlbGV0ZVBpcGVsaW5lUmVzcG9uc2Ui/AGSQYkBEiJEZWxldGUgYSBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lGiNEZWxldGUgYSBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lLkoSCgMyMDQSCwoHRGVsZXRlZBIASioKAzQwNBIjCglOb3QgRm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXPavwcyCglwaXBlbGluZXMSCnJlcXVlc3QuaWQaGWRhdGFwbGFuZV9waXBlbGluZV9kZWxldGWKph0ECAIQBILT5JMCKyopL3YxYWxwaGEyL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzL3tpZH0SuQMKDFN0b3BQaXBlbGluZRI0LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuU3RvcFBpcGVsaW5lUmVxdWVzdBo1LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuU3RvcFBpcGVsaW5lUmVzcG9uc2UiuwKSQbsBEiFTdG9wcyBhIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUaKVN0b3AgYSBydW5uaW5nIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUuSj8KAzIwMBI4CgdTdG9wcGVkEi0KKxopLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuUGlwZWxpbmVKKgoDNDA0EiMKCU5vdCBGb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c9q/BzAKCXBpcGVsaW5lcxIKcmVxdWVzdC5pZBoXZGF0YXBsYW5lX3BpcGVsaW5lX3N0b3CKph0ECAIQBILT5JMCOmIIcGlwZWxpbmUaLi92MWFscGhhMi9yZWRwYW5kYS1jb25uZWN0L3BpcGVsaW5lcy97aWR9L3N0b3ASvwMKDVN0YXJ0UGlwZWxpbmUSNS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlN0YXJ0UGlwZWxpbmVSZXF1ZXN0GjYucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5TdGFydFBpcGVsaW5lUmVzcG9uc2UivgKSQbwBEiFTdGFydCBhIFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmUaKlN0YXJ0IGEgc3RvcHBlZCBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lLko/CgMyMDASOAoHU3RhcnRlZBItCisaKS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLlBpcGVsaW5lSioKAzQwNBIjCglOb3QgRm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXPavwcxCglwaXBlbGluZXMSCnJlcXVlc3QuaWQaGGRhdGFwbGFuZV9waXBlbGluZV9zdGFydIqmHQQIAhAEgtPkkwI7YghwaXBlbGluZRovL3YxYWxwaGEyL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzL3tpZH0vc3RhcnQS7wQKHkdldFBpcGVsaW5lU2VydmljZUNvbmZpZ1NjaGVtYRJGLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuR2V0UGlwZWxpbmVTZXJ2aWNlQ29uZmlnU2NoZW1hUmVxdWVzdBpHLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuR2V0UGlwZWxpbmVTZXJ2aWNlQ29uZmlnU2NoZW1hUmVzcG9uc2UiuwOSQdUCEkFSZXRyaWV2ZSB0aGUgc2NoZW1hIGZvciBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lIGNvbmZpZ3VyYXRpb25zLhq1AVRoZSBjb25maWd1cmF0aW9uIHNjaGVtYSBpbmNsdWRlcyBhdmFpbGFibGUgW2NvbXBvbmVudHMgYW5kIHByb2Nlc3NvcnNdKGh0dHBzOi8vZG9jcy5yZWRwYW5kYS5jb20vcmVkcGFuZGEtY2xvdWQvZGV2ZWxvcC9jb25uZWN0L2NvbXBvbmVudHMvYWJvdXQpIGluIHRoaXMgUmVkcGFuZGEgQ29ubmVjdCBpbnN0YW5jZS5KWAoDMjAwElEKAk9LEksKSRpHLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuR2V0UGlwZWxpbmVTZXJ2aWNlQ29uZmlnU2NoZW1hUmVzcG9uc2XavwcjCglwaXBlbGluZXMaFmRhdGFwbGFuZV9waXBlbGluZV9nZXSKph0ECAEQBILT5JMCLWIBKhIoL3YxYWxwaGEyL3JlZHBhbmRhLWNvbm5lY3QvY29uZmlnLXNjaGVtYRK0AwoVR2V0UGlwZWxpbmVzRm9yU2VjcmV0Ej0ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5HZXRQaXBlbGluZXNGb3JTZWNyZXRSZXF1ZXN0Gj4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5HZXRQaXBlbGluZXNGb3JTZWNyZXRSZXNwb25zZSKbApJBsAESKUdldCBSZWRwYW5kYSBDb25uZWN0IHBpcGVsaW5lcyBmb3Igc2VjcmV0GjJHZXQgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZXMgZm9yIGEgZ2l2ZW4gc2VjcmV0LkpPCgMyMDASSAoCT0sSQgpAGj4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMi5HZXRQaXBlbGluZXNGb3JTZWNyZXRSZXNwb25zZdq/ByQKCXBpcGVsaW5lcxoXZGF0YXBsYW5lX3BpcGVsaW5lX2xpc3SKph0ECAEQBILT5JMCMRIvL3YxYWxwaGEyL3JlZHBhbmRhLWNvbm5lY3QvcGlwZWxpbmVzLWZvci1zZWNyZXQSrAMKFUdldFBpcGVsaW5lc0J5U2VjcmV0cxI9LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuR2V0UGlwZWxpbmVzQnlTZWNyZXRzUmVxdWVzdBo+LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTIuR2V0UGlwZWxpbmVzQnlTZWNyZXRzUmVzcG9uc2UikwKSQagBEilHZXQgUmVkcGFuZGEgQ29ubmVjdCBwaXBlbGluZXMgYnkgc2VjcmV0cxoqR2V0IFJlZHBhbmRhIENvbm5lY3QgcGlwZWxpbmVzIGJ5IHNlY3JldHMuSk8KAzIwMBJICgJPSxJCCkAaPi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEyLkdldFBpcGVsaW5lc0J5U2VjcmV0c1Jlc3BvbnNl2r8HJAoJcGlwZWxpbmVzGhdkYXRhcGxhbmVfcGlwZWxpbmVfbGlzdIqmHQQIARAEgtPkkwIxEi8vdjFhbHBoYTIvcmVkcGFuZGEtY29ubmVjdC9waXBlbGluZXMtYnktc2VjcmV0cxq1AZJBsQEKJFJlZHBhbmRhIENvbm5lY3QgUGlwZWxpbmUgKHYxYWxwaGEyKRKIAUNyZWF0ZSBhbmQgbWFuYWdlIFtSZWRwYW5kYSBDb25uZWN0XShodHRwczovL2RvY3MucmVkcGFuZGEuY29tL3JlZHBhbmRhLWNsb3VkL2RldmVsb3AvY29ubmVjdC9hYm91dCkgcGlwZWxpbmVzIGFuZCB0aGVpciBjb25maWd1cmF0aW9ucy5iBnByb3RvMw", [file_buf_validate_validate, file_google_api_annotations, file_google_api_field_behavior, file_protoc_gen_openapiv2_options_annotations, file_redpanda_api_auth_v1_authorization, file_redpanda_api_common_v1_options]); /** * Defines the pipeline resource. diff --git a/frontend/src/protogen/redpanda/api/dataplane/v1alpha3/ai_agent_pb.ts b/frontend/src/protogen/redpanda/api/dataplane/v1alpha3/ai_agent_pb.ts index 55607ec21c..4f64aec4a2 100644 --- a/frontend/src/protogen/redpanda/api/dataplane/v1alpha3/ai_agent_pb.ts +++ b/frontend/src/protogen/redpanda/api/dataplane/v1alpha3/ai_agent_pb.ts @@ -12,6 +12,7 @@ import type { FieldMask } from "@bufbuild/protobuf/wkt"; import { file_google_protobuf_field_mask } from "@bufbuild/protobuf/wkt"; import { file_protoc_gen_openapiv2_options_annotations } from "../../../../protoc-gen-openapiv2/options/annotations_pb"; import { file_redpanda_api_auth_v1_authorization } from "../../auth/v1/authorization_pb"; +import { file_redpanda_api_common_v1_options } from "../../common/v1/options_pb"; import type { Pipeline_Resources } from "../v1/pipeline_pb"; import { file_redpanda_api_dataplane_v1_pipeline } from "../v1/pipeline_pb"; import type { Message } from "@bufbuild/protobuf"; @@ -20,7 +21,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file redpanda/api/dataplane/v1alpha3/ai_agent.proto. */ export const file_redpanda_api_dataplane_v1alpha3_ai_agent: GenFile = /*@__PURE__*/ - fileDesc("Ci5yZWRwYW5kYS9hcGkvZGF0YXBsYW5lL3YxYWxwaGEzL2FpX2FnZW50LnByb3RvEh9yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzIoweCgdBSUFnZW50EicKAmlkGAEgASgJQhvgQQO6SBVyEzIRXltBLVphLXowLTktXy9dKyQSOgoMZGlzcGxheV9uYW1lGAIgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAyABKAlCCLpIBXIDGIACEnQKDXN5c3RlbV9wcm9tcHQYBCABKAlCXZJBTTJLU3lzdGVtIGluc3RydWN0aW9ucyB0aGF0IGRlZmluZSBob3cgdGhlIEFJIGFnZW50IHNob3VsZCBiZWhhdmUgYW5kIHJlc3BvbmQu4EECukgHyAEBcgIQChJOCghwcm92aWRlchgFIAEoCzIxLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudC5Qcm92aWRlckIJ4EECukgDyAEBEh0KBW1vZGVsGAcgASgJQg7gQQK6SAjIAQFyAxiAARJNCgttY3Bfc2VydmVycxgIIAMoCzI4LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudC5NY3BTZXJ2ZXJzRW50cnkS+AEKCXJlc291cmNlcxgJIAEoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUuUmVzb3VyY2VzQrUBkkGxATKuAVRoZSByZXF1ZXN0ZWQgYW1vdW50IG9mIHJlc291cmNlcyBmb3IgdGhlIEFJIEFnZW50LiBEZXBlbmRpbmcgb24gdGhlIGJhY2tlbmQsIHRoZSByZXNvdXJjZXMgbWlnaHQgYmUgZ3VhcmFudGVlZCwgb3IgbWlnaHQgYmUgdHdlYWtlZCBiYXNlZCBvbiB0aGUgdXRpbGl6YXRpb24gb2YgdGhlIEFJIEFnZW50LhJvCgR0YWdzGAogAygLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LlRhZ3NFbnRyeUItukgqmgEnEBAqI3IhMh9eKFtccHtMfVxwe1p9XHB7Tn1fLjovPStcLUBdKikkEkIKBXN0YXRlGAsgASgOMi4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LlN0YXRlQgPgQQMSEAoDdXJsGAwgASgJQgPgQQMSIQoObWF4X2l0ZXJhdGlvbnMYDSABKAVCCbpIBhoEGGQoARJbCg9zZXJ2aWNlX2FjY291bnQYDiABKAsyNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuU2VydmljZUFjY291bnRCCeBBArpIA8gBARJsCglzdWJhZ2VudHMYDyADKAsyNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuU3ViYWdlbnRzRW50cnlCILpIHZoBGiIYchYQARhAMhBeW0EtWmEtejAtOV8tXSskEkcKB2dhdGV3YXkYECABKAsyNi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuR2F0ZXdheUNvbmZpZxJGCgphZ2VudF9jYXJkGBEgASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LkFnZW50Q2FyZBplCg9NY3BTZXJ2ZXJzRW50cnkSCwoDa2V5GAEgASgJEkEKBXZhbHVlGAIgASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50Lk1DUFNlcnZlcjoCOAEaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaYwoOU3ViYWdlbnRzRW50cnkSCwoDa2V5GAEgASgJEkAKBXZhbHVlGAIgASgLMjEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LlN1YmFnZW50OgI4ARr9BgoIUHJvdmlkZXISSgoGb3BlbmFpGAEgASgLMjgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LlByb3ZpZGVyLk9wZW5BSUgAElAKCWFudGhyb3BpYxgCIAEoCzI7LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudC5Qcm92aWRlci5BbnRocm9waWNIABJKCgZnb29nbGUYAyABKAsyOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuUHJvdmlkZXIuR29vZ2xlSAASXwoRb3BlbmFpX2NvbXBhdGlibGUYBCABKAsyQi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuUHJvdmlkZXIuT3BlbkFJQ29tcGF0aWJsZUgAGnkKBk9wZW5BSRJdCgdhcGlfa2V5GAEgASgJQky6SEnYAQFyRDJCXlwkXHtzZWNyZXRzXC5bQS1aYS16X11bQS1aYS16MC05X10qKFwuW0EtWmEtel9dW0EtWmEtejAtOV9dKik/XH0kEhAKCGJhc2VfdXJsGAIgASgJGnwKCUFudGhyb3BpYxJdCgdhcGlfa2V5GAEgASgJQky6SEnYAQFyRDJCXlwkXHtzZWNyZXRzXC5bQS1aYS16X11bQS1aYS16MC05X10qKFwuW0EtWmEtel9dW0EtWmEtejAtOV9dKik/XH0kEhAKCGJhc2VfdXJsGAIgASgJGnkKBkdvb2dsZRJdCgdhcGlfa2V5GAEgASgJQky6SEnYAQFyRDJCXlwkXHtzZWNyZXRzXC5bQS1aYS16X11bQS1aYS16MC05X10qKFwuW0EtWmEtel9dW0EtWmEtejAtOV9dKik/XH0kEhAKCGJhc2VfdXJsGAIgASgJGp4BChBPcGVuQUlDb21wYXRpYmxlEl0KB2FwaV9rZXkYASABKAlCTLpISdgBAXJEMkJeXCRce3NlY3JldHNcLltBLVphLXpfXVtBLVphLXowLTlfXSooXC5bQS1aYS16X11bQS1aYS16MC05X10qKT9cfSQSKwoIYmFzZV91cmwYAiABKAlCGeBBArpIE8gBAXIOMgxeaHR0cHM/Oi8vLipCEQoIcHJvdmlkZXISBbpIAggBGpYBCg5TZXJ2aWNlQWNjb3VudBIcCgljbGllbnRfaWQYASABKAlCCeBBArpIA8gBARJmCg1jbGllbnRfc2VjcmV0GAIgASgJQk/gQQK6SEnIAQFyRDJCXlwkXHtzZWNyZXRzXC5bQS1aYS16X11bQS1aYS16MC05X10qKFwuW0EtWmEtel9dW0EtWmEtejAtOV9dKik/XH0kGjwKCU1DUFNlcnZlchIKCgJpZBgBIAEoCRIjChF0b29sX2ZpbHRlcl9yZWdleBgCIAEoCUIIukgFcgMYgAIamwMKCFN1YmFnZW50ErABCg1zeXN0ZW1fcHJvbXB0GAEgASgJQpgBkkGHATKEAVN5c3RlbSBpbnN0cnVjdGlvbnMgdGhhdCBkZWZpbmUgaG93IHRoaXMgc3ViYWdlbnQgc2hvdWxkIGJlaGF2ZS4gVGhlIHN1YmFnZW50IGluaGVyaXRzIHRoZSBwcm92aWRlciBhbmQgbW9kZWwgZnJvbSBpdHMgcGFyZW50IGFnZW50LuBBArpIB8gBAXICEAoSVgoLbWNwX3NlcnZlcnMYAiADKAsyQS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuU3ViYWdlbnQuTWNwU2VydmVyc0VudHJ5Eh0KC2Rlc2NyaXB0aW9uGAMgASgJQgi6SAVyAxiAAhplCg9NY3BTZXJ2ZXJzRW50cnkSCwoDa2V5GAEgASgJEkEKBXZhbHVlGAIgASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50Lk1DUFNlcnZlcjoCOAEaegoNR2F0ZXdheUNvbmZpZxJpChJ2aXJ0dWFsX2dhdGV3YXlfaWQYASABKAlCTZJBLzItVmlydHVhbCBnYXRld2F5IElEICgyMC1jaGFyYWN0ZXIgWElEIGZvcm1hdCku4EECukgVyAEBchAyC15bYS16MC05XSskmAEUGtsDCglBZ2VudENhcmQSGgoIaWNvbl91cmwYASABKAlCCLpIBXIDGIAEEiMKEWRvY3VtZW50YXRpb25fdXJsGAIgASgJQgi6SAVyAxiABBJNCghwcm92aWRlchgDIAEoCzI7LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudC5BZ2VudENhcmQuUHJvdmlkZXISSAoGc2tpbGxzGAQgAygLMjgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LkFnZW50Q2FyZC5Ta2lsbBpBCghQcm92aWRlchIeCgxvcmdhbml6YXRpb24YASABKAlCCLpIBXIDGIABEhUKA3VybBgCIAEoCUIIukgFcgMYgAQasAEKBVNraWxsEhkKAmlkGAEgASgJQg3gQQK6SAfIAQFyAhhAEhwKBG5hbWUYAiABKAlCDuBBArpICMgBAXIDGIABEiMKC2Rlc2NyaXB0aW9uGAMgASgJQg7gQQK6SAjIAQFyAxiABBIMCgR0YWdzGAQgAygJEhAKCGV4YW1wbGVzGAUgAygJEhMKC2lucHV0X21vZGVzGAYgAygJEhQKDG91dHB1dF9tb2RlcxgHIAMoCSJ9CgVTdGF0ZRIVChFTVEFURV9VTlNQRUNJRklFRBAAEhIKDlNUQVRFX1NUQVJUSU5HEAESEQoNU1RBVEVfUlVOTklORxACEhIKDlNUQVRFX1NUT1BQSU5HEAMSEQoNU1RBVEVfU1RPUFBFRBAEEg8KC1NUQVRFX0VSUk9SEAU6QepBPgoncmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy9BSUFnZW50KglhaV9hZ2VudHMyCGFpX2FnZW50IqQKCg1BSUFnZW50Q3JlYXRlEjoKDGRpc3BsYXlfbmFtZRgBIAEoCUIk4EECukgeyAEBchkQAxiAATISXltBLVphLXowLTktXyAvXSskEh0KC2Rlc2NyaXB0aW9uGAIgASgJQgi6SAVyAxiAAhJ0Cg1zeXN0ZW1fcHJvbXB0GAMgASgJQl2SQU0yS1N5c3RlbSBpbnN0cnVjdGlvbnMgdGhhdCBkZWZpbmUgaG93IHRoZSBBSSBhZ2VudCBzaG91bGQgYmVoYXZlIGFuZCByZXNwb25kLuBBArpIB8gBAXICEAoSTgoIcHJvdmlkZXIYBCABKAsyMS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuUHJvdmlkZXJCCeBBArpIA8gBARIdCgVtb2RlbBgGIAEoCUIO4EECukgIyAEBcgMYgAESUwoLbWNwX3NlcnZlcnMYByADKAsyPi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnRDcmVhdGUuTWNwU2VydmVyc0VudHJ5EnUKBHRhZ3MYCCADKAsyOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnRDcmVhdGUuVGFnc0VudHJ5Qi26SCqaAScQECojciEyH14oW1xwe0x9XHB7Wn1ccHtOfV8uOi89K1wtQF0qKSQSQAoJcmVzb3VyY2VzGAkgASgLMi0ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5SZXNvdXJjZXMSIQoObWF4X2l0ZXJhdGlvbnMYCiABKAVCCbpIBhoEGGQoARJbCg9zZXJ2aWNlX2FjY291bnQYCyABKAsyNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuU2VydmljZUFjY291bnRCCeBBArpIA8gBARJyCglzdWJhZ2VudHMYDCADKAsyPS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnRDcmVhdGUuU3ViYWdlbnRzRW50cnlCILpIHZoBGiIYchYQARhAMhBeW0EtWmEtejAtOV8tXSskEkcKB2dhdGV3YXkYDSABKAsyNi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuR2F0ZXdheUNvbmZpZxJGCgphZ2VudF9jYXJkGA4gASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LkFnZW50Q2FyZBplCg9NY3BTZXJ2ZXJzRW50cnkSCwoDa2V5GAEgASgJEkEKBXZhbHVlGAIgASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50Lk1DUFNlcnZlcjoCOAEaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaYwoOU3ViYWdlbnRzRW50cnkSCwoDa2V5GAEgASgJEkAKBXZhbHVlGAIgASgLMjEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LlN1YmFnZW50OgI4ATpH6kFECi1yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzL0FJQWdlbnRDcmVhdGUqCWFpX2FnZW50czIIYWlfYWdlbnQiWAoUQ3JlYXRlQUlBZ2VudFJlcXVlc3QSQAoIYWlfYWdlbnQYASABKAsyLi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnRDcmVhdGUiUwoVQ3JlYXRlQUlBZ2VudFJlc3BvbnNlEjoKCGFpX2FnZW50GAEgASgLMigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50Ij8KEUdldEFJQWdlbnRSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiUAoSR2V0QUlBZ2VudFJlc3BvbnNlEjoKCGFpX2FnZW50GAEgASgLMigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50IrkFChNMaXN0QUlBZ2VudHNSZXF1ZXN0EksKBmZpbHRlchgBIAEoCzI7LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdEFJQWdlbnRzUmVxdWVzdC5GaWx0ZXISnQEKCXBhZ2Vfc2l6ZRgCIAEoBUKJAZJBdDJgTGltaXQgdGhlIHBhZ2luYXRlZCByZXNwb25zZSB0byBhIG51bWJlciBvZiBpdGVtcy4gRGVmYXVsdHMgdG8gNTAuIFVzZSAtMSB0byBkaXNhYmxlIHBhZ2luYXRpb24uWQAAAAAAAFlAaQAAAAAAAPC/ukgPGg0YZCj///////////8BEhIKCnBhZ2VfdG9rZW4YAyABKAkaoAMKBkZpbHRlchJ5Cg1uYW1lX2NvbnRhaW5zGAEgASgJQmKSQUAyPkFueSBBSSBhZ2VudHMgdGhhdCBwYXJ0aWFsbHkgbWF0Y2ggdGhpcyBuYW1lIHdpbGwgYmUgcmV0dXJuZWQuukgc2AEBchcYgAEyEl5bQS1aYS16MC05LV8gL10rJBLDAQoEdGFncxgCIAMoCzJFLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdEFJQWdlbnRzUmVxdWVzdC5GaWx0ZXIuVGFnc0VudHJ5Qm6SQT4yPEFJIGFnZW50cyB0aGF0IG1hdGNoIGFsbCB0aGUgcHJvdmlkZWQgdGFncyB3aWxsIGJlIHJldHVybmVkLrpIKpoBJxAQKiNyITIfXihbXHB7TH1ccHtafVxwe059Xy46Lz0rXC1AXSopJBIRCglzZWNyZXRfaWQYAyABKAkSFQoNbWNwX3NlcnZlcl9pZBgEIAEoCRorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJsChRMaXN0QUlBZ2VudHNSZXNwb25zZRI7CglhaV9hZ2VudHMYASADKAsyKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQSFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJIvwJCg1BSUFnZW50VXBkYXRlEjQKDGRpc3BsYXlfbmFtZRgBIAEoCUIeukgbchkQAxiAATISXltBLVphLXowLTktXyAvXSskEh0KC2Rlc2NyaXB0aW9uGAIgASgJQgi6SAVyAxiAAhJuCg1zeXN0ZW1fcHJvbXB0GAMgASgJQleSQU0yS1N5c3RlbSBpbnN0cnVjdGlvbnMgdGhhdCBkZWZpbmUgaG93IHRoZSBBSSBhZ2VudCBzaG91bGQgYmVoYXZlIGFuZCByZXNwb25kLrpIBHICEAoSQwoIcHJvdmlkZXIYBCABKAsyMS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuUHJvdmlkZXISFwoFbW9kZWwYBiABKAlCCLpIBXIDGIABElMKC21jcF9zZXJ2ZXJzGAcgAygLMj4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50VXBkYXRlLk1jcFNlcnZlcnNFbnRyeRJ1CgR0YWdzGAggAygLMjgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50VXBkYXRlLlRhZ3NFbnRyeUItukgqmgEnEBAqI3IhMh9eKFtccHtMfVxwe1p9XHB7Tn1fLjovPStcLUBdKikkEkAKCXJlc291cmNlcxgJIAEoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUuUmVzb3VyY2VzEiEKDm1heF9pdGVyYXRpb25zGAogASgFQgm6SAYaBBhkKAESUAoPc2VydmljZV9hY2NvdW50GAsgASgLMjcucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LlNlcnZpY2VBY2NvdW50EnIKCXN1YmFnZW50cxgMIAMoCzI9LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudFVwZGF0ZS5TdWJhZ2VudHNFbnRyeUIgukgdmgEaIhhyFhABGEAyEF5bQS1aYS16MC05Xy1dKyQSRwoHZ2F0ZXdheRgNIAEoCzI2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudC5HYXRld2F5Q29uZmlnEkYKCmFnZW50X2NhcmQYDiABKAsyMi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuQWdlbnRDYXJkGmUKD01jcFNlcnZlcnNFbnRyeRILCgNrZXkYASABKAkSQQoFdmFsdWUYAiABKAsyMi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuTUNQU2VydmVyOgI4ARorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ARpjCg5TdWJhZ2VudHNFbnRyeRILCgNrZXkYASABKAkSQAoFdmFsdWUYAiABKAsyMS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuU3ViYWdlbnQ6AjgBOkfqQUQKLXJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMvQUlBZ2VudFVwZGF0ZSoJYWlfYWdlbnRzMghhaV9hZ2VudCLAAQoUVXBkYXRlQUlBZ2VudFJlcXVlc3QSKgoCaWQYASABKAlCHuBBArpIGMgBAXITMhFeW0EtWmEtejAtOS1fL10rJBJLCghhaV9hZ2VudBgCIAEoCzIuLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudFVwZGF0ZUIJ4EECukgDyAEBEi8KC3VwZGF0ZV9tYXNrGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJTChVVcGRhdGVBSUFnZW50UmVzcG9uc2USOgoIYWlfYWdlbnQYASABKAsyKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQiQgoURGVsZXRlQUlBZ2VudFJlcXVlc3QSKgoCaWQYASABKAlCHuBBArpIGMgBAXITMhFeW0EtWmEtejAtOS1fL10rJCIXChVEZWxldGVBSUFnZW50UmVzcG9uc2UiQAoSU3RvcEFJQWdlbnRSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiUQoTU3RvcEFJQWdlbnRSZXNwb25zZRI6CghhaV9hZ2VudBgBIAEoCzIoLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudCJBChNTdGFydEFJQWdlbnRSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiUgoUU3RhcnRBSUFnZW50UmVzcG9uc2USOgoIYWlfYWdlbnQYASABKAsyKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQythEKDkFJQWdlbnRTZXJ2aWNlEpoCCg1DcmVhdGVBSUFnZW50EjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5DcmVhdGVBSUFnZW50UmVxdWVzdBo2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQ3JlYXRlQUlBZ2VudFJlc3BvbnNlIpkBkkFpEg9DcmVhdGUgQUkgQWdlbnQaFkNyZWF0ZSBhIG5ldyBBSSBhZ2VudC5KPgoDMjAxEjcKB0NyZWF0ZWQSLAoqGigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50iqYdBAgCEAiC0+STAh86CGFpX2FnZW50IhMvdjFhbHBoYTMvYWktYWdlbnRzErMCCgpHZXRBSUFnZW50EjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5HZXRBSUFnZW50UmVxdWVzdBozLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuR2V0QUlBZ2VudFJlc3BvbnNlIrsBkkGPARIMR2V0IEFJIEFnZW50GhhHZXQgYSBzcGVjaWZpYyBBSSBhZ2VudC5KOQoDMjAwEjIKAk9LEiwKKhooLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudEoqCgM0MDQSIwoJTm90IEZvdW5kEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVziqYdBAgBEAiC0+STAhoSGC92MWFscGhhMy9haS1hZ2VudHMve2lkfRK3AgoMTGlzdEFJQWdlbnRzEjQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5MaXN0QUlBZ2VudHNSZXF1ZXN0GjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5MaXN0QUlBZ2VudHNSZXNwb25zZSK5AZJBkgESDkxpc3QgQUkgQWdlbnRzGjhMaXN0IEFJIGFnZW50cy4gT3B0aW9uYWw6IGZpbHRlciBiYXNlZCBvbiBBSSBhZ2VudCBuYW1lLkpGCgMyMDASPwoCT0sSOQo3GjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5MaXN0QUlBZ2VudHNSZXNwb25zZYqmHQQIARAIgtPkkwIVEhMvdjFhbHBoYTMvYWktYWdlbnRzEqwCCg1VcGRhdGVBSUFnZW50EjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5VcGRhdGVBSUFnZW50UmVxdWVzdBo2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuVXBkYXRlQUlBZ2VudFJlc3BvbnNlIqsBkkF2Eg9VcGRhdGUgQUkgQWdlbnQaKFVwZGF0ZSB0aGUgY29uZmlndXJhdGlvbiBvZiBhbiBBSSBhZ2VudC5KOQoDMjAwEjIKAk9LEiwKKhooLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudIqmHQQIAhAIgtPkkwIkOghhaV9hZ2VudBoYL3YxYWxwaGEzL2FpLWFnZW50cy97aWR9EpICCg1EZWxldGVBSUFnZW50EjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5EZWxldGVBSUFnZW50UmVxdWVzdBo2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuRGVsZXRlQUlBZ2VudFJlc3BvbnNlIpEBkkFmEg9EZWxldGUgQUkgQWdlbnQaE0RlbGV0ZSBhbiBBSSBhZ2VudC5KEgoDMjA0EgsKB0RlbGV0ZWQSAEoqCgM0MDQSIwoJTm90IEZvdW5kEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVziqYdBAgCEAiC0+STAhoqGC92MWFscGhhMy9haS1hZ2VudHMve2lkfRLBAgoLU3RvcEFJQWdlbnQSMy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLlN0b3BBSUFnZW50UmVxdWVzdBo0LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuU3RvcEFJQWdlbnRSZXNwb25zZSLGAZJBlQESDVN0b3AgQUkgQWdlbnQaGFN0b3AgYSBydW5uaW5nIEFJIGFnZW50Lko+CgMyMDASNwoHU3RvcHBlZBIsCioaKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnRKKgoDNDA0EiMKCU5vdCBGb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c4qmHQQIAhAIgtPkkwIfGh0vdjFhbHBoYTMvYWktYWdlbnRzL3tpZH06c3RvcBLHAgoMU3RhcnRBSUFnZW50EjQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5TdGFydEFJQWdlbnRSZXF1ZXN0GjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5TdGFydEFJQWdlbnRSZXNwb25zZSLJAZJBlwESDlN0YXJ0IEFJIEFnZW50GhlTdGFydCBhIHN0b3BwZWQgQUkgYWdlbnQuSj4KAzIwMBI3CgdTdGFydGVkEiwKKhooLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudEoqCgM0MDQSIwoJTm90IEZvdW5kEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVziqYdBAgCEAiC0+STAiAaHi92MWFscGhhMy9haS1hZ2VudHMve2lkfTpzdGFydBpFkkFCCglBSSBBZ2VudHMSNUNyZWF0ZSBhbmQgbWFuYWdlIEFJIGFnZW50cyBhbmQgdGhlaXIgY29uZmlndXJhdGlvbnMuYgZwcm90bzM", [file_buf_validate_validate, file_google_api_annotations, file_google_api_field_behavior, file_google_api_resource, file_google_protobuf_field_mask, file_protoc_gen_openapiv2_options_annotations, file_redpanda_api_auth_v1_authorization, file_redpanda_api_dataplane_v1_pipeline]); + fileDesc("Ci5yZWRwYW5kYS9hcGkvZGF0YXBsYW5lL3YxYWxwaGEzL2FpX2FnZW50LnByb3RvEh9yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzIoweCgdBSUFnZW50EicKAmlkGAEgASgJQhvgQQO6SBVyEzIRXltBLVphLXowLTktXy9dKyQSOgoMZGlzcGxheV9uYW1lGAIgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAyABKAlCCLpIBXIDGIACEnQKDXN5c3RlbV9wcm9tcHQYBCABKAlCXZJBTTJLU3lzdGVtIGluc3RydWN0aW9ucyB0aGF0IGRlZmluZSBob3cgdGhlIEFJIGFnZW50IHNob3VsZCBiZWhhdmUgYW5kIHJlc3BvbmQu4EECukgHyAEBcgIQChJOCghwcm92aWRlchgFIAEoCzIxLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudC5Qcm92aWRlckIJ4EECukgDyAEBEh0KBW1vZGVsGAcgASgJQg7gQQK6SAjIAQFyAxiAARJNCgttY3Bfc2VydmVycxgIIAMoCzI4LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudC5NY3BTZXJ2ZXJzRW50cnkS+AEKCXJlc291cmNlcxgJIAEoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUuUmVzb3VyY2VzQrUBkkGxATKuAVRoZSByZXF1ZXN0ZWQgYW1vdW50IG9mIHJlc291cmNlcyBmb3IgdGhlIEFJIEFnZW50LiBEZXBlbmRpbmcgb24gdGhlIGJhY2tlbmQsIHRoZSByZXNvdXJjZXMgbWlnaHQgYmUgZ3VhcmFudGVlZCwgb3IgbWlnaHQgYmUgdHdlYWtlZCBiYXNlZCBvbiB0aGUgdXRpbGl6YXRpb24gb2YgdGhlIEFJIEFnZW50LhJvCgR0YWdzGAogAygLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LlRhZ3NFbnRyeUItukgqmgEnEBAqI3IhMh9eKFtccHtMfVxwe1p9XHB7Tn1fLjovPStcLUBdKikkEkIKBXN0YXRlGAsgASgOMi4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LlN0YXRlQgPgQQMSEAoDdXJsGAwgASgJQgPgQQMSIQoObWF4X2l0ZXJhdGlvbnMYDSABKAVCCbpIBhoEGGQoARJbCg9zZXJ2aWNlX2FjY291bnQYDiABKAsyNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuU2VydmljZUFjY291bnRCCeBBArpIA8gBARJsCglzdWJhZ2VudHMYDyADKAsyNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuU3ViYWdlbnRzRW50cnlCILpIHZoBGiIYchYQARhAMhBeW0EtWmEtejAtOV8tXSskEkcKB2dhdGV3YXkYECABKAsyNi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuR2F0ZXdheUNvbmZpZxJGCgphZ2VudF9jYXJkGBEgASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LkFnZW50Q2FyZBplCg9NY3BTZXJ2ZXJzRW50cnkSCwoDa2V5GAEgASgJEkEKBXZhbHVlGAIgASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50Lk1DUFNlcnZlcjoCOAEaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaYwoOU3ViYWdlbnRzRW50cnkSCwoDa2V5GAEgASgJEkAKBXZhbHVlGAIgASgLMjEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LlN1YmFnZW50OgI4ARr9BgoIUHJvdmlkZXISSgoGb3BlbmFpGAEgASgLMjgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LlByb3ZpZGVyLk9wZW5BSUgAElAKCWFudGhyb3BpYxgCIAEoCzI7LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudC5Qcm92aWRlci5BbnRocm9waWNIABJKCgZnb29nbGUYAyABKAsyOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuUHJvdmlkZXIuR29vZ2xlSAASXwoRb3BlbmFpX2NvbXBhdGlibGUYBCABKAsyQi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuUHJvdmlkZXIuT3BlbkFJQ29tcGF0aWJsZUgAGnkKBk9wZW5BSRJdCgdhcGlfa2V5GAEgASgJQky6SEnYAQFyRDJCXlwkXHtzZWNyZXRzXC5bQS1aYS16X11bQS1aYS16MC05X10qKFwuW0EtWmEtel9dW0EtWmEtejAtOV9dKik/XH0kEhAKCGJhc2VfdXJsGAIgASgJGnwKCUFudGhyb3BpYxJdCgdhcGlfa2V5GAEgASgJQky6SEnYAQFyRDJCXlwkXHtzZWNyZXRzXC5bQS1aYS16X11bQS1aYS16MC05X10qKFwuW0EtWmEtel9dW0EtWmEtejAtOV9dKik/XH0kEhAKCGJhc2VfdXJsGAIgASgJGnkKBkdvb2dsZRJdCgdhcGlfa2V5GAEgASgJQky6SEnYAQFyRDJCXlwkXHtzZWNyZXRzXC5bQS1aYS16X11bQS1aYS16MC05X10qKFwuW0EtWmEtel9dW0EtWmEtejAtOV9dKik/XH0kEhAKCGJhc2VfdXJsGAIgASgJGp4BChBPcGVuQUlDb21wYXRpYmxlEl0KB2FwaV9rZXkYASABKAlCTLpISdgBAXJEMkJeXCRce3NlY3JldHNcLltBLVphLXpfXVtBLVphLXowLTlfXSooXC5bQS1aYS16X11bQS1aYS16MC05X10qKT9cfSQSKwoIYmFzZV91cmwYAiABKAlCGeBBArpIE8gBAXIOMgxeaHR0cHM/Oi8vLipCEQoIcHJvdmlkZXISBbpIAggBGpYBCg5TZXJ2aWNlQWNjb3VudBIcCgljbGllbnRfaWQYASABKAlCCeBBArpIA8gBARJmCg1jbGllbnRfc2VjcmV0GAIgASgJQk/gQQK6SEnIAQFyRDJCXlwkXHtzZWNyZXRzXC5bQS1aYS16X11bQS1aYS16MC05X10qKFwuW0EtWmEtel9dW0EtWmEtejAtOV9dKik/XH0kGjwKCU1DUFNlcnZlchIKCgJpZBgBIAEoCRIjChF0b29sX2ZpbHRlcl9yZWdleBgCIAEoCUIIukgFcgMYgAIamwMKCFN1YmFnZW50ErABCg1zeXN0ZW1fcHJvbXB0GAEgASgJQpgBkkGHATKEAVN5c3RlbSBpbnN0cnVjdGlvbnMgdGhhdCBkZWZpbmUgaG93IHRoaXMgc3ViYWdlbnQgc2hvdWxkIGJlaGF2ZS4gVGhlIHN1YmFnZW50IGluaGVyaXRzIHRoZSBwcm92aWRlciBhbmQgbW9kZWwgZnJvbSBpdHMgcGFyZW50IGFnZW50LuBBArpIB8gBAXICEAoSVgoLbWNwX3NlcnZlcnMYAiADKAsyQS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuU3ViYWdlbnQuTWNwU2VydmVyc0VudHJ5Eh0KC2Rlc2NyaXB0aW9uGAMgASgJQgi6SAVyAxiAAhplCg9NY3BTZXJ2ZXJzRW50cnkSCwoDa2V5GAEgASgJEkEKBXZhbHVlGAIgASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50Lk1DUFNlcnZlcjoCOAEaegoNR2F0ZXdheUNvbmZpZxJpChJ2aXJ0dWFsX2dhdGV3YXlfaWQYASABKAlCTZJBLzItVmlydHVhbCBnYXRld2F5IElEICgyMC1jaGFyYWN0ZXIgWElEIGZvcm1hdCku4EECukgVyAEBchAyC15bYS16MC05XSskmAEUGtsDCglBZ2VudENhcmQSGgoIaWNvbl91cmwYASABKAlCCLpIBXIDGIAEEiMKEWRvY3VtZW50YXRpb25fdXJsGAIgASgJQgi6SAVyAxiABBJNCghwcm92aWRlchgDIAEoCzI7LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudC5BZ2VudENhcmQuUHJvdmlkZXISSAoGc2tpbGxzGAQgAygLMjgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LkFnZW50Q2FyZC5Ta2lsbBpBCghQcm92aWRlchIeCgxvcmdhbml6YXRpb24YASABKAlCCLpIBXIDGIABEhUKA3VybBgCIAEoCUIIukgFcgMYgAQasAEKBVNraWxsEhkKAmlkGAEgASgJQg3gQQK6SAfIAQFyAhhAEhwKBG5hbWUYAiABKAlCDuBBArpICMgBAXIDGIABEiMKC2Rlc2NyaXB0aW9uGAMgASgJQg7gQQK6SAjIAQFyAxiABBIMCgR0YWdzGAQgAygJEhAKCGV4YW1wbGVzGAUgAygJEhMKC2lucHV0X21vZGVzGAYgAygJEhQKDG91dHB1dF9tb2RlcxgHIAMoCSJ9CgVTdGF0ZRIVChFTVEFURV9VTlNQRUNJRklFRBAAEhIKDlNUQVRFX1NUQVJUSU5HEAESEQoNU1RBVEVfUlVOTklORxACEhIKDlNUQVRFX1NUT1BQSU5HEAMSEQoNU1RBVEVfU1RPUFBFRBAEEg8KC1NUQVRFX0VSUk9SEAU6QepBPgoncmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy9BSUFnZW50KglhaV9hZ2VudHMyCGFpX2FnZW50IqQKCg1BSUFnZW50Q3JlYXRlEjoKDGRpc3BsYXlfbmFtZRgBIAEoCUIk4EECukgeyAEBchkQAxiAATISXltBLVphLXowLTktXyAvXSskEh0KC2Rlc2NyaXB0aW9uGAIgASgJQgi6SAVyAxiAAhJ0Cg1zeXN0ZW1fcHJvbXB0GAMgASgJQl2SQU0yS1N5c3RlbSBpbnN0cnVjdGlvbnMgdGhhdCBkZWZpbmUgaG93IHRoZSBBSSBhZ2VudCBzaG91bGQgYmVoYXZlIGFuZCByZXNwb25kLuBBArpIB8gBAXICEAoSTgoIcHJvdmlkZXIYBCABKAsyMS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuUHJvdmlkZXJCCeBBArpIA8gBARIdCgVtb2RlbBgGIAEoCUIO4EECukgIyAEBcgMYgAESUwoLbWNwX3NlcnZlcnMYByADKAsyPi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnRDcmVhdGUuTWNwU2VydmVyc0VudHJ5EnUKBHRhZ3MYCCADKAsyOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnRDcmVhdGUuVGFnc0VudHJ5Qi26SCqaAScQECojciEyH14oW1xwe0x9XHB7Wn1ccHtOfV8uOi89K1wtQF0qKSQSQAoJcmVzb3VyY2VzGAkgASgLMi0ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MS5QaXBlbGluZS5SZXNvdXJjZXMSIQoObWF4X2l0ZXJhdGlvbnMYCiABKAVCCbpIBhoEGGQoARJbCg9zZXJ2aWNlX2FjY291bnQYCyABKAsyNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuU2VydmljZUFjY291bnRCCeBBArpIA8gBARJyCglzdWJhZ2VudHMYDCADKAsyPS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnRDcmVhdGUuU3ViYWdlbnRzRW50cnlCILpIHZoBGiIYchYQARhAMhBeW0EtWmEtejAtOV8tXSskEkcKB2dhdGV3YXkYDSABKAsyNi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuR2F0ZXdheUNvbmZpZxJGCgphZ2VudF9jYXJkGA4gASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LkFnZW50Q2FyZBplCg9NY3BTZXJ2ZXJzRW50cnkSCwoDa2V5GAEgASgJEkEKBXZhbHVlGAIgASgLMjIucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50Lk1DUFNlcnZlcjoCOAEaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaYwoOU3ViYWdlbnRzRW50cnkSCwoDa2V5GAEgASgJEkAKBXZhbHVlGAIgASgLMjEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LlN1YmFnZW50OgI4ATpH6kFECi1yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzL0FJQWdlbnRDcmVhdGUqCWFpX2FnZW50czIIYWlfYWdlbnQiWAoUQ3JlYXRlQUlBZ2VudFJlcXVlc3QSQAoIYWlfYWdlbnQYASABKAsyLi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnRDcmVhdGUiUwoVQ3JlYXRlQUlBZ2VudFJlc3BvbnNlEjoKCGFpX2FnZW50GAEgASgLMigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50Ij8KEUdldEFJQWdlbnRSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiUAoSR2V0QUlBZ2VudFJlc3BvbnNlEjoKCGFpX2FnZW50GAEgASgLMigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50IrkFChNMaXN0QUlBZ2VudHNSZXF1ZXN0EksKBmZpbHRlchgBIAEoCzI7LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdEFJQWdlbnRzUmVxdWVzdC5GaWx0ZXISnQEKCXBhZ2Vfc2l6ZRgCIAEoBUKJAZJBdDJgTGltaXQgdGhlIHBhZ2luYXRlZCByZXNwb25zZSB0byBhIG51bWJlciBvZiBpdGVtcy4gRGVmYXVsdHMgdG8gNTAuIFVzZSAtMSB0byBkaXNhYmxlIHBhZ2luYXRpb24uWQAAAAAAAFlAaQAAAAAAAPC/ukgPGg0YZCj///////////8BEhIKCnBhZ2VfdG9rZW4YAyABKAkaoAMKBkZpbHRlchJ5Cg1uYW1lX2NvbnRhaW5zGAEgASgJQmKSQUAyPkFueSBBSSBhZ2VudHMgdGhhdCBwYXJ0aWFsbHkgbWF0Y2ggdGhpcyBuYW1lIHdpbGwgYmUgcmV0dXJuZWQuukgc2AEBchcYgAEyEl5bQS1aYS16MC05LV8gL10rJBLDAQoEdGFncxgCIAMoCzJFLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdEFJQWdlbnRzUmVxdWVzdC5GaWx0ZXIuVGFnc0VudHJ5Qm6SQT4yPEFJIGFnZW50cyB0aGF0IG1hdGNoIGFsbCB0aGUgcHJvdmlkZWQgdGFncyB3aWxsIGJlIHJldHVybmVkLrpIKpoBJxAQKiNyITIfXihbXHB7TH1ccHtafVxwe059Xy46Lz0rXC1AXSopJBIRCglzZWNyZXRfaWQYAyABKAkSFQoNbWNwX3NlcnZlcl9pZBgEIAEoCRorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJsChRMaXN0QUlBZ2VudHNSZXNwb25zZRI7CglhaV9hZ2VudHMYASADKAsyKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQSFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJIvwJCg1BSUFnZW50VXBkYXRlEjQKDGRpc3BsYXlfbmFtZRgBIAEoCUIeukgbchkQAxiAATISXltBLVphLXowLTktXyAvXSskEh0KC2Rlc2NyaXB0aW9uGAIgASgJQgi6SAVyAxiAAhJuCg1zeXN0ZW1fcHJvbXB0GAMgASgJQleSQU0yS1N5c3RlbSBpbnN0cnVjdGlvbnMgdGhhdCBkZWZpbmUgaG93IHRoZSBBSSBhZ2VudCBzaG91bGQgYmVoYXZlIGFuZCByZXNwb25kLrpIBHICEAoSQwoIcHJvdmlkZXIYBCABKAsyMS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuUHJvdmlkZXISFwoFbW9kZWwYBiABKAlCCLpIBXIDGIABElMKC21jcF9zZXJ2ZXJzGAcgAygLMj4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50VXBkYXRlLk1jcFNlcnZlcnNFbnRyeRJ1CgR0YWdzGAggAygLMjgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50VXBkYXRlLlRhZ3NFbnRyeUItukgqmgEnEBAqI3IhMh9eKFtccHtMfVxwe1p9XHB7Tn1fLjovPStcLUBdKikkEkAKCXJlc291cmNlcxgJIAEoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUuUmVzb3VyY2VzEiEKDm1heF9pdGVyYXRpb25zGAogASgFQgm6SAYaBBhkKAESUAoPc2VydmljZV9hY2NvdW50GAsgASgLMjcucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50LlNlcnZpY2VBY2NvdW50EnIKCXN1YmFnZW50cxgMIAMoCzI9LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudFVwZGF0ZS5TdWJhZ2VudHNFbnRyeUIgukgdmgEaIhhyFhABGEAyEF5bQS1aYS16MC05Xy1dKyQSRwoHZ2F0ZXdheRgNIAEoCzI2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudC5HYXRld2F5Q29uZmlnEkYKCmFnZW50X2NhcmQYDiABKAsyMi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuQWdlbnRDYXJkGmUKD01jcFNlcnZlcnNFbnRyeRILCgNrZXkYASABKAkSQQoFdmFsdWUYAiABKAsyMi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuTUNQU2VydmVyOgI4ARorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ARpjCg5TdWJhZ2VudHNFbnRyeRILCgNrZXkYASABKAkSQAoFdmFsdWUYAiABKAsyMS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQuU3ViYWdlbnQ6AjgBOkfqQUQKLXJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMvQUlBZ2VudFVwZGF0ZSoJYWlfYWdlbnRzMghhaV9hZ2VudCLAAQoUVXBkYXRlQUlBZ2VudFJlcXVlc3QSKgoCaWQYASABKAlCHuBBArpIGMgBAXITMhFeW0EtWmEtejAtOS1fL10rJBJLCghhaV9hZ2VudBgCIAEoCzIuLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudFVwZGF0ZUIJ4EECukgDyAEBEi8KC3VwZGF0ZV9tYXNrGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJTChVVcGRhdGVBSUFnZW50UmVzcG9uc2USOgoIYWlfYWdlbnQYASABKAsyKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQiQgoURGVsZXRlQUlBZ2VudFJlcXVlc3QSKgoCaWQYASABKAlCHuBBArpIGMgBAXITMhFeW0EtWmEtejAtOS1fL10rJCIXChVEZWxldGVBSUFnZW50UmVzcG9uc2UiQAoSU3RvcEFJQWdlbnRSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiUQoTU3RvcEFJQWdlbnRSZXNwb25zZRI6CghhaV9hZ2VudBgBIAEoCzIoLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQUlBZ2VudCJBChNTdGFydEFJQWdlbnRSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiUgoUU3RhcnRBSUFnZW50UmVzcG9uc2USOgoIYWlfYWdlbnQYASABKAsyKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnQypBQKDkFJQWdlbnRTZXJ2aWNlEsICCg1DcmVhdGVBSUFnZW50EjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5DcmVhdGVBSUFnZW50UmVxdWVzdBo2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQ3JlYXRlQUlBZ2VudFJlc3BvbnNlIsEBkkFpEg9DcmVhdGUgQUkgQWdlbnQaFkNyZWF0ZSBhIG5ldyBBSSBhZ2VudC5KPgoDMjAxEjcKB0NyZWF0ZWQSLAoqGigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW502r8HJAoIYWlhZ2VudHMaGGRhdGFwbGFuZV9haWFnZW50X2NyZWF0ZYqmHQQIAhAIgtPkkwIfOghhaV9hZ2VudCITL3YxYWxwaGEzL2FpLWFnZW50cxLkAgoKR2V0QUlBZ2VudBIyLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuR2V0QUlBZ2VudFJlcXVlc3QaMy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkdldEFJQWdlbnRSZXNwb25zZSLsAZJBjwESDEdldCBBSSBBZ2VudBoYR2V0IGEgc3BlY2lmaWMgQUkgYWdlbnQuSjkKAzIwMBIyCgJPSxIsCioaKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkFJQWdlbnRKKgoDNDA0EiMKCU5vdCBGb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c9q/By0KCGFpYWdlbnRzEgpyZXF1ZXN0LmlkGhVkYXRhcGxhbmVfYWlhZ2VudF9nZXSKph0ECAEQCILT5JMCGhIYL3YxYWxwaGEzL2FpLWFnZW50cy97aWR9EvwCCgxMaXN0QUlBZ2VudHMSNC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkxpc3RBSUFnZW50c1JlcXVlc3QaNS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkxpc3RBSUFnZW50c1Jlc3BvbnNlIv4BkkGSARIOTGlzdCBBSSBBZ2VudHMaOExpc3QgQUkgYWdlbnRzLiBPcHRpb25hbDogZmlsdGVyIGJhc2VkIG9uIEFJIGFnZW50IG5hbWUuSkYKAzIwMBI/CgJPSxI5CjcaNS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkxpc3RBSUFnZW50c1Jlc3BvbnNl4r8HQQoScmVzcG9uc2UuYWlfYWdlbnRzEisKCGFpYWdlbnRzEgdlYWNoLmlkGhZkYXRhcGxhbmVfYWlhZ2VudF9saXN0iqYdBAgBEAiC0+STAhUSEy92MWFscGhhMy9haS1hZ2VudHMS4AIKDVVwZGF0ZUFJQWdlbnQSNS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLlVwZGF0ZUFJQWdlbnRSZXF1ZXN0GjYucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5VcGRhdGVBSUFnZW50UmVzcG9uc2Ui3wGSQXYSD1VwZGF0ZSBBSSBBZ2VudBooVXBkYXRlIHRoZSBjb25maWd1cmF0aW9uIG9mIGFuIEFJIGFnZW50Lko5CgMyMDASMgoCT0sSLAoqGigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW502r8HMAoIYWlhZ2VudHMSCnJlcXVlc3QuaWQaGGRhdGFwbGFuZV9haWFnZW50X3VwZGF0ZYqmHQQIAhAIgtPkkwIkOghhaV9hZ2VudBoYL3YxYWxwaGEzL2FpLWFnZW50cy97aWR9EsYCCg1EZWxldGVBSUFnZW50EjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5EZWxldGVBSUFnZW50UmVxdWVzdBo2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuRGVsZXRlQUlBZ2VudFJlc3BvbnNlIsUBkkFmEg9EZWxldGUgQUkgQWdlbnQaE0RlbGV0ZSBhbiBBSSBhZ2VudC5KEgoDMjA0EgsKB0RlbGV0ZWQSAEoqCgM0MDQSIwoJTm90IEZvdW5kEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVz2r8HMAoIYWlhZ2VudHMSCnJlcXVlc3QuaWQaGGRhdGFwbGFuZV9haWFnZW50X2RlbGV0ZYqmHQQIAhAIgtPkkwIaKhgvdjFhbHBoYTMvYWktYWdlbnRzL3tpZH0S9QIKC1N0b3BBSUFnZW50EjMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5TdG9wQUlBZ2VudFJlcXVlc3QaNC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLlN0b3BBSUFnZW50UmVzcG9uc2Ui+gGSQZUBEg1TdG9wIEFJIEFnZW50GhhTdG9wIGEgcnVubmluZyBBSSBhZ2VudC5KPgoDMjAwEjcKB1N0b3BwZWQSLAoqGigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50SioKAzQwNBIjCglOb3QgRm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXPavwcwCghhaWFnZW50cxIKcmVxdWVzdC5pZBoYZGF0YXBsYW5lX2FpYWdlbnRfZGVsZXRliqYdBAgCEAiC0+STAh8aHS92MWFscGhhMy9haS1hZ2VudHMve2lkfTpzdG9wEvsCCgxTdGFydEFJQWdlbnQSNC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLlN0YXJ0QUlBZ2VudFJlcXVlc3QaNS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLlN0YXJ0QUlBZ2VudFJlc3BvbnNlIv0BkkGXARIOU3RhcnQgQUkgQWdlbnQaGVN0YXJ0IGEgc3RvcHBlZCBBSSBhZ2VudC5KPgoDMjAwEjcKB1N0YXJ0ZWQSLAoqGigucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5BSUFnZW50SioKAzQwNBIjCglOb3QgRm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXPavwcwCghhaWFnZW50cxIKcmVxdWVzdC5pZBoYZGF0YXBsYW5lX2FpYWdlbnRfY3JlYXRliqYdBAgCEAiC0+STAiAaHi92MWFscGhhMy9haS1hZ2VudHMve2lkfTpzdGFydBpFkkFCCglBSSBBZ2VudHMSNUNyZWF0ZSBhbmQgbWFuYWdlIEFJIGFnZW50cyBhbmQgdGhlaXIgY29uZmlndXJhdGlvbnMuYgZwcm90bzM", [file_buf_validate_validate, file_google_api_annotations, file_google_api_field_behavior, file_google_api_resource, file_google_protobuf_field_mask, file_protoc_gen_openapiv2_options_annotations, file_redpanda_api_auth_v1_authorization, file_redpanda_api_common_v1_options, file_redpanda_api_dataplane_v1_pipeline]); /** * Defines the AI Agent resource. diff --git a/frontend/src/protogen/redpanda/api/dataplane/v1alpha3/knowledge_base_pb.ts b/frontend/src/protogen/redpanda/api/dataplane/v1alpha3/knowledge_base_pb.ts index 136f5adba7..6acf8bd878 100644 --- a/frontend/src/protogen/redpanda/api/dataplane/v1alpha3/knowledge_base_pb.ts +++ b/frontend/src/protogen/redpanda/api/dataplane/v1alpha3/knowledge_base_pb.ts @@ -12,6 +12,7 @@ import type { FieldMask } from "@bufbuild/protobuf/wkt"; import { file_google_protobuf_field_mask } from "@bufbuild/protobuf/wkt"; import { file_protoc_gen_openapiv2_options_annotations } from "../../../../protoc-gen-openapiv2/options/annotations_pb"; import { file_redpanda_api_auth_v1_authorization } from "../../auth/v1/authorization_pb"; +import { file_redpanda_api_common_v1_options } from "../../common/v1/options_pb"; import type { SASLMechanism } from "../v1/user_pb"; import { file_redpanda_api_dataplane_v1_user } from "../v1/user_pb"; import type { Message } from "@bufbuild/protobuf"; @@ -20,7 +21,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file redpanda/api/dataplane/v1alpha3/knowledge_base.proto. */ export const file_redpanda_api_dataplane_v1alpha3_knowledge_base: GenFile = /*@__PURE__*/ - fileDesc("CjRyZWRwYW5kYS9hcGkvZGF0YXBsYW5lL3YxYWxwaGEzL2tub3dsZWRnZV9iYXNlLnByb3RvEh9yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzIpoVCg1Lbm93bGVkZ2VCYXNlEh0KAmlkGAEgASgJQhHgQQLgQQO6SAjIAQFyA5gBFBI6CgxkaXNwbGF5X25hbWUYAiABKAlCJOBBArpIHsgBAXIZEAMYgAEyEl5bQS1aYS16MC05LV8gL10rJBIdCgtkZXNjcmlwdGlvbhgDIAEoCUIIukgFcgMYgAISYQoPdmVjdG9yX2RhdGFiYXNlGAQgASgLMj0ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlLlZlY3RvckRhdGFiYXNlQgngQQK6SAPIAQESaQoTZW1iZWRkaW5nX2dlbmVyYXRvchgFIAEoCzJBLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZS5FbWJlZGRpbmdHZW5lcmF0b3JCCeBBArpIA8gBARIeChFyZXRyaWV2YWxfYXBpX3VybBgGIAEoCUID4EEDEnUKBHRhZ3MYByADKAsyOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2UuVGFnc0VudHJ5Qi26SCqaAScQECojciEyH14oW1xwe0x9XHB7Wn1ccHtOfV8uOi89K1wtQF0qKSQSRwoHaW5kZXhlchgIIAEoCzI2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZS5JbmRleGVyEksKCXJldHJpZXZlchgJIAEoCzI4LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZS5SZXRyaWV2ZXISWAoKZ2VuZXJhdGlvbhgKIAEoCzI5LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZS5HZW5lcmF0aW9uQgngQQK6SAPIAQEaiQIKDlZlY3RvckRhdGFiYXNlEloKCHBvc3RncmVzGAEgASgLMkYucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlLlZlY3RvckRhdGFiYXNlLlBvc3RncmVzSAAagAEKCFBvc3RncmVzEjgKA2RzbhgBIAEoCUIr4EECukglyAEBciAyHl5cJFx7c2VjcmV0c1wuW0EtWmEtejAtOV9dK1x9JBI6CgV0YWJsZRgCIAEoCUIr4EEC4EEFukgiyAEBch0QARg/MhdeW2EtekEtWl1bYS16QS1aMC05X10qJEIYCg92ZWN0b3JfZGF0YWJhc2USBbpIAggBGpsEChJFbWJlZGRpbmdHZW5lcmF0b3ISZwoIcHJvdmlkZXIYASABKAsySi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2UuRW1iZWRkaW5nR2VuZXJhdG9yLlByb3ZpZGVyQgngQQK6SAPIAQESIAoKZGltZW5zaW9ucxgCIAEoBUIM4EEC4EEFukgDyAEBEhsKBW1vZGVsGAMgASgJQgzgQQLgQQW6SAPIAQEa3AIKCFByb3ZpZGVyEmMKBm9wZW5haRgBIAEoCzJRLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZS5FbWJlZGRpbmdHZW5lcmF0b3IuUHJvdmlkZXIuT3BlbkFJSAASYwoGY29oZXJlGAIgASgLMlEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlLkVtYmVkZGluZ0dlbmVyYXRvci5Qcm92aWRlci5Db2hlcmVIABoZCgZPcGVuQUkSDwoHYXBpX2tleRgBIAEoCRpYCgZDb2hlcmUSEAoIYmFzZV91cmwYASABKAkSPAoHYXBpX2tleRgCIAEoCUIr4EECukglyAEBciAyHl5cJFx7c2VjcmV0c1wuW0EtWmEtejAtOV9dK1x9JEIRCghwcm92aWRlchIFukgCCAEaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaggIKB0luZGV4ZXISEgoKY2h1bmtfc2l6ZRgBIAEoBRIVCg1jaHVua19vdmVybGFwGAIgASgFEhkKEXJlZHBhbmRhX3VzZXJuYW1lGAMgASgJEkAKEXJlZHBhbmRhX3Bhc3N3b3JkGAQgASgJQiW6SCJyIDIeXlwkXHtzZWNyZXRzXC5bQS1aYS16MC05X10rXH0kEiQKDGlucHV0X3RvcGljcxgFIAMoCUIO4EECukgIyAEBkgECCAESSQoXcmVkcGFuZGFfc2FzbF9tZWNoYW5pc20YBiABKA4yKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlNBU0xNZWNoYW5pc20avAMKCVJldHJpZXZlchJTCghyZXJhbmtlchgBIAEoCzJBLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZS5SZXRyaWV2ZXIuUmVyYW5rZXIa2QIKCFJlcmFua2VyEg8KB2VuYWJsZWQYASABKAgSXAoIcHJvdmlkZXIYAiABKAsySi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2UuUmV0cmlldmVyLlJlcmFua2VyLlByb3ZpZGVyGt0BCghQcm92aWRlchJjCgZjb2hlcmUYASABKAsyUS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2UuUmV0cmlldmVyLlJlcmFua2VyLlByb3ZpZGVyLkNvaGVyZUgAGmAKBkNvaGVyZRI8CgdhcGlfa2V5GAIgASgJQivgQQK6SCXIAQFyIDIeXlwkXHtzZWNyZXRzXC5bQS1aYS16MC05X10rXH0kEhgKBW1vZGVsGAMgASgJQgngQQK6SAPIAQFCCgoIcHJvdmlkZXIayQIKCkdlbmVyYXRpb24SXwoIcHJvdmlkZXIYASABKAsyQi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2UuR2VuZXJhdGlvbi5Qcm92aWRlckIJ4EECukgDyAEBEhsKBW1vZGVsGAIgASgJQgzgQQLgQQW6SAPIAQEavAEKCFByb3ZpZGVyElsKBm9wZW5haRgBIAEoCzJJLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZS5HZW5lcmF0aW9uLlByb3ZpZGVyLk9wZW5BSUgAGkAKBk9wZW5BSRI2CgdhcGlfa2V5GAEgASgJQiW6SCJyIDIeXlwkXHtzZWNyZXRzXC5bQS1aYS16MC05X10rXH0kQhEKCHByb3ZpZGVyEgW6SAIIATpT6kFQCi1yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzL0tub3dsZWRnZUJhc2UqD2tub3dsZWRnZV9iYXNlczIOa25vd2xlZGdlX2Jhc2UipBMKE0tub3dsZWRnZUJhc2VDcmVhdGUSOgoMZGlzcGxheV9uYW1lGAEgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAiABKAlCCLpIBXIDGIACEmcKD3ZlY3Rvcl9kYXRhYmFzZRgDIAEoCzJDLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZUNyZWF0ZS5WZWN0b3JEYXRhYmFzZUIJ4EECukgDyAEBEm8KE2VtYmVkZGluZ19nZW5lcmF0b3IYBCABKAsyRy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VDcmVhdGUuRW1iZWRkaW5nR2VuZXJhdG9yQgngQQK6SAPIAQESewoEdGFncxgFIAMoCzI+LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZUNyZWF0ZS5UYWdzRW50cnlCLbpIKpoBJxAQKiNyITIfXihbXHB7TH1ccHtafVxwe059Xy46Lz0rXC1AXSopJBJNCgdpbmRleGVyGAYgASgLMjwucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlQ3JlYXRlLkluZGV4ZXISUQoJcmV0cmlldmVyGAcgASgLMj4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlQ3JlYXRlLlJldHJpZXZlchJTCgpnZW5lcmF0aW9uGAggASgLMj8ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlQ3JlYXRlLkdlbmVyYXRpb24a7AEKDlZlY3RvckRhdGFiYXNlEmAKCHBvc3RncmVzGAEgASgLMkwucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlQ3JlYXRlLlZlY3RvckRhdGFiYXNlLlBvc3RncmVzSAAaXgoIUG9zdGdyZXMSFgoDZHNuGAEgASgJQgngQQK6SAPIAQESOgoFdGFibGUYAiABKAlCK+BBAuBBBbpIIsgBAXIdEAEYPzIXXlthLXpBLVpdW2EtekEtWjAtOV9dKiRCGAoPdmVjdG9yX2RhdGFiYXNlEgW6SAIIARqFBAoSRW1iZWRkaW5nR2VuZXJhdG9yEm0KCHByb3ZpZGVyGAEgASgLMlAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlQ3JlYXRlLkVtYmVkZGluZ0dlbmVyYXRvci5Qcm92aWRlckIJ4EECukgDyAEBEh0KCmRpbWVuc2lvbnMYAiABKAVCCeBBArpIA8gBARIYCgVtb2RlbBgDIAEoCUIJ4EECukgDyAEBGsYCCghQcm92aWRlchJpCgZvcGVuYWkYASABKAsyVy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VDcmVhdGUuRW1iZWRkaW5nR2VuZXJhdG9yLlByb3ZpZGVyLk9wZW5BSUgAEmkKBmNvaGVyZRgCIAEoCzJXLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZUNyZWF0ZS5FbWJlZGRpbmdHZW5lcmF0b3IuUHJvdmlkZXIuQ29oZXJlSAAaGQoGT3BlbkFJEg8KB2FwaV9rZXkYASABKAkaNgoGQ29oZXJlEhAKCGJhc2VfdXJsGAEgASgJEhoKB2FwaV9rZXkYAiABKAlCCeBBArpIA8gBAUIRCghwcm92aWRlchIFukgCCAEaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEa2wEKB0luZGV4ZXISEgoKY2h1bmtfc2l6ZRgBIAEoBRIVCg1jaHVua19vdmVybGFwGAIgASgFEhkKEXJlZHBhbmRhX3VzZXJuYW1lGAMgASgJEhkKEXJlZHBhbmRhX3Bhc3N3b3JkGAQgASgJEiQKDGlucHV0X3RvcGljcxgFIAMoCUIO4EECukgIyAEBkgECCAESSQoXcmVkcGFuZGFfc2FzbF9tZWNoYW5pc20YBiABKA4yKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlNBU0xNZWNoYW5pc20aswMKCVJldHJpZXZlchJZCghyZXJhbmtlchgBIAEoCzJHLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZUNyZWF0ZS5SZXRyaWV2ZXIuUmVyYW5rZXIaygIKCFJlcmFua2VyEg8KB2VuYWJsZWQYASABKAgSYgoIcHJvdmlkZXIYAiABKAsyUC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VDcmVhdGUuUmV0cmlldmVyLlJlcmFua2VyLlByb3ZpZGVyGsgBCghQcm92aWRlchJpCgZjb2hlcmUYASABKAsyVy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VDcmVhdGUuUmV0cmlldmVyLlJlcmFua2VyLlByb3ZpZGVyLkNvaGVyZUgAGj4KBkNvaGVyZRIaCgdhcGlfa2V5GAIgASgJQgngQQK6SAPIAQESGAoFbW9kZWwYAyABKAlCCeBBArpIA8gBAUIRCghwcm92aWRlchIFukgCCAEaqwIKCkdlbmVyYXRpb24SZQoIcHJvdmlkZXIYASABKAsySC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VDcmVhdGUuR2VuZXJhdGlvbi5Qcm92aWRlckIJ4EECukgDyAEBEhgKBW1vZGVsGAIgASgJQgngQQK6SAPIAQEamwEKCFByb3ZpZGVyEmEKBm9wZW5haRgBIAEoCzJPLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZUNyZWF0ZS5HZW5lcmF0aW9uLlByb3ZpZGVyLk9wZW5BSUgAGhkKBk9wZW5BSRIPCgdhcGlfa2V5GAEgASgJQhEKCHByb3ZpZGVyEgW6SAIIASLbEgoTS25vd2xlZGdlQmFzZVVwZGF0ZRI6CgxkaXNwbGF5X25hbWUYASABKAlCJOBBArpIHsgBAXIZEAMYgAEyEl5bQS1aYS16MC05LV8gL10rJBIgCgtkZXNjcmlwdGlvbhgCIAEoCUILukgI2AEBcgMYgAISZwoPdmVjdG9yX2RhdGFiYXNlGAMgASgLMkMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlVXBkYXRlLlZlY3RvckRhdGFiYXNlQgngQQK6SAPIAQESbwoTZW1iZWRkaW5nX2dlbmVyYXRvchgEIAEoCzJHLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZVVwZGF0ZS5FbWJlZGRpbmdHZW5lcmF0b3JCCeBBArpIA8gBARJ7CgR0YWdzGAUgAygLMj4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlVXBkYXRlLlRhZ3NFbnRyeUItukgqmgEnEBAqI3IhMh9eKFtccHtMfVxwe1p9XHB7Tn1fLjovPStcLUBdKikkEk0KB2luZGV4ZXIYBiABKAsyPC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGUuSW5kZXhlchJRCglyZXRyaWV2ZXIYByABKAsyPi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGUuUmV0cmlldmVyElMKCmdlbmVyYXRpb24YCCABKAsyPy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGUuR2VuZXJhdGlvbhqwAQoOVmVjdG9yRGF0YWJhc2USYAoIcG9zdGdyZXMYASABKAsyTC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGUuVmVjdG9yRGF0YWJhc2UuUG9zdGdyZXNIABoiCghQb3N0Z3JlcxIWCgNkc24YASABKAlCCeBBArpIA8gBAUIYCg92ZWN0b3JfZGF0YWJhc2USBbpIAggBGsEDChJFbWJlZGRpbmdHZW5lcmF0b3ISbQoIcHJvdmlkZXIYASABKAsyUC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGUuRW1iZWRkaW5nR2VuZXJhdG9yLlByb3ZpZGVyQgngQQK6SAPIAQEauwIKCFByb3ZpZGVyEmkKBm9wZW5haRgBIAEoCzJXLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZVVwZGF0ZS5FbWJlZGRpbmdHZW5lcmF0b3IuUHJvdmlkZXIuT3BlbkFJSAASaQoGY29oZXJlGAIgASgLMlcucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlVXBkYXRlLkVtYmVkZGluZ0dlbmVyYXRvci5Qcm92aWRlci5Db2hlcmVIABoZCgZPcGVuQUkSDwoHYXBpX2tleRgBIAEoCRorCgZDb2hlcmUSEAoIYmFzZV91cmwYASABKAkSDwoHYXBpX2tleRgCIAEoCUIRCghwcm92aWRlchIFukgCCAEaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEa2wEKB0luZGV4ZXISEgoKY2h1bmtfc2l6ZRgBIAEoBRIVCg1jaHVua19vdmVybGFwGAIgASgFEhkKEXJlZHBhbmRhX3VzZXJuYW1lGAMgASgJEhkKEXJlZHBhbmRhX3Bhc3N3b3JkGAQgASgJEiQKDGlucHV0X3RvcGljcxgFIAMoCUIO4EECukgIyAEBkgECCAESSQoXcmVkcGFuZGFfc2FzbF9tZWNoYW5pc20YBiABKA4yKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlNBU0xNZWNoYW5pc20arAMKCVJldHJpZXZlchJZCghyZXJhbmtlchgBIAEoCzJHLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZVVwZGF0ZS5SZXRyaWV2ZXIuUmVyYW5rZXIawwIKCFJlcmFua2VyEg8KB2VuYWJsZWQYASABKAgSYgoIcHJvdmlkZXIYAiABKAsyUC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGUuUmV0cmlldmVyLlJlcmFua2VyLlByb3ZpZGVyGsEBCghQcm92aWRlchJpCgZjb2hlcmUYASABKAsyVy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGUuUmV0cmlldmVyLlJlcmFua2VyLlByb3ZpZGVyLkNvaGVyZUgAGj4KBkNvaGVyZRIaCgdhcGlfa2V5GAIgASgJQgngQQK6SAPIAQESGAoFbW9kZWwYAyABKAlCCeBBArpIA8gBAUIKCghwcm92aWRlchqRAgoKR2VuZXJhdGlvbhJlCghwcm92aWRlchgBIAEoCzJILnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZVVwZGF0ZS5HZW5lcmF0aW9uLlByb3ZpZGVyQgngQQK6SAPIAQEamwEKCFByb3ZpZGVyEmEKBm9wZW5haRgBIAEoCzJPLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZVVwZGF0ZS5HZW5lcmF0aW9uLlByb3ZpZGVyLk9wZW5BSUgAGhkKBk9wZW5BSRIPCgdhcGlfa2V5GAEgASgJQhEKCHByb3ZpZGVyEgW6SAIIATpT6kFQCi1yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzL0tub3dsZWRnZUJhc2UqD2tub3dsZWRnZV9iYXNlczIOa25vd2xlZGdlX2Jhc2UiagoaQ3JlYXRlS25vd2xlZGdlQmFzZVJlcXVlc3QSTAoOa25vd2xlZGdlX2Jhc2UYASABKAsyNC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VDcmVhdGUiZQobQ3JlYXRlS25vd2xlZGdlQmFzZVJlc3BvbnNlEkYKDmtub3dsZWRnZV9iYXNlGAEgASgLMi4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlIjUKF0dldEtub3dsZWRnZUJhc2VSZXF1ZXN0EhoKAmlkGAEgASgJQg7gQQK6SAjIAQFyA5gBFCJiChhHZXRLbm93bGVkZ2VCYXNlUmVzcG9uc2USRgoOa25vd2xlZGdlX2Jhc2UYASABKAsyLi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2UiqwUKGUxpc3RLbm93bGVkZ2VCYXNlc1JlcXVlc3QSngEKCXBhZ2Vfc2l6ZRgBIAEoBUKKAZJBdTJhTGltaXQgdGhlIHBhZ2luYXRlZCByZXNwb25zZSB0byBhIG51bWJlciBvZiBpdGVtcy4gRGVmYXVsdHMgdG8gMTAwLiBVc2UgLTEgdG8gZGlzYWJsZSBwYWdpbmF0aW9uLlkAAAAAAABJQGkAAAAAAADwv7pIDxoNGDIo////////////ARISCgpwYWdlX3Rva2VuGAIgASgJElEKBmZpbHRlchgDIAEoCzJBLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdEtub3dsZWRnZUJhc2VzUmVxdWVzdC5GaWx0ZXIahQMKBkZpbHRlchJ9Cg1uYW1lX2NvbnRhaW5zGAEgASgJQmaSQUQyQkFueSBLbm93bGVkZ2VCYXNlIHRoYXQgcGFydGlhbGx5IG1hdGNoIHRoaXMgbmFtZSB3aWxsIGJlIHJldHVybmVkLrpIHNgBAXIXGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSzgEKBHRhZ3MYAiADKAsySy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkxpc3RLbm93bGVkZ2VCYXNlc1JlcXVlc3QuRmlsdGVyLlRhZ3NFbnRyeUJzkkFDMkFLbm93bGVkZ2VCYXNlcyB0aGF0IG1hdGNoIGFsbCB0aGUgcHJvdmlkZWQgdGFncyB3aWxsIGJlIHJldHVybmVkLrpIKpoBJxAQKiNyITIfXihbXHB7TH1ccHtafVxwe059Xy46Lz0rXC1AXSopJBorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJ+ChpMaXN0S25vd2xlZGdlQmFzZXNSZXNwb25zZRJHCg9rbm93bGVkZ2VfYmFzZXMYASADKAsyLi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2USFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJIsIBChpVcGRhdGVLbm93bGVkZ2VCYXNlUmVxdWVzdBIaCgJpZBgBIAEoCUIO4EECukgIyAEBcgOYARQSVwoOa25vd2xlZGdlX2Jhc2UYAiABKAsyNC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGVCCeBBArpIA8gBARIvCgt1cGRhdGVfbWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siZQobVXBkYXRlS25vd2xlZGdlQmFzZVJlc3BvbnNlEkYKDmtub3dsZWRnZV9iYXNlGAEgASgLMi4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlIjgKGkRlbGV0ZUtub3dsZWRnZUJhc2VSZXF1ZXN0EhoKAmlkGAEgASgJQg7gQQK6SAjIAQFyA5gBFCIdChtEZWxldGVLbm93bGVkZ2VCYXNlUmVzcG9uc2Uy2AgKFEtub3dsZWRnZUJhc2VTZXJ2aWNlEssBChNDcmVhdGVLbm93bGVkZ2VCYXNlEjsucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5DcmVhdGVLbm93bGVkZ2VCYXNlUmVxdWVzdBo8LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQ3JlYXRlS25vd2xlZGdlQmFzZVJlc3BvbnNlIjmKph0ECAIQBILT5JMCKzoOa25vd2xlZGdlX2Jhc2UiGS92MWFscGhhMy9rbm93bGVkZ2UtYmFzZXMStwEKEEdldEtub3dsZWRnZUJhc2USOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkdldEtub3dsZWRnZUJhc2VSZXF1ZXN0GjkucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5HZXRLbm93bGVkZ2VCYXNlUmVzcG9uc2UiLoqmHQQIARAEgtPkkwIgEh4vdjFhbHBoYTMva25vd2xlZGdlLWJhc2VzL3tpZH0SuAEKEkxpc3RLbm93bGVkZ2VCYXNlcxI6LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdEtub3dsZWRnZUJhc2VzUmVxdWVzdBo7LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdEtub3dsZWRnZUJhc2VzUmVzcG9uc2UiKYqmHQQIARAEgtPkkwIbEhkvdjFhbHBoYTMva25vd2xlZGdlLWJhc2VzEtABChNVcGRhdGVLbm93bGVkZ2VCYXNlEjsucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5VcGRhdGVLbm93bGVkZ2VCYXNlUmVxdWVzdBo8LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuVXBkYXRlS25vd2xlZGdlQmFzZVJlc3BvbnNlIj6Kph0ECAIQBILT5JMCMDoOa25vd2xlZGdlX2Jhc2UaHi92MWFscGhhMy9rbm93bGVkZ2UtYmFzZXMve2lkfRLAAQoTRGVsZXRlS25vd2xlZGdlQmFzZRI7LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuRGVsZXRlS25vd2xlZGdlQmFzZVJlcXVlc3QaPC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkRlbGV0ZUtub3dsZWRnZUJhc2VSZXNwb25zZSIuiqYdBAgCEASC0+STAiAqHi92MWFscGhhMy9rbm93bGVkZ2UtYmFzZXMve2lkfRpnkkFkChlSZWRwYW5kYSBBSSBLbm93bGVkZ2VCYXNlEkdDcmVhdGUgYW5kIG1hbmFnZSByZXRyaWV2YWwtYXVnbWVudGVkIGdlbmVyYXRpb24gKFJBRykga25vd2xlZGdlIGJhc2VzLmIGcHJvdG8z", [file_buf_validate_validate, file_google_api_annotations, file_google_api_field_behavior, file_google_api_resource, file_google_protobuf_field_mask, file_protoc_gen_openapiv2_options_annotations, file_redpanda_api_auth_v1_authorization, file_redpanda_api_dataplane_v1_user]); + fileDesc("CjRyZWRwYW5kYS9hcGkvZGF0YXBsYW5lL3YxYWxwaGEzL2tub3dsZWRnZV9iYXNlLnByb3RvEh9yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzIpoVCg1Lbm93bGVkZ2VCYXNlEh0KAmlkGAEgASgJQhHgQQLgQQO6SAjIAQFyA5gBFBI6CgxkaXNwbGF5X25hbWUYAiABKAlCJOBBArpIHsgBAXIZEAMYgAEyEl5bQS1aYS16MC05LV8gL10rJBIdCgtkZXNjcmlwdGlvbhgDIAEoCUIIukgFcgMYgAISYQoPdmVjdG9yX2RhdGFiYXNlGAQgASgLMj0ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlLlZlY3RvckRhdGFiYXNlQgngQQK6SAPIAQESaQoTZW1iZWRkaW5nX2dlbmVyYXRvchgFIAEoCzJBLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZS5FbWJlZGRpbmdHZW5lcmF0b3JCCeBBArpIA8gBARIeChFyZXRyaWV2YWxfYXBpX3VybBgGIAEoCUID4EEDEnUKBHRhZ3MYByADKAsyOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2UuVGFnc0VudHJ5Qi26SCqaAScQECojciEyH14oW1xwe0x9XHB7Wn1ccHtOfV8uOi89K1wtQF0qKSQSRwoHaW5kZXhlchgIIAEoCzI2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZS5JbmRleGVyEksKCXJldHJpZXZlchgJIAEoCzI4LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZS5SZXRyaWV2ZXISWAoKZ2VuZXJhdGlvbhgKIAEoCzI5LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZS5HZW5lcmF0aW9uQgngQQK6SAPIAQEaiQIKDlZlY3RvckRhdGFiYXNlEloKCHBvc3RncmVzGAEgASgLMkYucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlLlZlY3RvckRhdGFiYXNlLlBvc3RncmVzSAAagAEKCFBvc3RncmVzEjgKA2RzbhgBIAEoCUIr4EECukglyAEBciAyHl5cJFx7c2VjcmV0c1wuW0EtWmEtejAtOV9dK1x9JBI6CgV0YWJsZRgCIAEoCUIr4EEC4EEFukgiyAEBch0QARg/MhdeW2EtekEtWl1bYS16QS1aMC05X10qJEIYCg92ZWN0b3JfZGF0YWJhc2USBbpIAggBGpsEChJFbWJlZGRpbmdHZW5lcmF0b3ISZwoIcHJvdmlkZXIYASABKAsySi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2UuRW1iZWRkaW5nR2VuZXJhdG9yLlByb3ZpZGVyQgngQQK6SAPIAQESIAoKZGltZW5zaW9ucxgCIAEoBUIM4EEC4EEFukgDyAEBEhsKBW1vZGVsGAMgASgJQgzgQQLgQQW6SAPIAQEa3AIKCFByb3ZpZGVyEmMKBm9wZW5haRgBIAEoCzJRLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZS5FbWJlZGRpbmdHZW5lcmF0b3IuUHJvdmlkZXIuT3BlbkFJSAASYwoGY29oZXJlGAIgASgLMlEucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlLkVtYmVkZGluZ0dlbmVyYXRvci5Qcm92aWRlci5Db2hlcmVIABoZCgZPcGVuQUkSDwoHYXBpX2tleRgBIAEoCRpYCgZDb2hlcmUSEAoIYmFzZV91cmwYASABKAkSPAoHYXBpX2tleRgCIAEoCUIr4EECukglyAEBciAyHl5cJFx7c2VjcmV0c1wuW0EtWmEtejAtOV9dK1x9JEIRCghwcm92aWRlchIFukgCCAEaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaggIKB0luZGV4ZXISEgoKY2h1bmtfc2l6ZRgBIAEoBRIVCg1jaHVua19vdmVybGFwGAIgASgFEhkKEXJlZHBhbmRhX3VzZXJuYW1lGAMgASgJEkAKEXJlZHBhbmRhX3Bhc3N3b3JkGAQgASgJQiW6SCJyIDIeXlwkXHtzZWNyZXRzXC5bQS1aYS16MC05X10rXH0kEiQKDGlucHV0X3RvcGljcxgFIAMoCUIO4EECukgIyAEBkgECCAESSQoXcmVkcGFuZGFfc2FzbF9tZWNoYW5pc20YBiABKA4yKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlNBU0xNZWNoYW5pc20avAMKCVJldHJpZXZlchJTCghyZXJhbmtlchgBIAEoCzJBLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZS5SZXRyaWV2ZXIuUmVyYW5rZXIa2QIKCFJlcmFua2VyEg8KB2VuYWJsZWQYASABKAgSXAoIcHJvdmlkZXIYAiABKAsySi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2UuUmV0cmlldmVyLlJlcmFua2VyLlByb3ZpZGVyGt0BCghQcm92aWRlchJjCgZjb2hlcmUYASABKAsyUS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2UuUmV0cmlldmVyLlJlcmFua2VyLlByb3ZpZGVyLkNvaGVyZUgAGmAKBkNvaGVyZRI8CgdhcGlfa2V5GAIgASgJQivgQQK6SCXIAQFyIDIeXlwkXHtzZWNyZXRzXC5bQS1aYS16MC05X10rXH0kEhgKBW1vZGVsGAMgASgJQgngQQK6SAPIAQFCCgoIcHJvdmlkZXIayQIKCkdlbmVyYXRpb24SXwoIcHJvdmlkZXIYASABKAsyQi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2UuR2VuZXJhdGlvbi5Qcm92aWRlckIJ4EECukgDyAEBEhsKBW1vZGVsGAIgASgJQgzgQQLgQQW6SAPIAQEavAEKCFByb3ZpZGVyElsKBm9wZW5haRgBIAEoCzJJLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZS5HZW5lcmF0aW9uLlByb3ZpZGVyLk9wZW5BSUgAGkAKBk9wZW5BSRI2CgdhcGlfa2V5GAEgASgJQiW6SCJyIDIeXlwkXHtzZWNyZXRzXC5bQS1aYS16MC05X10rXH0kQhEKCHByb3ZpZGVyEgW6SAIIATpT6kFQCi1yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzL0tub3dsZWRnZUJhc2UqD2tub3dsZWRnZV9iYXNlczIOa25vd2xlZGdlX2Jhc2UipBMKE0tub3dsZWRnZUJhc2VDcmVhdGUSOgoMZGlzcGxheV9uYW1lGAEgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAiABKAlCCLpIBXIDGIACEmcKD3ZlY3Rvcl9kYXRhYmFzZRgDIAEoCzJDLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZUNyZWF0ZS5WZWN0b3JEYXRhYmFzZUIJ4EECukgDyAEBEm8KE2VtYmVkZGluZ19nZW5lcmF0b3IYBCABKAsyRy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VDcmVhdGUuRW1iZWRkaW5nR2VuZXJhdG9yQgngQQK6SAPIAQESewoEdGFncxgFIAMoCzI+LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZUNyZWF0ZS5UYWdzRW50cnlCLbpIKpoBJxAQKiNyITIfXihbXHB7TH1ccHtafVxwe059Xy46Lz0rXC1AXSopJBJNCgdpbmRleGVyGAYgASgLMjwucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlQ3JlYXRlLkluZGV4ZXISUQoJcmV0cmlldmVyGAcgASgLMj4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlQ3JlYXRlLlJldHJpZXZlchJTCgpnZW5lcmF0aW9uGAggASgLMj8ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlQ3JlYXRlLkdlbmVyYXRpb24a7AEKDlZlY3RvckRhdGFiYXNlEmAKCHBvc3RncmVzGAEgASgLMkwucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlQ3JlYXRlLlZlY3RvckRhdGFiYXNlLlBvc3RncmVzSAAaXgoIUG9zdGdyZXMSFgoDZHNuGAEgASgJQgngQQK6SAPIAQESOgoFdGFibGUYAiABKAlCK+BBAuBBBbpIIsgBAXIdEAEYPzIXXlthLXpBLVpdW2EtekEtWjAtOV9dKiRCGAoPdmVjdG9yX2RhdGFiYXNlEgW6SAIIARqFBAoSRW1iZWRkaW5nR2VuZXJhdG9yEm0KCHByb3ZpZGVyGAEgASgLMlAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlQ3JlYXRlLkVtYmVkZGluZ0dlbmVyYXRvci5Qcm92aWRlckIJ4EECukgDyAEBEh0KCmRpbWVuc2lvbnMYAiABKAVCCeBBArpIA8gBARIYCgVtb2RlbBgDIAEoCUIJ4EECukgDyAEBGsYCCghQcm92aWRlchJpCgZvcGVuYWkYASABKAsyVy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VDcmVhdGUuRW1iZWRkaW5nR2VuZXJhdG9yLlByb3ZpZGVyLk9wZW5BSUgAEmkKBmNvaGVyZRgCIAEoCzJXLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZUNyZWF0ZS5FbWJlZGRpbmdHZW5lcmF0b3IuUHJvdmlkZXIuQ29oZXJlSAAaGQoGT3BlbkFJEg8KB2FwaV9rZXkYASABKAkaNgoGQ29oZXJlEhAKCGJhc2VfdXJsGAEgASgJEhoKB2FwaV9rZXkYAiABKAlCCeBBArpIA8gBAUIRCghwcm92aWRlchIFukgCCAEaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEa2wEKB0luZGV4ZXISEgoKY2h1bmtfc2l6ZRgBIAEoBRIVCg1jaHVua19vdmVybGFwGAIgASgFEhkKEXJlZHBhbmRhX3VzZXJuYW1lGAMgASgJEhkKEXJlZHBhbmRhX3Bhc3N3b3JkGAQgASgJEiQKDGlucHV0X3RvcGljcxgFIAMoCUIO4EECukgIyAEBkgECCAESSQoXcmVkcGFuZGFfc2FzbF9tZWNoYW5pc20YBiABKA4yKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlNBU0xNZWNoYW5pc20aswMKCVJldHJpZXZlchJZCghyZXJhbmtlchgBIAEoCzJHLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZUNyZWF0ZS5SZXRyaWV2ZXIuUmVyYW5rZXIaygIKCFJlcmFua2VyEg8KB2VuYWJsZWQYASABKAgSYgoIcHJvdmlkZXIYAiABKAsyUC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VDcmVhdGUuUmV0cmlldmVyLlJlcmFua2VyLlByb3ZpZGVyGsgBCghQcm92aWRlchJpCgZjb2hlcmUYASABKAsyVy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VDcmVhdGUuUmV0cmlldmVyLlJlcmFua2VyLlByb3ZpZGVyLkNvaGVyZUgAGj4KBkNvaGVyZRIaCgdhcGlfa2V5GAIgASgJQgngQQK6SAPIAQESGAoFbW9kZWwYAyABKAlCCeBBArpIA8gBAUIRCghwcm92aWRlchIFukgCCAEaqwIKCkdlbmVyYXRpb24SZQoIcHJvdmlkZXIYASABKAsySC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VDcmVhdGUuR2VuZXJhdGlvbi5Qcm92aWRlckIJ4EECukgDyAEBEhgKBW1vZGVsGAIgASgJQgngQQK6SAPIAQEamwEKCFByb3ZpZGVyEmEKBm9wZW5haRgBIAEoCzJPLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZUNyZWF0ZS5HZW5lcmF0aW9uLlByb3ZpZGVyLk9wZW5BSUgAGhkKBk9wZW5BSRIPCgdhcGlfa2V5GAEgASgJQhEKCHByb3ZpZGVyEgW6SAIIASLbEgoTS25vd2xlZGdlQmFzZVVwZGF0ZRI6CgxkaXNwbGF5X25hbWUYASABKAlCJOBBArpIHsgBAXIZEAMYgAEyEl5bQS1aYS16MC05LV8gL10rJBIgCgtkZXNjcmlwdGlvbhgCIAEoCUILukgI2AEBcgMYgAISZwoPdmVjdG9yX2RhdGFiYXNlGAMgASgLMkMucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlVXBkYXRlLlZlY3RvckRhdGFiYXNlQgngQQK6SAPIAQESbwoTZW1iZWRkaW5nX2dlbmVyYXRvchgEIAEoCzJHLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZVVwZGF0ZS5FbWJlZGRpbmdHZW5lcmF0b3JCCeBBArpIA8gBARJ7CgR0YWdzGAUgAygLMj4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlVXBkYXRlLlRhZ3NFbnRyeUItukgqmgEnEBAqI3IhMh9eKFtccHtMfVxwe1p9XHB7Tn1fLjovPStcLUBdKikkEk0KB2luZGV4ZXIYBiABKAsyPC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGUuSW5kZXhlchJRCglyZXRyaWV2ZXIYByABKAsyPi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGUuUmV0cmlldmVyElMKCmdlbmVyYXRpb24YCCABKAsyPy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGUuR2VuZXJhdGlvbhqwAQoOVmVjdG9yRGF0YWJhc2USYAoIcG9zdGdyZXMYASABKAsyTC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGUuVmVjdG9yRGF0YWJhc2UuUG9zdGdyZXNIABoiCghQb3N0Z3JlcxIWCgNkc24YASABKAlCCeBBArpIA8gBAUIYCg92ZWN0b3JfZGF0YWJhc2USBbpIAggBGsEDChJFbWJlZGRpbmdHZW5lcmF0b3ISbQoIcHJvdmlkZXIYASABKAsyUC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGUuRW1iZWRkaW5nR2VuZXJhdG9yLlByb3ZpZGVyQgngQQK6SAPIAQEauwIKCFByb3ZpZGVyEmkKBm9wZW5haRgBIAEoCzJXLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZVVwZGF0ZS5FbWJlZGRpbmdHZW5lcmF0b3IuUHJvdmlkZXIuT3BlbkFJSAASaQoGY29oZXJlGAIgASgLMlcucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlVXBkYXRlLkVtYmVkZGluZ0dlbmVyYXRvci5Qcm92aWRlci5Db2hlcmVIABoZCgZPcGVuQUkSDwoHYXBpX2tleRgBIAEoCRorCgZDb2hlcmUSEAoIYmFzZV91cmwYASABKAkSDwoHYXBpX2tleRgCIAEoCUIRCghwcm92aWRlchIFukgCCAEaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEa2wEKB0luZGV4ZXISEgoKY2h1bmtfc2l6ZRgBIAEoBRIVCg1jaHVua19vdmVybGFwGAIgASgFEhkKEXJlZHBhbmRhX3VzZXJuYW1lGAMgASgJEhkKEXJlZHBhbmRhX3Bhc3N3b3JkGAQgASgJEiQKDGlucHV0X3RvcGljcxgFIAMoCUIO4EECukgIyAEBkgECCAESSQoXcmVkcGFuZGFfc2FzbF9tZWNoYW5pc20YBiABKA4yKC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxLlNBU0xNZWNoYW5pc20arAMKCVJldHJpZXZlchJZCghyZXJhbmtlchgBIAEoCzJHLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZVVwZGF0ZS5SZXRyaWV2ZXIuUmVyYW5rZXIawwIKCFJlcmFua2VyEg8KB2VuYWJsZWQYASABKAgSYgoIcHJvdmlkZXIYAiABKAsyUC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGUuUmV0cmlldmVyLlJlcmFua2VyLlByb3ZpZGVyGsEBCghQcm92aWRlchJpCgZjb2hlcmUYASABKAsyVy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGUuUmV0cmlldmVyLlJlcmFua2VyLlByb3ZpZGVyLkNvaGVyZUgAGj4KBkNvaGVyZRIaCgdhcGlfa2V5GAIgASgJQgngQQK6SAPIAQESGAoFbW9kZWwYAyABKAlCCeBBArpIA8gBAUIKCghwcm92aWRlchqRAgoKR2VuZXJhdGlvbhJlCghwcm92aWRlchgBIAEoCzJILnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZVVwZGF0ZS5HZW5lcmF0aW9uLlByb3ZpZGVyQgngQQK6SAPIAQEamwEKCFByb3ZpZGVyEmEKBm9wZW5haRgBIAEoCzJPLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuS25vd2xlZGdlQmFzZVVwZGF0ZS5HZW5lcmF0aW9uLlByb3ZpZGVyLk9wZW5BSUgAGhkKBk9wZW5BSRIPCgdhcGlfa2V5GAEgASgJQhEKCHByb3ZpZGVyEgW6SAIIATpT6kFQCi1yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzL0tub3dsZWRnZUJhc2UqD2tub3dsZWRnZV9iYXNlczIOa25vd2xlZGdlX2Jhc2UiagoaQ3JlYXRlS25vd2xlZGdlQmFzZVJlcXVlc3QSTAoOa25vd2xlZGdlX2Jhc2UYASABKAsyNC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VDcmVhdGUiZQobQ3JlYXRlS25vd2xlZGdlQmFzZVJlc3BvbnNlEkYKDmtub3dsZWRnZV9iYXNlGAEgASgLMi4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlIjUKF0dldEtub3dsZWRnZUJhc2VSZXF1ZXN0EhoKAmlkGAEgASgJQg7gQQK6SAjIAQFyA5gBFCJiChhHZXRLbm93bGVkZ2VCYXNlUmVzcG9uc2USRgoOa25vd2xlZGdlX2Jhc2UYASABKAsyLi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2UiqwUKGUxpc3RLbm93bGVkZ2VCYXNlc1JlcXVlc3QSngEKCXBhZ2Vfc2l6ZRgBIAEoBUKKAZJBdTJhTGltaXQgdGhlIHBhZ2luYXRlZCByZXNwb25zZSB0byBhIG51bWJlciBvZiBpdGVtcy4gRGVmYXVsdHMgdG8gMTAwLiBVc2UgLTEgdG8gZGlzYWJsZSBwYWdpbmF0aW9uLlkAAAAAAABJQGkAAAAAAADwv7pIDxoNGDIo////////////ARISCgpwYWdlX3Rva2VuGAIgASgJElEKBmZpbHRlchgDIAEoCzJBLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdEtub3dsZWRnZUJhc2VzUmVxdWVzdC5GaWx0ZXIahQMKBkZpbHRlchJ9Cg1uYW1lX2NvbnRhaW5zGAEgASgJQmaSQUQyQkFueSBLbm93bGVkZ2VCYXNlIHRoYXQgcGFydGlhbGx5IG1hdGNoIHRoaXMgbmFtZSB3aWxsIGJlIHJldHVybmVkLrpIHNgBAXIXGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSzgEKBHRhZ3MYAiADKAsySy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkxpc3RLbm93bGVkZ2VCYXNlc1JlcXVlc3QuRmlsdGVyLlRhZ3NFbnRyeUJzkkFDMkFLbm93bGVkZ2VCYXNlcyB0aGF0IG1hdGNoIGFsbCB0aGUgcHJvdmlkZWQgdGFncyB3aWxsIGJlIHJldHVybmVkLrpIKpoBJxAQKiNyITIfXihbXHB7TH1ccHtafVxwe059Xy46Lz0rXC1AXSopJBorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJ+ChpMaXN0S25vd2xlZGdlQmFzZXNSZXNwb25zZRJHCg9rbm93bGVkZ2VfYmFzZXMYASADKAsyLi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2USFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJIsIBChpVcGRhdGVLbm93bGVkZ2VCYXNlUmVxdWVzdBIaCgJpZBgBIAEoCUIO4EECukgIyAEBcgOYARQSVwoOa25vd2xlZGdlX2Jhc2UYAiABKAsyNC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLktub3dsZWRnZUJhc2VVcGRhdGVCCeBBArpIA8gBARIvCgt1cGRhdGVfbWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siZQobVXBkYXRlS25vd2xlZGdlQmFzZVJlc3BvbnNlEkYKDmtub3dsZWRnZV9iYXNlGAEgASgLMi4ucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5Lbm93bGVkZ2VCYXNlIjgKGkRlbGV0ZUtub3dsZWRnZUJhc2VSZXF1ZXN0EhoKAmlkGAEgASgJQg7gQQK6SAjIAQFyA5gBFCIdChtEZWxldGVLbm93bGVkZ2VCYXNlUmVzcG9uc2UyoQsKFEtub3dsZWRnZUJhc2VTZXJ2aWNlEv8BChNDcmVhdGVLbm93bGVkZ2VCYXNlEjsucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5DcmVhdGVLbm93bGVkZ2VCYXNlUmVxdWVzdBo8LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuQ3JlYXRlS25vd2xlZGdlQmFzZVJlc3BvbnNlIm3avwcwCg5rbm93bGVkZ2ViYXNlcxoeZGF0YXBsYW5lX2tub3dsZWRnZWJhc2VfY3JlYXRliqYdBAgCEASC0+STAis6Dmtub3dsZWRnZV9iYXNlIhkvdjFhbHBoYTMva25vd2xlZGdlLWJhc2VzEvQBChBHZXRLbm93bGVkZ2VCYXNlEjgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5HZXRLbm93bGVkZ2VCYXNlUmVxdWVzdBo5LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuR2V0S25vd2xlZGdlQmFzZVJlc3BvbnNlImvavwc5Cg5rbm93bGVkZ2ViYXNlcxIKcmVxdWVzdC5pZBobZGF0YXBsYW5lX2tub3dsZWRnZWJhc2VfZ2V0iqYdBAgBEASC0+STAiASHi92MWFscGhhMy9rbm93bGVkZ2UtYmFzZXMve2lkfRKQAgoSTGlzdEtub3dsZWRnZUJhc2VzEjoucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5MaXN0S25vd2xlZGdlQmFzZXNSZXF1ZXN0GjsucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5MaXN0S25vd2xlZGdlQmFzZXNSZXNwb25zZSKAAeK/B1MKGHJlc3BvbnNlLmtub3dsZWRnZV9iYXNlcxI3Cg5rbm93bGVkZ2ViYXNlcxIHZWFjaC5pZBocZGF0YXBsYW5lX2tub3dsZWRnZWJhc2VfbGlzdIqmHQQIARAEgtPkkwIbEhkvdjFhbHBoYTMva25vd2xlZGdlLWJhc2VzEpACChNVcGRhdGVLbm93bGVkZ2VCYXNlEjsucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5VcGRhdGVLbm93bGVkZ2VCYXNlUmVxdWVzdBo8LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuVXBkYXRlS25vd2xlZGdlQmFzZVJlc3BvbnNlIn7avwc8Cg5rbm93bGVkZ2ViYXNlcxIKcmVxdWVzdC5pZBoeZGF0YXBsYW5lX2tub3dsZWRnZWJhc2VfdXBkYXRliqYdBAgCEASC0+STAjA6Dmtub3dsZWRnZV9iYXNlGh4vdjFhbHBoYTMva25vd2xlZGdlLWJhc2VzL3tpZH0SgAIKE0RlbGV0ZUtub3dsZWRnZUJhc2USOy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkRlbGV0ZUtub3dsZWRnZUJhc2VSZXF1ZXN0GjwucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5EZWxldGVLbm93bGVkZ2VCYXNlUmVzcG9uc2Uibtq/BzwKDmtub3dsZWRnZWJhc2VzEgpyZXF1ZXN0LmlkGh5kYXRhcGxhbmVfa25vd2xlZGdlYmFzZV9kZWxldGWKph0ECAIQBILT5JMCICoeL3YxYWxwaGEzL2tub3dsZWRnZS1iYXNlcy97aWR9GmeSQWQKGVJlZHBhbmRhIEFJIEtub3dsZWRnZUJhc2USR0NyZWF0ZSBhbmQgbWFuYWdlIHJldHJpZXZhbC1hdWdtZW50ZWQgZ2VuZXJhdGlvbiAoUkFHKSBrbm93bGVkZ2UgYmFzZXMuYgZwcm90bzM", [file_buf_validate_validate, file_google_api_annotations, file_google_api_field_behavior, file_google_api_resource, file_google_protobuf_field_mask, file_protoc_gen_openapiv2_options_annotations, file_redpanda_api_auth_v1_authorization, file_redpanda_api_common_v1_options, file_redpanda_api_dataplane_v1_user]); /** * @generated from message redpanda.api.dataplane.v1alpha3.KnowledgeBase diff --git a/frontend/src/protogen/redpanda/api/dataplane/v1alpha3/mcp_pb.ts b/frontend/src/protogen/redpanda/api/dataplane/v1alpha3/mcp_pb.ts index 44c008acc1..43ea8afd21 100644 --- a/frontend/src/protogen/redpanda/api/dataplane/v1alpha3/mcp_pb.ts +++ b/frontend/src/protogen/redpanda/api/dataplane/v1alpha3/mcp_pb.ts @@ -14,6 +14,7 @@ import { file_protoc_gen_openapiv2_options_annotations } from "../../../../proto import { file_redpanda_api_auth_v1_authorization } from "../../auth/v1/authorization_pb"; import type { LintHint } from "../../common/v1/linthint_pb"; import { file_redpanda_api_common_v1_linthint } from "../../common/v1/linthint_pb"; +import { file_redpanda_api_common_v1_options } from "../../common/v1/options_pb"; import type { Pipeline_Resources } from "../v1/pipeline_pb"; import { file_redpanda_api_dataplane_v1_pipeline } from "../v1/pipeline_pb"; import type { Message } from "@bufbuild/protobuf"; @@ -22,7 +23,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file redpanda/api/dataplane/v1alpha3/mcp.proto. */ export const file_redpanda_api_dataplane_v1alpha3_mcp: GenFile = /*@__PURE__*/ - fileDesc("CilyZWRwYW5kYS9hcGkvZGF0YXBsYW5lL3YxYWxwaGEzL21jcC5wcm90bxIfcmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMyKCDAoJTUNQU2VydmVyEioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQSOgoMZGlzcGxheV9uYW1lGAIgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAyABKAlCCLpIBXIDGIACEr8BCgV0b29scxgEIAMoCzI1LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyLlRvb2xzRW50cnlCeZJBaDJmTWFwIG9mIHRvb2wgbmFtZXMgdG8gdGhlaXIgY29uZmlndXJhdGlvbnMuIEVhY2ggdG9vbCBkZWZpbmVzIGEgY2FwYWJpbGl0eSB0aGF0IHRoZSBNQ1Agc2VydmVyIGV4cG9zZXMu4EECukgIyAEBmgECCAES/AEKCXJlc291cmNlcxgFIAEoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUuUmVzb3VyY2VzQrkBkkG1ATKyAVRoZSByZXF1ZXN0ZWQgYW1vdW50IG9mIHJlc291cmNlcyBmb3IgdGhlIE1DUCBzZXJ2ZXIuIERlcGVuZGluZyBvbiB0aGUgYmFja2VuZCwgdGhlIHJlc291cmNlcyBtaWdodCBiZSBndWFyYW50ZWVkLCBvciBtaWdodCBiZSB0d2Vha2VkIGJhc2VkIG9uIHRoZSB1dGlsaXphdGlvbiBvZiB0aGUgTUNQIHNlcnZlci4ScQoEdGFncxgGIAMoCzI0LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyLlRhZ3NFbnRyeUItukgqmgEnEBAqI3IhMh9eKFtccHtMfVxwe1p9XHB7Tn1fLjovPStcLUBdKikkEkQKBXN0YXRlGAcgASgOMjAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5NQ1BTZXJ2ZXIuU3RhdGVCA+BBAxJGCgZzdGF0dXMYCCABKAsyMS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlci5TdGF0dXNCA+BBAxIQCgN1cmwYCSABKAlCA+BBAxqsAgoEVG9vbBJhCg5jb21wb25lbnRfdHlwZRgBIAEoDjI9LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyLlRvb2wuQ29tcG9uZW50VHlwZUIKukgHggEEEAEgABIiCgtjb25maWdfeWFtbBgCIAEoCUIN4EECukgHyAEBcgIQASKcAQoNQ29tcG9uZW50VHlwZRIeChpDT01QT05FTlRfVFlQRV9VTlNQRUNJRklFRBAAEhwKGENPTVBPTkVOVF9UWVBFX1BST0NFU1NPUhABEhgKFENPTVBPTkVOVF9UWVBFX0NBQ0hFEAISGAoUQ09NUE9ORU5UX1RZUEVfSU5QVVQQAxIZChVDT01QT05FTlRfVFlQRV9PVVRQVVQQBBpdCgpUb29sc0VudHJ5EgsKA2tleRgBIAEoCRI+CgV2YWx1ZRgCIAEoCzIvLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyLlRvb2w6AjgBGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBGhcKBlN0YXR1cxINCgVlcnJvchgBIAEoCSJ9CgVTdGF0ZRIVChFTVEFURV9VTlNQRUNJRklFRBAAEhIKDlNUQVRFX1NUQVJUSU5HEAESEQoNU1RBVEVfUlVOTklORxACEhIKDlNUQVRFX1NUT1BQSU5HEAMSEQoNU1RBVEVfU1RPUFBFRBAEEg8KC1NUQVRFX0VSUk9SEAU6R+pBRAopcmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy9NQ1BTZXJ2ZXIqC21jcF9zZXJ2ZXJzMgptY3Bfc2VydmVyIuMFCg9NQ1BTZXJ2ZXJDcmVhdGUSOgoMZGlzcGxheV9uYW1lGAEgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAiABKAlCCLpIBXIDGIACEt4BCgV0b29scxgDIAMoCzI7LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyQ3JlYXRlLlRvb2xzRW50cnlCkQGSQWgyZk1hcCBvZiB0b29sIG5hbWVzIHRvIHRoZWlyIGNvbmZpZ3VyYXRpb25zLiBFYWNoIHRvb2wgZGVmaW5lcyBhIGNhcGFiaWxpdHkgdGhhdCB0aGUgTUNQIHNlcnZlciBleHBvc2VzLuBBArpIIMgBAZoBGggBIhZyFBhAMhBeW0EtWmEtejAtOV8tXSskEkAKCXJlc291cmNlcxgEIAEoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUuUmVzb3VyY2VzEncKBHRhZ3MYBSADKAsyOi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlckNyZWF0ZS5UYWdzRW50cnlCLbpIKpoBJxAQKiNyITIfXihbXHB7TH1ccHtafVxwe059Xy46Lz0rXC1AXSopJBpdCgpUb29sc0VudHJ5EgsKA2tleRgBIAEoCRI+CgV2YWx1ZRgCIAEoCzIvLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyLlRvb2w6AjgBGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBOk3qQUoKL3JlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMvTUNQU2VydmVyQ3JlYXRlKgttY3Bfc2VydmVyczIKbWNwX3NlcnZlciJeChZDcmVhdGVNQ1BTZXJ2ZXJSZXF1ZXN0EkQKCm1jcF9zZXJ2ZXIYASABKAsyMC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlckNyZWF0ZSJZChdDcmVhdGVNQ1BTZXJ2ZXJSZXNwb25zZRI+CgptY3Bfc2VydmVyGAEgASgLMioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5NQ1BTZXJ2ZXIiQQoTR2V0TUNQU2VydmVyUmVxdWVzdBIqCgJpZBgBIAEoCUIe4EECukgYyAEBchMyEV5bQS1aYS16MC05LV8vXSskIlYKFEdldE1DUFNlcnZlclJlc3BvbnNlEj4KCm1jcF9zZXJ2ZXIYASABKAsyKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlciLwBQoVTGlzdE1DUFNlcnZlcnNSZXF1ZXN0Ek0KBmZpbHRlchgBIAEoCzI9LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdE1DUFNlcnZlcnNSZXF1ZXN0LkZpbHRlchKeAQoJcGFnZV9zaXplGAIgASgFQooBkkF1MmFMaW1pdCB0aGUgcGFnaW5hdGVkIHJlc3BvbnNlIHRvIGEgbnVtYmVyIG9mIGl0ZW1zLiBEZWZhdWx0cyB0byAxMDAuIFVzZSAtMSB0byBkaXNhYmxlIHBhZ2luYXRpb24uWQAAAAAAAElAaQAAAAAAAPC/ukgPGg0YMij///////////8BEhIKCnBhZ2VfdG9rZW4YAyABKAka0gMKBkZpbHRlchJ2ChVkaXNwbGF5X25hbWVfY29udGFpbnMYASABKAlCV5JBNTIzUmV0dXJucyBNQ1Agc2VydmVycyB0aGF0IHBhcnRpYWxseSBtYXRjaCB0aGlzIG5hbWUuukgc2AEBchcYgAEyEl5bQS1aYS16MC05LV8gL10rJBLyAQoEdGFncxgCIAMoCzJHLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdE1DUFNlcnZlcnNSZXF1ZXN0LkZpbHRlci5UYWdzRW50cnlCmgGSQWoyaEZpbHRlcnMgYnkgdGFncyB1c2luZyBleGFjdCBtYXRjaC4gUmV0dXJucyBvbmx5IE1DUCBzZXJ2ZXJzIHRoYXQgaGF2ZSBhbGwgdGhlIHNwZWNpZmllZCBrZXktdmFsdWUgcGFpcnMuukgqmgEnEBAqI3IhMh9eKFtccHtMfVxwe1p9XHB7Tn1fLjovPStcLUBdKikkEi4KCXNlY3JldF9pZBgDIAEoCUIbukgY2AEBchMyEV5bQS1aXVtBLVowLTlfXSokGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBInIKFkxpc3RNQ1BTZXJ2ZXJzUmVzcG9uc2USPwoLbWNwX3NlcnZlcnMYASADKAsyKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlchIXCg9uZXh0X3BhZ2VfdG9rZW4YAiABKAki1QUKD01DUFNlcnZlclVwZGF0ZRI0CgxkaXNwbGF5X25hbWUYASABKAlCHrpIG3IZEAMYgAEyEl5bQS1aYS16MC05LV8gL10rJBIdCgtkZXNjcmlwdGlvbhgCIAEoCUIIukgFcgMYgAIS1gEKBXRvb2xzGAMgAygLMjsucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5NQ1BTZXJ2ZXJVcGRhdGUuVG9vbHNFbnRyeUKJAZJBaDJmTWFwIG9mIHRvb2wgbmFtZXMgdG8gdGhlaXIgY29uZmlndXJhdGlvbnMuIEVhY2ggdG9vbCBkZWZpbmVzIGEgY2FwYWJpbGl0eSB0aGF0IHRoZSBNQ1Agc2VydmVyIGV4cG9zZXMuukgbmgEYIhZyFBhAMhBeW0EtWmEtejAtOV8tXSskEkAKCXJlc291cmNlcxgEIAEoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUuUmVzb3VyY2VzEncKBHRhZ3MYBSADKAsyOi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlclVwZGF0ZS5UYWdzRW50cnlCLbpIKpoBJxAQKiNyITIfXihbXHB7TH1ccHtafVxwe059Xy46Lz0rXC1AXSopJBpdCgpUb29sc0VudHJ5EgsKA2tleRgBIAEoCRI+CgV2YWx1ZRgCIAEoCzIvLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyLlRvb2w6AjgBGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBOk3qQUoKL3JlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMvTUNQU2VydmVyVXBkYXRlKgttY3Bfc2VydmVyczIKbWNwX3NlcnZlciLGAQoWVXBkYXRlTUNQU2VydmVyUmVxdWVzdBIqCgJpZBgBIAEoCUIe4EECukgYyAEBchMyEV5bQS1aYS16MC05LV8vXSskEk8KCm1jcF9zZXJ2ZXIYAiABKAsyMC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlclVwZGF0ZUIJ4EECukgDyAEBEi8KC3VwZGF0ZV9tYXNrGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJZChdVcGRhdGVNQ1BTZXJ2ZXJSZXNwb25zZRI+CgptY3Bfc2VydmVyGAEgASgLMioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5NQ1BTZXJ2ZXIiRAoWRGVsZXRlTUNQU2VydmVyUmVxdWVzdBIqCgJpZBgBIAEoCUIe4EECukgYyAEBchMyEV5bQS1aYS16MC05LV8vXSskIhkKF0RlbGV0ZU1DUFNlcnZlclJlc3BvbnNlIkIKFFN0b3BNQ1BTZXJ2ZXJSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiVwoVU3RvcE1DUFNlcnZlclJlc3BvbnNlEj4KCm1jcF9zZXJ2ZXIYASABKAsyKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlciJDChVTdGFydE1DUFNlcnZlclJlcXVlc3QSKgoCaWQYASABKAlCHuBBArpIGMgBAXITMhFeW0EtWmEtejAtOS1fL10rJCJYChZTdGFydE1DUFNlcnZlclJlc3BvbnNlEj4KCm1jcF9zZXJ2ZXIYASABKAsyKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlciIoCiZHZXRNQ1BTZXJ2ZXJTZXJ2aWNlQ29uZmlnU2NoZW1hUmVxdWVzdCLuAgonR2V0TUNQU2VydmVyU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNlErgBChNjb25maWd1cmF0aW9uX3lhbWxzGAEgAygLMmAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5HZXRNQ1BTZXJ2ZXJTZXJ2aWNlQ29uZmlnU2NoZW1hUmVzcG9uc2UuQ29uZmlndXJhdGlvbllBTUxTY2hlbWFCOZJBLjIsVGhlIGNvbmZpZ3VyYXRpb24gc2NoZW1hIGZvciB0aGUgTUNQIHNlcnZlci66SAWSAQIIARqHAQoXQ29uZmlndXJhdGlvbllBTUxTY2hlbWESVQoOY29tcG9uZW50X3R5cGUYASABKA4yPS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlci5Ub29sLkNvbXBvbmVudFR5cGUSFQoNY29uZmlnX3NjaGVtYRgCIAEoCSLRAQoUTGludE1DUENvbmZpZ1JlcXVlc3QSWgoFdG9vbHMYASADKAsyQC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkxpbnRNQ1BDb25maWdSZXF1ZXN0LlRvb2xzRW50cnlCCeBBArpIA8gBARpdCgpUb29sc0VudHJ5EgsKA2tleRgBIAEoCRI+CgV2YWx1ZRgCIAEoCzIvLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyLlRvb2w6AjgBIsYBChVMaW50TUNQQ29uZmlnUmVzcG9uc2USWQoKbGludF9oaW50cxgBIAMoCzJFLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGludE1DUENvbmZpZ1Jlc3BvbnNlLkxpbnRIaW50c0VudHJ5GlIKDkxpbnRIaW50c0VudHJ5EgsKA2tleRgBIAEoCRIvCgV2YWx1ZRgCIAEoCzIgLnJlZHBhbmRhLmFwaS5jb21tb24udjEuTGludEhpbnQ6AjgBMqAbChBNQ1BTZXJ2ZXJTZXJ2aWNlErYCCg9DcmVhdGVNQ1BTZXJ2ZXISNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkNyZWF0ZU1DUFNlcnZlclJlcXVlc3QaOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkNyZWF0ZU1DUFNlcnZlclJlc3BvbnNlIq8BkkFqEhFDcmVhdGUgTUNQIHNlcnZlchoYQ3JlYXRlIGEgbmV3IE1DUCBzZXJ2ZXIuSjsKAzIwMRI0CgJPSxIuCiwaKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlcoqmHQQIAhAHgtPkkwI0OgptY3Bfc2VydmVyIiYvdjFhbHBoYTMvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVycxLSAgoMR2V0TUNQU2VydmVyEjQucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5HZXRNQ1BTZXJ2ZXJSZXF1ZXN0GjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5HZXRNQ1BTZXJ2ZXJSZXNwb25zZSLUAZJBlQESDkdldCBNQ1Agc2VydmVyGhpHZXQgYSBzcGVjaWZpYyBNQ1Agc2VydmVyLko7CgMyMDASNAoCT0sSLgosGioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5NQ1BTZXJ2ZXJKKgoDNDA0EiMKCU5vdCBGb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c4qmHQQIARAHgtPkkwItEisvdjFhbHBoYTMvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVycy97aWR9EuUCCg5MaXN0TUNQU2VydmVycxI2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdE1DUFNlcnZlcnNSZXF1ZXN0GjcucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5MaXN0TUNQU2VydmVyc1Jlc3BvbnNlIuEBkkGnARIQTGlzdCBNQ1Agc2VydmVycxpJTGlzdHMgTUNQIHNlcnZlcnMuIE9wdGlvbmFsbHkgZmlsdGVyIGJ5IGRpc3BsYXkgbmFtZSwgdGFncywgb3Igc2VjcmV0IElELkpICgMyMDASQQoCT0sSOwo5GjcucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5MaXN0TUNQU2VydmVyc1Jlc3BvbnNliqYdBAgBEAeC0+STAigSJi92MWFscGhhMy9yZWRwYW5kYS1jb25uZWN0L21jcC1zZXJ2ZXJzEtACCg9VcGRhdGVNQ1BTZXJ2ZXISNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLlVwZGF0ZU1DUFNlcnZlclJlcXVlc3QaOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLlVwZGF0ZU1DUFNlcnZlclJlc3BvbnNlIskBkkF/EhRVcGRhdGUgYW4gTUNQIHNlcnZlchoqVXBkYXRlIHRoZSBjb25maWd1cmF0aW9uIG9mIGFuIE1DUCBzZXJ2ZXIuSjsKAzIwMBI0CgJPSxIuCiwaKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlcoqmHQQIAhAHgtPkkwI5OgptY3Bfc2VydmVyGisvdjFhbHBoYTMvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVycy97aWR9ErICCg9EZWxldGVNQ1BTZXJ2ZXISNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkRlbGV0ZU1DUFNlcnZlclJlcXVlc3QaOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkRlbGV0ZU1DUFNlcnZlclJlc3BvbnNlIqsBkkFtEhREZWxldGUgYW4gTUNQIHNlcnZlchoVRGVsZXRlIGFuIE1DUCBzZXJ2ZXIuShIKAzIwNBILCgdEZWxldGVkEgBKKgoDNDA0EiMKCU5vdCBGb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c4qmHQQIAhAHgtPkkwItKisvdjFhbHBoYTMvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVycy97aWR9EuMCCg1TdG9wTUNQU2VydmVyEjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5TdG9wTUNQU2VydmVyUmVxdWVzdBo2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuU3RvcE1DUFNlcnZlclJlc3BvbnNlIuIBkkGeARISU3RvcCBhbiBNQ1Agc2VydmVyGhpTdG9wIGEgcnVubmluZyBNQ1Agc2VydmVyLkpACgMyMDASOQoHU3RvcHBlZBIuCiwaKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlckoqCgM0MDQSIwoJTm90IEZvdW5kEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVziqYdBAgCEAeC0+STAjIiMC92MWFscGhhMy9yZWRwYW5kYS1jb25uZWN0L21jcC1zZXJ2ZXJzL3tpZH06c3RvcBLpAgoOU3RhcnRNQ1BTZXJ2ZXISNi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLlN0YXJ0TUNQU2VydmVyUmVxdWVzdBo3LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuU3RhcnRNQ1BTZXJ2ZXJSZXNwb25zZSLlAZJBoAESE1N0YXJ0IGFuIE1DUCBzZXJ2ZXIaG1N0YXJ0IGEgc3RvcHBlZCBNQ1Agc2VydmVyLkpACgMyMDASOQoHU3RhcnRlZBIuCiwaKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlckoqCgM0MDQSIwoJTm90IEZvdW5kEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVziqYdBAgCEAeC0+STAjMiMS92MWFscGhhMy9yZWRwYW5kYS1jb25uZWN0L21jcC1zZXJ2ZXJzL3tpZH06c3RhcnQS6AMKH0dldE1DUFNlcnZlclNlcnZpY2VDb25maWdTY2hlbWESRy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkdldE1DUFNlcnZlclNlcnZpY2VDb25maWdTY2hlbWFSZXF1ZXN0GkgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5HZXRNQ1BTZXJ2ZXJTZXJ2aWNlQ29uZmlnU2NoZW1hUmVzcG9uc2UisQKSQecBEiNHZXQgTUNQIHNlcnZlciBjb25maWd1cmF0aW9uIHNjaGVtYRplUmV0dXJucyB0aGUgY29uZmlndXJhdGlvbiBzY2hlbWEgZm9yIE1DUCBzZXJ2ZXIgdG9vbHMsIGluY2x1ZGluZyBhdmFpbGFibGUgY29tcG9uZW50cyBhbmQgcHJvY2Vzc29ycy5KWQoDMjAwElIKAk9LEkwKShpILnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuR2V0TUNQU2VydmVyU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNliqYdBAgBEAeC0+STAjgSNi92MWFscGhhMy9yZWRwYW5kYS1jb25uZWN0L21jcC1zZXJ2ZXJzOmdldENvbmZpZ1NjaGVtYRKGBAoNTGludE1DUENvbmZpZxI1LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGludE1DUENvbmZpZ1JlcXVlc3QaNi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkxpbnRNQ1BDb25maWdSZXNwb25zZSKFA5JBvAISHkxpbnQgYSBNQ1AgdG9vbHMgY29uZmlndXJhdGlvbhqjAVZhbGlkYXRlcyBhIGdpdmVuIE1DUCB0b29sJ3MgY29uZmlndXJhdGlvbiBhbmQgcmV0dXJucyBsaW50aW5nIGhpbnRzLiBFYWNoIHRvb2wncyBZQU1MIGNvbmZpZ3VyYXRpb24gaXMgdmFsaWRhdGVkLiBJZiBubyBwcm9ibGVtcyBhcmUgZm91bmQsIHRoZSByZXNwb25zZSBpcyBlbXB0eS5KdAoDMjAwEm0KL0xpbnRpbmcgZmluaXNoZWQuIFNlZSBgbGludF9oaW50c2AgZm9yIGRldGFpbHMuEjoKOBo2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGludE1DUENvbmZpZ1Jlc3BvbnNliqYdBAgBEASC0+STAjc6ASoiMi92MWFscGhhMy9yZWRwYW5kYS1jb25uZWN0L21jcC1zZXJ2ZXJzOmxpbnQtY29uZmlnGkiSQUUKClJlbW90ZSBNQ1ASN0NyZWF0ZSBhbmQgbWFuYWdlIE1DUCBzZXJ2ZXJzIGFuZCB0aGVpciBjb25maWd1cmF0aW9ucy5iBnByb3RvMw", [file_buf_validate_validate, file_google_api_annotations, file_google_api_field_behavior, file_google_api_resource, file_google_protobuf_field_mask, file_protoc_gen_openapiv2_options_annotations, file_redpanda_api_auth_v1_authorization, file_redpanda_api_common_v1_linthint, file_redpanda_api_dataplane_v1_pipeline]); + fileDesc("CilyZWRwYW5kYS9hcGkvZGF0YXBsYW5lL3YxYWxwaGEzL21jcC5wcm90bxIfcmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMyKCDAoJTUNQU2VydmVyEioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQSOgoMZGlzcGxheV9uYW1lGAIgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAyABKAlCCLpIBXIDGIACEr8BCgV0b29scxgEIAMoCzI1LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyLlRvb2xzRW50cnlCeZJBaDJmTWFwIG9mIHRvb2wgbmFtZXMgdG8gdGhlaXIgY29uZmlndXJhdGlvbnMuIEVhY2ggdG9vbCBkZWZpbmVzIGEgY2FwYWJpbGl0eSB0aGF0IHRoZSBNQ1Agc2VydmVyIGV4cG9zZXMu4EECukgIyAEBmgECCAES/AEKCXJlc291cmNlcxgFIAEoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUuUmVzb3VyY2VzQrkBkkG1ATKyAVRoZSByZXF1ZXN0ZWQgYW1vdW50IG9mIHJlc291cmNlcyBmb3IgdGhlIE1DUCBzZXJ2ZXIuIERlcGVuZGluZyBvbiB0aGUgYmFja2VuZCwgdGhlIHJlc291cmNlcyBtaWdodCBiZSBndWFyYW50ZWVkLCBvciBtaWdodCBiZSB0d2Vha2VkIGJhc2VkIG9uIHRoZSB1dGlsaXphdGlvbiBvZiB0aGUgTUNQIHNlcnZlci4ScQoEdGFncxgGIAMoCzI0LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyLlRhZ3NFbnRyeUItukgqmgEnEBAqI3IhMh9eKFtccHtMfVxwe1p9XHB7Tn1fLjovPStcLUBdKikkEkQKBXN0YXRlGAcgASgOMjAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5NQ1BTZXJ2ZXIuU3RhdGVCA+BBAxJGCgZzdGF0dXMYCCABKAsyMS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlci5TdGF0dXNCA+BBAxIQCgN1cmwYCSABKAlCA+BBAxqsAgoEVG9vbBJhCg5jb21wb25lbnRfdHlwZRgBIAEoDjI9LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyLlRvb2wuQ29tcG9uZW50VHlwZUIKukgHggEEEAEgABIiCgtjb25maWdfeWFtbBgCIAEoCUIN4EECukgHyAEBcgIQASKcAQoNQ29tcG9uZW50VHlwZRIeChpDT01QT05FTlRfVFlQRV9VTlNQRUNJRklFRBAAEhwKGENPTVBPTkVOVF9UWVBFX1BST0NFU1NPUhABEhgKFENPTVBPTkVOVF9UWVBFX0NBQ0hFEAISGAoUQ09NUE9ORU5UX1RZUEVfSU5QVVQQAxIZChVDT01QT05FTlRfVFlQRV9PVVRQVVQQBBpdCgpUb29sc0VudHJ5EgsKA2tleRgBIAEoCRI+CgV2YWx1ZRgCIAEoCzIvLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyLlRvb2w6AjgBGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBGhcKBlN0YXR1cxINCgVlcnJvchgBIAEoCSJ9CgVTdGF0ZRIVChFTVEFURV9VTlNQRUNJRklFRBAAEhIKDlNUQVRFX1NUQVJUSU5HEAESEQoNU1RBVEVfUlVOTklORxACEhIKDlNUQVRFX1NUT1BQSU5HEAMSEQoNU1RBVEVfU1RPUFBFRBAEEg8KC1NUQVRFX0VSUk9SEAU6R+pBRAopcmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy9NQ1BTZXJ2ZXIqC21jcF9zZXJ2ZXJzMgptY3Bfc2VydmVyIuMFCg9NQ1BTZXJ2ZXJDcmVhdGUSOgoMZGlzcGxheV9uYW1lGAEgASgJQiTgQQK6SB7IAQFyGRADGIABMhJeW0EtWmEtejAtOS1fIC9dKyQSHQoLZGVzY3JpcHRpb24YAiABKAlCCLpIBXIDGIACEt4BCgV0b29scxgDIAMoCzI7LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyQ3JlYXRlLlRvb2xzRW50cnlCkQGSQWgyZk1hcCBvZiB0b29sIG5hbWVzIHRvIHRoZWlyIGNvbmZpZ3VyYXRpb25zLiBFYWNoIHRvb2wgZGVmaW5lcyBhIGNhcGFiaWxpdHkgdGhhdCB0aGUgTUNQIHNlcnZlciBleHBvc2VzLuBBArpIIMgBAZoBGggBIhZyFBhAMhBeW0EtWmEtejAtOV8tXSskEkAKCXJlc291cmNlcxgEIAEoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUuUmVzb3VyY2VzEncKBHRhZ3MYBSADKAsyOi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlckNyZWF0ZS5UYWdzRW50cnlCLbpIKpoBJxAQKiNyITIfXihbXHB7TH1ccHtafVxwe059Xy46Lz0rXC1AXSopJBpdCgpUb29sc0VudHJ5EgsKA2tleRgBIAEoCRI+CgV2YWx1ZRgCIAEoCzIvLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyLlRvb2w6AjgBGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBOk3qQUoKL3JlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMvTUNQU2VydmVyQ3JlYXRlKgttY3Bfc2VydmVyczIKbWNwX3NlcnZlciJeChZDcmVhdGVNQ1BTZXJ2ZXJSZXF1ZXN0EkQKCm1jcF9zZXJ2ZXIYASABKAsyMC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlckNyZWF0ZSJZChdDcmVhdGVNQ1BTZXJ2ZXJSZXNwb25zZRI+CgptY3Bfc2VydmVyGAEgASgLMioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5NQ1BTZXJ2ZXIiQQoTR2V0TUNQU2VydmVyUmVxdWVzdBIqCgJpZBgBIAEoCUIe4EECukgYyAEBchMyEV5bQS1aYS16MC05LV8vXSskIlYKFEdldE1DUFNlcnZlclJlc3BvbnNlEj4KCm1jcF9zZXJ2ZXIYASABKAsyKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlciLwBQoVTGlzdE1DUFNlcnZlcnNSZXF1ZXN0Ek0KBmZpbHRlchgBIAEoCzI9LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdE1DUFNlcnZlcnNSZXF1ZXN0LkZpbHRlchKeAQoJcGFnZV9zaXplGAIgASgFQooBkkF1MmFMaW1pdCB0aGUgcGFnaW5hdGVkIHJlc3BvbnNlIHRvIGEgbnVtYmVyIG9mIGl0ZW1zLiBEZWZhdWx0cyB0byAxMDAuIFVzZSAtMSB0byBkaXNhYmxlIHBhZ2luYXRpb24uWQAAAAAAAElAaQAAAAAAAPC/ukgPGg0YMij///////////8BEhIKCnBhZ2VfdG9rZW4YAyABKAka0gMKBkZpbHRlchJ2ChVkaXNwbGF5X25hbWVfY29udGFpbnMYASABKAlCV5JBNTIzUmV0dXJucyBNQ1Agc2VydmVycyB0aGF0IHBhcnRpYWxseSBtYXRjaCB0aGlzIG5hbWUuukgc2AEBchcYgAEyEl5bQS1aYS16MC05LV8gL10rJBLyAQoEdGFncxgCIAMoCzJHLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdE1DUFNlcnZlcnNSZXF1ZXN0LkZpbHRlci5UYWdzRW50cnlCmgGSQWoyaEZpbHRlcnMgYnkgdGFncyB1c2luZyBleGFjdCBtYXRjaC4gUmV0dXJucyBvbmx5IE1DUCBzZXJ2ZXJzIHRoYXQgaGF2ZSBhbGwgdGhlIHNwZWNpZmllZCBrZXktdmFsdWUgcGFpcnMuukgqmgEnEBAqI3IhMh9eKFtccHtMfVxwe1p9XHB7Tn1fLjovPStcLUBdKikkEi4KCXNlY3JldF9pZBgDIAEoCUIbukgY2AEBchMyEV5bQS1aXVtBLVowLTlfXSokGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBInIKFkxpc3RNQ1BTZXJ2ZXJzUmVzcG9uc2USPwoLbWNwX3NlcnZlcnMYASADKAsyKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlchIXCg9uZXh0X3BhZ2VfdG9rZW4YAiABKAki1QUKD01DUFNlcnZlclVwZGF0ZRI0CgxkaXNwbGF5X25hbWUYASABKAlCHrpIG3IZEAMYgAEyEl5bQS1aYS16MC05LV8gL10rJBIdCgtkZXNjcmlwdGlvbhgCIAEoCUIIukgFcgMYgAIS1gEKBXRvb2xzGAMgAygLMjsucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5NQ1BTZXJ2ZXJVcGRhdGUuVG9vbHNFbnRyeUKJAZJBaDJmTWFwIG9mIHRvb2wgbmFtZXMgdG8gdGhlaXIgY29uZmlndXJhdGlvbnMuIEVhY2ggdG9vbCBkZWZpbmVzIGEgY2FwYWJpbGl0eSB0aGF0IHRoZSBNQ1Agc2VydmVyIGV4cG9zZXMuukgbmgEYIhZyFBhAMhBeW0EtWmEtejAtOV8tXSskEkAKCXJlc291cmNlcxgEIAEoCzItLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjEuUGlwZWxpbmUuUmVzb3VyY2VzEncKBHRhZ3MYBSADKAsyOi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlclVwZGF0ZS5UYWdzRW50cnlCLbpIKpoBJxAQKiNyITIfXihbXHB7TH1ccHtafVxwe059Xy46Lz0rXC1AXSopJBpdCgpUb29sc0VudHJ5EgsKA2tleRgBIAEoCRI+CgV2YWx1ZRgCIAEoCzIvLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyLlRvb2w6AjgBGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBOk3qQUoKL3JlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMvTUNQU2VydmVyVXBkYXRlKgttY3Bfc2VydmVyczIKbWNwX3NlcnZlciLGAQoWVXBkYXRlTUNQU2VydmVyUmVxdWVzdBIqCgJpZBgBIAEoCUIe4EECukgYyAEBchMyEV5bQS1aYS16MC05LV8vXSskEk8KCm1jcF9zZXJ2ZXIYAiABKAsyMC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlclVwZGF0ZUIJ4EECukgDyAEBEi8KC3VwZGF0ZV9tYXNrGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJZChdVcGRhdGVNQ1BTZXJ2ZXJSZXNwb25zZRI+CgptY3Bfc2VydmVyGAEgASgLMioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5NQ1BTZXJ2ZXIiRAoWRGVsZXRlTUNQU2VydmVyUmVxdWVzdBIqCgJpZBgBIAEoCUIe4EECukgYyAEBchMyEV5bQS1aYS16MC05LV8vXSskIhkKF0RlbGV0ZU1DUFNlcnZlclJlc3BvbnNlIkIKFFN0b3BNQ1BTZXJ2ZXJSZXF1ZXN0EioKAmlkGAEgASgJQh7gQQK6SBjIAQFyEzIRXltBLVphLXowLTktXy9dKyQiVwoVU3RvcE1DUFNlcnZlclJlc3BvbnNlEj4KCm1jcF9zZXJ2ZXIYASABKAsyKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlciJDChVTdGFydE1DUFNlcnZlclJlcXVlc3QSKgoCaWQYASABKAlCHuBBArpIGMgBAXITMhFeW0EtWmEtejAtOS1fL10rJCJYChZTdGFydE1DUFNlcnZlclJlc3BvbnNlEj4KCm1jcF9zZXJ2ZXIYASABKAsyKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlciIoCiZHZXRNQ1BTZXJ2ZXJTZXJ2aWNlQ29uZmlnU2NoZW1hUmVxdWVzdCLuAgonR2V0TUNQU2VydmVyU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNlErgBChNjb25maWd1cmF0aW9uX3lhbWxzGAEgAygLMmAucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5HZXRNQ1BTZXJ2ZXJTZXJ2aWNlQ29uZmlnU2NoZW1hUmVzcG9uc2UuQ29uZmlndXJhdGlvbllBTUxTY2hlbWFCOZJBLjIsVGhlIGNvbmZpZ3VyYXRpb24gc2NoZW1hIGZvciB0aGUgTUNQIHNlcnZlci66SAWSAQIIARqHAQoXQ29uZmlndXJhdGlvbllBTUxTY2hlbWESVQoOY29tcG9uZW50X3R5cGUYASABKA4yPS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlci5Ub29sLkNvbXBvbmVudFR5cGUSFQoNY29uZmlnX3NjaGVtYRgCIAEoCSLRAQoUTGludE1DUENvbmZpZ1JlcXVlc3QSWgoFdG9vbHMYASADKAsyQC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkxpbnRNQ1BDb25maWdSZXF1ZXN0LlRvb2xzRW50cnlCCeBBArpIA8gBARpdCgpUb29sc0VudHJ5EgsKA2tleRgBIAEoCRI+CgV2YWx1ZRgCIAEoCzIvLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVyLlRvb2w6AjgBIsYBChVMaW50TUNQQ29uZmlnUmVzcG9uc2USWQoKbGludF9oaW50cxgBIAMoCzJFLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGludE1DUENvbmZpZ1Jlc3BvbnNlLkxpbnRIaW50c0VudHJ5GlIKDkxpbnRIaW50c0VudHJ5EgsKA2tleRgBIAEoCRIvCgV2YWx1ZRgCIAEoCzIgLnJlZHBhbmRhLmFwaS5jb21tb24udjEuTGludEhpbnQ6AjgBMv4eChBNQ1BTZXJ2ZXJTZXJ2aWNlEuICCg9DcmVhdGVNQ1BTZXJ2ZXISNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkNyZWF0ZU1DUFNlcnZlclJlcXVlc3QaOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkNyZWF0ZU1DUFNlcnZlclJlc3BvbnNlItsBkkFqEhFDcmVhdGUgTUNQIHNlcnZlchoYQ3JlYXRlIGEgbmV3IE1DUCBzZXJ2ZXIuSjsKAzIwMRI0CgJPSxIuCiwaKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlctq/BygKCm1jcHNlcnZlcnMaGmRhdGFwbGFuZV9tY3BzZXJ2ZXJfY3JlYXRliqYdBAgCEAeC0+STAjQ6Cm1jcF9zZXJ2ZXIiJi92MWFscGhhMy9yZWRwYW5kYS1jb25uZWN0L21jcC1zZXJ2ZXJzEocDCgxHZXRNQ1BTZXJ2ZXISNC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkdldE1DUFNlcnZlclJlcXVlc3QaNS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkdldE1DUFNlcnZlclJlc3BvbnNlIokCkkGVARIOR2V0IE1DUCBzZXJ2ZXIaGkdldCBhIHNwZWNpZmljIE1DUCBzZXJ2ZXIuSjsKAzIwMBI0CgJPSxIuCiwaKi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLk1DUFNlcnZlckoqCgM0MDQSIwoJTm90IEZvdW5kEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVz2r8HMQoKbWNwc2VydmVycxIKcmVxdWVzdC5pZBoXZGF0YXBsYW5lX21jcHNlcnZlcl9nZXSKph0ECAEQB4LT5JMCLRIrL3YxYWxwaGEzL3JlZHBhbmRhLWNvbm5lY3QvbWNwLXNlcnZlcnMve2lkfRKwAwoOTGlzdE1DUFNlcnZlcnMSNi5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkxpc3RNQ1BTZXJ2ZXJzUmVxdWVzdBo3LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdE1DUFNlcnZlcnNSZXNwb25zZSKsApJBpwESEExpc3QgTUNQIHNlcnZlcnMaSUxpc3RzIE1DUCBzZXJ2ZXJzLiBPcHRpb25hbGx5IGZpbHRlciBieSBkaXNwbGF5IG5hbWUsIHRhZ3MsIG9yIHNlY3JldCBJRC5KSAoDMjAwEkEKAk9LEjsKORo3LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGlzdE1DUFNlcnZlcnNSZXNwb25zZeK/B0cKFHJlc3BvbnNlLm1jcF9zZXJ2ZXJzEi8KCm1jcHNlcnZlcnMSB2VhY2guaWQaGGRhdGFwbGFuZV9tY3BzZXJ2ZXJfbGlzdIqmHQQIARAHgtPkkwIoEiYvdjFhbHBoYTMvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVycxKIAwoPVXBkYXRlTUNQU2VydmVyEjcucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5VcGRhdGVNQ1BTZXJ2ZXJSZXF1ZXN0GjgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5VcGRhdGVNQ1BTZXJ2ZXJSZXNwb25zZSKBApJBfxIUVXBkYXRlIGFuIE1DUCBzZXJ2ZXIaKlVwZGF0ZSB0aGUgY29uZmlndXJhdGlvbiBvZiBhbiBNQ1Agc2VydmVyLko7CgMyMDASNAoCT0sSLgosGioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5NQ1BTZXJ2ZXLavwc0CgptY3BzZXJ2ZXJzEgpyZXF1ZXN0LmlkGhpkYXRhcGxhbmVfbWNwc2VydmVyX3VwZGF0ZYqmHQQIAhAHgtPkkwI5OgptY3Bfc2VydmVyGisvdjFhbHBoYTMvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVycy97aWR9EuoCCg9EZWxldGVNQ1BTZXJ2ZXISNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkRlbGV0ZU1DUFNlcnZlclJlcXVlc3QaOC5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkRlbGV0ZU1DUFNlcnZlclJlc3BvbnNlIuMBkkFtEhREZWxldGUgYW4gTUNQIHNlcnZlchoVRGVsZXRlIGFuIE1DUCBzZXJ2ZXIuShIKAzIwNBILCgdEZWxldGVkEgBKKgoDNDA0EiMKCU5vdCBGb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c9q/BzQKCm1jcHNlcnZlcnMSCnJlcXVlc3QuaWQaGmRhdGFwbGFuZV9tY3BzZXJ2ZXJfZGVsZXRliqYdBAgCEAeC0+STAi0qKy92MWFscGhhMy9yZWRwYW5kYS1jb25uZWN0L21jcC1zZXJ2ZXJzL3tpZH0SmwMKDVN0b3BNQ1BTZXJ2ZXISNS5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLlN0b3BNQ1BTZXJ2ZXJSZXF1ZXN0GjYucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5TdG9wTUNQU2VydmVyUmVzcG9uc2UimgKSQZ4BEhJTdG9wIGFuIE1DUCBzZXJ2ZXIaGlN0b3AgYSBydW5uaW5nIE1DUCBzZXJ2ZXIuSkAKAzIwMBI5CgdTdG9wcGVkEi4KLBoqLnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTUNQU2VydmVySioKAzQwNBIjCglOb3QgRm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXPavwc0CgptY3BzZXJ2ZXJzEgpyZXF1ZXN0LmlkGhpkYXRhcGxhbmVfbWNwc2VydmVyX2RlbGV0ZYqmHQQIAhAHgtPkkwIyIjAvdjFhbHBoYTMvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVycy97aWR9OnN0b3ASoQMKDlN0YXJ0TUNQU2VydmVyEjYucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5TdGFydE1DUFNlcnZlclJlcXVlc3QaNy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLlN0YXJ0TUNQU2VydmVyUmVzcG9uc2UinQKSQaABEhNTdGFydCBhbiBNQ1Agc2VydmVyGhtTdGFydCBhIHN0b3BwZWQgTUNQIHNlcnZlci5KQAoDMjAwEjkKB1N0YXJ0ZWQSLgosGioucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5NQ1BTZXJ2ZXJKKgoDNDA0EiMKCU5vdCBGb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c9q/BzQKCm1jcHNlcnZlcnMSCnJlcXVlc3QuaWQaGmRhdGFwbGFuZV9tY3BzZXJ2ZXJfY3JlYXRliqYdBAgCEAeC0+STAjMiMS92MWFscGhhMy9yZWRwYW5kYS1jb25uZWN0L21jcC1zZXJ2ZXJzL3tpZH06c3RhcnQSkQQKH0dldE1DUFNlcnZlclNlcnZpY2VDb25maWdTY2hlbWESRy5yZWRwYW5kYS5hcGkuZGF0YXBsYW5lLnYxYWxwaGEzLkdldE1DUFNlcnZlclNlcnZpY2VDb25maWdTY2hlbWFSZXF1ZXN0GkgucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5HZXRNQ1BTZXJ2ZXJTZXJ2aWNlQ29uZmlnU2NoZW1hUmVzcG9uc2Ui2gKSQecBEiNHZXQgTUNQIHNlcnZlciBjb25maWd1cmF0aW9uIHNjaGVtYRplUmV0dXJucyB0aGUgY29uZmlndXJhdGlvbiBzY2hlbWEgZm9yIE1DUCBzZXJ2ZXIgdG9vbHMsIGluY2x1ZGluZyBhdmFpbGFibGUgY29tcG9uZW50cyBhbmQgcHJvY2Vzc29ycy5KWQoDMjAwElIKAk9LEkwKShpILnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuR2V0TUNQU2VydmVyU2VydmljZUNvbmZpZ1NjaGVtYVJlc3BvbnNl2r8HJQoKbWNwc2VydmVycxoXZGF0YXBsYW5lX21jcHNlcnZlcl9nZXSKph0ECAEQB4LT5JMCOBI2L3YxYWxwaGEzL3JlZHBhbmRhLWNvbm5lY3QvbWNwLXNlcnZlcnM6Z2V0Q29uZmlnU2NoZW1hEq8ECg1MaW50TUNQQ29uZmlnEjUucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5MaW50TUNQQ29uZmlnUmVxdWVzdBo2LnJlZHBhbmRhLmFwaS5kYXRhcGxhbmUudjFhbHBoYTMuTGludE1DUENvbmZpZ1Jlc3BvbnNlIq4DkkG8AhIeTGludCBhIE1DUCB0b29scyBjb25maWd1cmF0aW9uGqMBVmFsaWRhdGVzIGEgZ2l2ZW4gTUNQIHRvb2wncyBjb25maWd1cmF0aW9uIGFuZCByZXR1cm5zIGxpbnRpbmcgaGludHMuIEVhY2ggdG9vbCdzIFlBTUwgY29uZmlndXJhdGlvbiBpcyB2YWxpZGF0ZWQuIElmIG5vIHByb2JsZW1zIGFyZSBmb3VuZCwgdGhlIHJlc3BvbnNlIGlzIGVtcHR5Lkp0CgMyMDASbQovTGludGluZyBmaW5pc2hlZC4gU2VlIGBsaW50X2hpbnRzYCBmb3IgZGV0YWlscy4SOgo4GjYucmVkcGFuZGEuYXBpLmRhdGFwbGFuZS52MWFscGhhMy5MaW50TUNQQ29uZmlnUmVzcG9uc2XavwclCgptY3BzZXJ2ZXJzGhdkYXRhcGxhbmVfbWNwc2VydmVyX2dldIqmHQQIARAEgtPkkwI3OgEqIjIvdjFhbHBoYTMvcmVkcGFuZGEtY29ubmVjdC9tY3Atc2VydmVyczpsaW50LWNvbmZpZxpIkkFFCgpSZW1vdGUgTUNQEjdDcmVhdGUgYW5kIG1hbmFnZSBNQ1Agc2VydmVycyBhbmQgdGhlaXIgY29uZmlndXJhdGlvbnMuYgZwcm90bzM", [file_buf_validate_validate, file_google_api_annotations, file_google_api_field_behavior, file_google_api_resource, file_google_protobuf_field_mask, file_protoc_gen_openapiv2_options_annotations, file_redpanda_api_auth_v1_authorization, file_redpanda_api_common_v1_linthint, file_redpanda_api_common_v1_options, file_redpanda_api_dataplane_v1_pipeline]); /** * Defines the MCP server resource. diff --git a/proto/gen/openapi/openapi.json b/proto/gen/openapi/openapi.json index 485e90628a..aa863f278d 100644 --- a/proto/gen/openapi/openapi.json +++ b/proto/gen/openapi/openapi.json @@ -1 +1 @@ -{"components":{"schemas":{"ACL.Operation":{"description":"The operation that is allowed or denied (e.g. READ).","enum":["OPERATION_ANY","OPERATION_ALL","OPERATION_READ","OPERATION_WRITE","OPERATION_CREATE","OPERATION_DELETE","OPERATION_ALTER","OPERATION_DESCRIBE","OPERATION_CLUSTER_ACTION","OPERATION_DESCRIBE_CONFIGS","OPERATION_ALTER_CONFIGS","OPERATION_IDEMPOTENT_WRITE","OPERATION_CREATE_TOKENS","OPERATION_DESCRIBE_TOKENS"],"type":"string"},"ACLAccessFilter":{"properties":{"host":{"title":"The host to match. If not set, will default to match all hosts\nwith the specified `operation` and `permission_type`. Note that\nthe asterisk `*` is literal and matches hosts that are set to `*`","type":"string"},"operation":{"$ref":"#/components/schemas/ACLOperation"},"permission_type":{"$ref":"#/components/schemas/ACLPermissionType"},"principal":{"title":"The name of the principal, if not set will default to match\nall principals with the specified `operation` and `permission_type`","type":"string"}},"title":"Filter an ACL based on its access","type":"object"},"ACLFilter":{"properties":{"access_filter":{"$ref":"#/components/schemas/ACLAccessFilter"},"resource_filter":{"$ref":"#/components/schemas/ACLResourceFilter"}},"title":"A filter for ACLs","type":"object"},"ACLOperation":{"enum":["ACL_OPERATION_ANY","ACL_OPERATION_READ","ACL_OPERATION_WRITE","ACL_OPERATION_CREATE","ACL_OPERATION_REMOVE","ACL_OPERATION_ALTER","ACL_OPERATION_DESCRIBE","ACL_OPERATION_CLUSTER_ACTION","ACL_OPERATION_DESCRIBE_CONFIGS","ACL_OPERATION_ALTER_CONFIGS","ACL_OPERATION_IDEMPOTENT_WRITE"],"title":"The ACL operation to match","type":"string"},"ACLPattern":{"description":"- ACL_PATTERN_ANY: Wildcard to match any pattern\n - ACL_PATTERN_LITERAL: Match a literal string\n - ACL_PATTERN_PREFIXED: Match a prefix\n - ACL_PATTERN_MATCH: Match serves as a catch-all for all the names of a topic\nthe principal is authorized to access","enum":["ACL_PATTERN_ANY","ACL_PATTERN_LITERAL","ACL_PATTERN_PREFIXED","ACL_PATTERN_MATCH"],"title":"The ACL pattern type","type":"string"},"ACLPermissionType":{"enum":["ACL_PERMISSION_TYPE_ANY","ACL_PERMISSION_TYPE_ALLOW","ACL_PERMISSION_TYPE_DENY"],"title":"ACL permission types","type":"string"},"ACLResource":{"description":"- ACL_RESOURCE_ANY: Wildcard for selecting any ACL resource\n - ACL_RESOURCE_CLUSTER: Cluster wide resource\n - ACL_RESOURCE_GROUP: Consumer group resource\n - ACL_RESOURCE_TOPIC: Topic resource\n - ACL_RESOURCE_TXN_ID: Transaction ID resource\n - ACL_RESOURCE_SR_SUBJECT: Schema Registry subject resource\n - ACL_RESOURCE_SR_REGISTRY: Schema Registry wide resource\n - ACL_RESOURCE_SR_ANY: Wildcard to match any SR ACL resource","enum":["ACL_RESOURCE_ANY","ACL_RESOURCE_CLUSTER","ACL_RESOURCE_GROUP","ACL_RESOURCE_TOPIC","ACL_RESOURCE_TXN_ID","ACL_RESOURCE_SR_SUBJECT","ACL_RESOURCE_SR_REGISTRY","ACL_RESOURCE_SR_ANY"],"title":"The ACL resource types","type":"string"},"ACLResourceFilter":{"properties":{"name":{"title":"Name, if not given will default to match all items in `resource_type`.\nNote that asterisk `*` is literal and matches resource ACLs\nthat are named `*`","type":"string"},"pattern_type":{"$ref":"#/components/schemas/ACLPattern"},"resource_type":{"$ref":"#/components/schemas/ACLResource"}},"title":"A filter to match ACLs for resources","type":"object"},"Action":{"enum":["ACTION_PREPARE","ACTION_EXECUTE","ACTION_FINISH","ACTION_CANCEL"],"type":"string"},"AddPartitionsToTopicsRequest":{"properties":{"partition_count":{"description":"The number of partitions to add for the topics.","format":"int32","type":"integer"},"topic_names":{"description":"The topic names.","items":{"type":"string"},"type":"array"},"validate_only":{"description":"Validate the request only, do not execute it.","type":"boolean"}},"type":"object"},"AddPartitionsToTopicsResponse":{"properties":{"statuses":{"description":"The status of the operation for each topic.","items":{"$ref":"#/components/schemas/AlterTopicPartitionStatus"},"type":"array"}},"type":"object"},"AddTopicPartitionsBody":{"properties":{"partition_count":{"description":"The number of partitions to add to the topic.","format":"int32","type":"integer"},"validate_only":{"description":"Validate the request only, do not execute it.","type":"boolean"}},"type":"object"},"AddTopicPartitionsResponse":{"type":"object"},"AlterTopicPartitionStatus":{"properties":{"error":{"description":"The error if any.","type":"string"},"success":{"description":"Whether the operation was successful.","type":"boolean"},"topic_name":{"description":"The topic name.","type":"string"}},"type":"object"},"AnnotatedOption":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"title":"AnnotatedOption represents an annotated option","type":"object"},"AuthenticationConfiguration":{"properties":{"plain_configuration":{"$ref":"#/components/schemas/PlainConfig"},"scram_configuration":{"$ref":"#/components/schemas/ScramConfig"}},"title":"Authentication config. Supports:\n* SASL/SCRAM\n* SASL/PLAIN","type":"object"},"AuthenticationInfo":{"properties":{"mechanism":{"$ref":"#/components/schemas/AuthenticationMechanism"},"state":{"$ref":"#/components/schemas/AuthenticationState"},"user_principal":{"title":"Authenticated user principal","type":"string"}},"title":"Other Messages","type":"object"},"AuthenticationMechanism":{"enum":["AUTHENTICATION_MECHANISM_MTLS","AUTHENTICATION_MECHANISM_SASL_SCRAM","AUTHENTICATION_MECHANISM_SASL_OAUTHBEARER","AUTHENTICATION_MECHANISM_SASL_PLAIN","AUTHENTICATION_MECHANISM_SASL_GSSAPI"],"title":"- AUTHENTICATION_MECHANISM_MTLS: Mutual TLS using client certificates\n - AUTHENTICATION_MECHANISM_SASL_SCRAM: SASL SCRAM\n - AUTHENTICATION_MECHANISM_SASL_OAUTHBEARER: SASL OAUTHBEARER (OAuth 2.0 / OpenID Connect)\n - AUTHENTICATION_MECHANISM_SASL_PLAIN: SASL PLAIN (username/password in plaintext)\n - AUTHENTICATION_MECHANISM_SASL_GSSAPI: SASL GSSAPI (Kerberos)","type":"string"},"AuthenticationState":{"enum":["AUTHENTICATION_STATE_UNAUTHENTICATED","AUTHENTICATION_STATE_SUCCESS","AUTHENTICATION_STATE_FAILURE"],"type":"string"},"BadRequest":{"description":"Describes violations in a client request. This error type focuses on the\nsyntactic aspects of the request.","properties":{"field_violations":{"description":"Describes all violations in a client request.","items":{"$ref":"#/components/schemas/FieldViolation"},"type":"array"}},"title":"BadRequest","type":"object"},"BatchDeleteQuotaRequest":{"properties":{"deletions":{"items":{"$ref":"#/components/schemas/QuotaDeletion"},"type":"array"}},"type":"object"},"BatchDeleteQuotaResponse":{"properties":{"failed_entities":{"items":{"$ref":"#/components/schemas/FailedEntity"},"type":"array"},"successful_entities":{"items":{"$ref":"#/components/schemas/SuccessfulEntity"},"type":"array"}},"type":"object"},"BatchSetQuotaRequest":{"properties":{"settings":{"description":"A list of quota settings to apply. Each setting pairs an entity\nwith the specific values to be set for it.","items":{"$ref":"#/components/schemas/QuotaSetting"},"type":"array"}},"type":"object"},"BatchSetQuotaResponse":{"properties":{"failed_entities":{"items":{"$ref":"#/components/schemas/FailedEntity"},"type":"array"},"successful_entities":{"items":{"$ref":"#/components/schemas/SuccessfulEntity"},"type":"array"}},"type":"object"},"BloblangFunctionSpec":{"description":"BloblangFunctionSpec represents a Bloblang function specification.","properties":{"categories":{"items":{"type":"string"},"type":"array"},"description":{"type":"string"},"examples":{"items":{"type":"string"},"type":"array"},"name":{"type":"string"},"params":{"$ref":"#/components/schemas/ParamSpec"},"status":{"type":"string"},"version":{"type":"string"}},"type":"object"},"BloblangMethodSpec":{"description":"BloblangMethodSpec represents a Bloblang method specification.","properties":{"categories":{"items":{"type":"string"},"type":"array"},"description":{"type":"string"},"examples":{"items":{"type":"string"},"type":"array"},"name":{"type":"string"},"params":{"$ref":"#/components/schemas/ParamSpec"},"status":{"type":"string"},"version":{"type":"string"}},"type":"object"},"ComponentList":{"description":"ComponentList contains the structured component data.","properties":{"bloblang_functions":{"items":{"$ref":"#/components/schemas/BloblangFunctionSpec"},"type":"array"},"bloblang_methods":{"items":{"$ref":"#/components/schemas/BloblangMethodSpec"},"type":"array"},"buffers":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"caches":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"inputs":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"metrics":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"outputs":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"processors":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"rate_limits":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"scanners":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"tracers":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"version":{"type":"string"}},"type":"object"},"ComponentSpec":{"description":"ComponentSpec represents a component specification.","properties":{"categories":{"items":{"type":"string"},"type":"array"},"config":{"$ref":"#/components/schemas/FieldSpec"},"description":{"type":"string"},"examples":{"items":{"type":"string"},"type":"array"},"footnotes":{"type":"string"},"name":{"type":"string"},"status":{"$ref":"#/components/schemas/ComponentStatus"},"summary":{"type":"string"},"type":{"type":"string"},"version":{"type":"string"}},"type":"object"},"ComponentStatus":{"description":"ComponentStatus represents the stability level of a component.","enum":["COMPONENT_STATUS_STABLE","COMPONENT_STATUS_BETA","COMPONENT_STATUS_EXPERIMENTAL","COMPONENT_STATUS_DEPRECATED"],"type":"string"},"ComponentType":{"description":"Component type for this tool.","enum":["COMPONENT_TYPE_PROCESSOR","COMPONENT_TYPE_CACHE","COMPONENT_TYPE_INPUT","COMPONENT_TYPE_OUTPUT"],"type":"string"},"Config":{"properties":{"name":{"description":"A topic-level config key (e.g. `segment.bytes`).","type":"string"},"value":{"description":"A topic-level config value (e.g. 1073741824).","nullable":true,"type":"string"}},"type":"object"},"ConfigAlterOperation":{"enum":["CONFIG_ALTER_OPERATION_SET","CONFIG_ALTER_OPERATION_DELETE","CONFIG_ALTER_OPERATION_APPEND","CONFIG_ALTER_OPERATION_SUBTRACT"],"type":"string"},"ConfigSource":{"enum":["CONFIG_SOURCE_DYNAMIC_TOPIC_CONFIG","CONFIG_SOURCE_DYNAMIC_BROKER_CONFIG","CONFIG_SOURCE_DYNAMIC_DEFAULT_BROKER_CONFIG","CONFIG_SOURCE_STATIC_BROKER_CONFIG","CONFIG_SOURCE_DEFAULT_CONFIG","CONFIG_SOURCE_DYNAMIC_BROKER_LOGGER_CONFIG"],"type":"string"},"ConfigSynonym":{"properties":{"name":{"type":"string"},"source":{"$ref":"#/components/schemas/ConfigSource"},"value":{"nullable":true,"type":"string"}},"type":"object"},"ConfigType":{"enum":["CONFIG_TYPE_BOOLEAN","CONFIG_TYPE_STRING","CONFIG_TYPE_INT","CONFIG_TYPE_SHORT","CONFIG_TYPE_LONG","CONFIG_TYPE_DOUBLE","CONFIG_TYPE_LIST","CONFIG_TYPE_CLASS","CONFIG_TYPE_PASSWORD"],"type":"string"},"Configuration":{"properties":{"config_synonyms":{"description":"If no config value is set at the topic level, it will inherit the value\nset at the broker or cluster level. `name` is the corresponding config\nkey whose value is inherited. `source` indicates whether the inherited\nconfig is default, broker, etc.","items":{"$ref":"#/components/schemas/ConfigSynonym"},"type":"array"},"documentation":{"description":"Config documentation.","nullable":true,"type":"string"},"name":{"description":"A topic-level config key (e.g. `segment.bytes`).","type":"string"},"read_only":{"description":"Whether the config is read-only, or is dynamic and can be altered.","type":"boolean"},"sensitive":{"description":"Whether this is a sensitive config key and value.","type":"boolean"},"source":{"$ref":"#/components/schemas/ConfigSource"},"type":{"$ref":"#/components/schemas/ConfigType"},"value":{"description":"A topic-level config value (e.g. 1073741824).","nullable":true,"type":"string"}},"type":"object"},"ConfigurationYAMLSchema":{"properties":{"component_type":{"$ref":"#/components/schemas/ComponentType"},"config_schema":{"description":"JSON schema of the configuration components that are allowed for MCP servers.","type":"string"}},"type":"object"},"ConnectCluster":{"properties":{"address":{"description":"The host address of the Kafka Connect cluster.","type":"string"},"info":{"$ref":"#/components/schemas/ConnectCluster.Info"},"name":{"description":"Unique name of connect cluster. For Redpanda Cloud, the value is `redpanda`.","type":"string"},"plugins":{"items":{"$ref":"#/components/schemas/ConnectorPlugin"},"type":"array"}},"type":"object"},"ConnectCluster.Info":{"properties":{"commit":{"description":"The git commit ID of the connect worker source code.","type":"string"},"kafka_cluster_id":{"description":"Cluster ID.","type":"string"},"version":{"description":"Connect worker version.","type":"string"}},"type":"object"},"Connector":{"properties":{"state":{"description":"State of the connector instance.","type":"string"},"trace":{"description":"String value of stack trace.","type":"string"},"worker_id":{"description":"ID of worker that the connector is assigned to.","type":"string"}},"type":"object"},"ConnectorError":{"properties":{"content":{"description":"Detailed description of the error.","type":"string"},"title":{"description":"Short description of the error.","type":"string"},"type":{"$ref":"#/components/schemas/ConnectorError.Type"}},"title":"ConnectorError is the error of a connector, this is holistic error\nabstraction, made parsing the error trace of connector or Task","type":"object"},"ConnectorError.Type":{"description":"Error level.","enum":["TYPE_ERROR","TYPE_WARNING"],"type":"string"},"ConnectorHolisticState":{"description":"State of a connector or one of its tasks, as described in the [Kafka Connect documentation](https://kafka.apache.org/documentation.html#connect_administration). Takes into account not just the state of the connector instance itself, but also the tasks within the connector.\n\n - CONNECTOR_HOLISTIC_STATE_PAUSED: The connector or task has been administratively paused.\n - CONNECTOR_HOLISTIC_STATE_RESTARTING: The connector or task is restarting.\n - CONNECTOR_HOLISTIC_STATE_DESTROYED: The connector is destroyed, regardless of any tasks.\n - CONNECTOR_HOLISTIC_STATE_STOPPED: The connector or task has been stopped.\n - CONNECTOR_HOLISTIC_STATE_UNASSIGNED: - The connector or task has not yet been assigned to a worker,\n- THe connector is running, but there are unassigned tasks.\n - CONNECTOR_HOLISTIC_STATE_HEALTHY: The connector is running, \u003e 0 tasks, all of them in running state.\n - CONNECTOR_HOLISTIC_STATE_UNHEALTHY: - The connector has failed,\n- The connector is running, but has no tasks,\n- Connector is running and has tasks, but all tasks have failed.\n - CONNECTOR_HOLISTIC_STATE_DEGRADED: The connector is running and has tasks, and at least one task, but not all, have failed.\n - CONNECTOR_HOLISTIC_STATE_UNKNOWN: The connector or task state could not be determined.","enum":["CONNECTOR_HOLISTIC_STATE_PAUSED","CONNECTOR_HOLISTIC_STATE_RESTARTING","CONNECTOR_HOLISTIC_STATE_DESTROYED","CONNECTOR_HOLISTIC_STATE_STOPPED","CONNECTOR_HOLISTIC_STATE_UNASSIGNED","CONNECTOR_HOLISTIC_STATE_HEALTHY","CONNECTOR_HOLISTIC_STATE_UNHEALTHY","CONNECTOR_HOLISTIC_STATE_DEGRADED","CONNECTOR_HOLISTIC_STATE_UNKNOWN"],"type":"string"},"ConnectorInfoStatus":{"properties":{"info":{"$ref":"#/components/schemas/ConnectorSpec"},"name":{"description":"Name of connector.","type":"string"},"status":{"$ref":"#/components/schemas/ConnectorStatus"}},"type":"object"},"ConnectorPlugin":{"properties":{"class":{"type":"string"},"type":{"type":"string"},"version":{"type":"string"}},"type":"object"},"ConnectorSpec":{"description":"Connector specifications as defined in the Kafka Connect\nAPI. You may include this in the request body when creating a new connector.","properties":{"config":{"additionalProperties":{"type":"string"},"description":"Connector configuration properties.","type":"object"},"name":{"description":"Name of connector.","type":"string"},"tasks":{"items":{"$ref":"#/components/schemas/TaskInfo"},"readOnly":true,"type":"array"},"type":{"readOnly":true,"type":"string"}},"required":["name","config"],"type":"object"},"ConnectorStatus":{"properties":{"connector":{"$ref":"#/components/schemas/Connector"},"errors":{"description":"List of parsed connectors' and tasks' errors.","items":{"$ref":"#/components/schemas/ConnectorError"},"type":"array"},"holistic_state":{"$ref":"#/components/schemas/ConnectorHolisticState"},"name":{"description":"Name of connector.","type":"string"},"tasks":{"description":"Status of connector tasks. For more information, see the [https://docs.redpanda.com/current/deploy/deployment-option/cloud/managed-connectors/monitor-connectors/#connector-tasks](Monitor Connectors) documentation.","items":{"$ref":"#/components/schemas/TaskStatus"},"type":"array"},"type":{"description":"Type of connector (sink or source).","type":"string"}},"type":"object"},"ConsumerOffsetSyncOptions":{"properties":{"effective_interval":{"readOnly":true,"title":"The effective interval for the task","type":"string"},"group_filters":{"items":{"$ref":"#/components/schemas/NameFilter"},"title":"The filters","type":"array"},"interval":{"title":"Sync interval\nIf 0 provided, defaults to 30 seconds","type":"string"},"paused":{"title":"Allows user to pause the consumer offset sync task. If paused, then\nthe task will enter the 'paused' state and not sync consumer offsets from\nthe source cluster","type":"boolean"}},"title":"Options for syncing consumer offsets","type":"object"},"CreateACLRequest":{"properties":{"host":{"description":"The host address to use for this ACL. To allow a principal\naccess from multiple hosts, you must create an ACL for each host.","type":"string"},"operation":{"$ref":"#/components/schemas/ACL.Operation"},"permission_type":{"$ref":"#/components/schemas/PermissionType"},"principal":{"description":"The user for whom this ACL applies. With the Kafka simple\nauthorizer, you must include the prefix \"User:\" with the user name.","type":"string"},"resource_name":{"description":"The name of the resource this ACL targets.\nFor requests with resource_type CLUSTER, this will default to \"kafka-cluster\".","type":"string"},"resource_pattern_type":{"$ref":"#/components/schemas/ResourcePatternType"},"resource_type":{"$ref":"#/components/schemas/ResourceType"}},"required":["resource_type","resource_pattern_type","principal","host","operation","permission_type"],"type":"object"},"CreateACLResponse":{"type":"object"},"CreateConnectorResponse":{"properties":{"connector":{"$ref":"#/components/schemas/ConnectorSpec"}},"type":"object"},"CreateKafkaConnectSecretBody":{"description":"CreateKafkaConnectSecretRequest is the request of CreateKafkaConnectSecret.","properties":{"labels":{"additionalProperties":{"type":"string"},"description":"Secret labels.","type":"object"},"name":{"description":"Name of connector.","type":"string"},"secret_data":{"description":"The secret data. Must be Base64-encoded.","format":"byte","type":"string"}},"required":["name","secret_data"],"type":"object"},"CreateKafkaConnectSecretResponse":{"description":"CreateKafkaConnectSecretResponse is the response of CreateKafkaConnectSecret.","properties":{"secret":{"$ref":"#/components/schemas/Secret"}},"type":"object"},"CreateMCPServerResponse":{"properties":{"mcp_server":{"$ref":"#/components/schemas/MCPServer"}},"type":"object"},"CreatePipelineResponse":{"properties":{"pipeline":{"$ref":"#/components/schemas/Pipeline"}},"type":"object"},"CreateRoleResponse":{"description":"CreateRoleResponse is the response for CreateRole.","properties":{"role":{"$ref":"#/components/schemas/Role"}},"type":"object"},"CreateSecretRequest":{"description":"CreateSecretRequest is the request of CreateSecret.","properties":{"id":{"description":"Secret identifier.","type":"string"},"labels":{"additionalProperties":{"type":"string"},"description":"Secret labels.","type":"object"},"scopes":{"items":{"$ref":"#/components/schemas/Scope"},"title":"Secret scopes","type":"array"},"secret_data":{"description":"The secret data. Must be Base64-encoded.","format":"byte","type":"string"}},"required":["secret_data"],"type":"object"},"CreateSecretResponse":{"description":"CreateSecretResponse is the response of CreateSecret.","properties":{"secret":{"$ref":"#/components/schemas/Secret"}},"type":"object"},"CreateTopicRequest.Topic":{"properties":{"configs":{"description":"An array of key-value config pairs for a topic.\nThese correspond to Kafka topic-level configs.","items":{"$ref":"#/components/schemas/Config"},"type":"array"},"name":{"description":"Name of topic.","type":"string"},"partition_count":{"description":"The number of partitions to give the topic. If specifying\npartitions manually (see `replica_assignments`), set to -1.\nOr, to use the cluster default partition count, set to null.","format":"int32","nullable":true,"type":"integer"},"replica_assignments":{"description":"Manually specify broker ID assignments for partition replicas. If manually assigning replicas, both `replication_factor` and\n`partition_count` must be -1.","items":{"$ref":"#/components/schemas/ReplicaAssignment"},"type":"array"},"replication_factor":{"description":"The number of replicas every partition must have.\nIf specifying partitions manually (see `replica_assignments`), set to -1.\nOr, to use the cluster default replication factor, set to null.","format":"int32","nullable":true,"type":"integer"}},"type":"object"},"CreateTopicResponse":{"properties":{"partition_count":{"description":"The number of partitions created for the topic.\nThis field has a default value of -1, which may be returned if the broker\ndoes not support v5+ of this request which added support for returning\nthis information.","format":"int32","type":"integer"},"replication_factor":{"description":"The number of replicas per topic partition.\nThis field has a default of -1, which may be returned if the broker\ndoes not support v5+ of this request which added support for returning\nthis information.","format":"int32","type":"integer"},"topic_name":{"description":"Name of topic.","type":"string"}},"type":"object"},"CreateUserRequest.User":{"properties":{"mechanism":{"$ref":"#/components/schemas/SASLMechanism"},"name":{"description":"Username.","type":"string"},"password":{"description":"Password.","type":"string"}},"type":"object"},"CreateUserResponse":{"properties":{"user":{"$ref":"#/components/schemas/CreateUserResponse.User"}},"type":"object"},"CreateUserResponse.User":{"properties":{"mechanism":{"$ref":"#/components/schemas/SASLMechanism"},"name":{"title":"Name of newly-created user","type":"string"}},"type":"object"},"DeleteACLsRequest.Filter":{"properties":{"host":{"description":"The host address to use for this ACL. To allow a principal\naccess from multiple hosts, you must create an ACL for each host.","nullable":true,"type":"string"},"operation":{"$ref":"#/components/schemas/ACL.Operation"},"permission_type":{"$ref":"#/components/schemas/PermissionType"},"principal":{"description":"The user for whom this ACL applies. With the Kafka simple\nauthorizer, you must include the prefix \"User:\" with the user name.","nullable":true,"type":"string"},"resource_name":{"description":"The name of the resource this ACL targets.","nullable":true,"type":"string"},"resource_pattern_type":{"$ref":"#/components/schemas/ResourcePatternType"},"resource_type":{"$ref":"#/components/schemas/ResourceType"}},"required":["resource_type","resource_pattern_type","operation","permission_type"],"type":"object"},"DeleteACLsResponse":{"properties":{"matching_acls":{"items":{"$ref":"#/components/schemas/MatchingACL"},"type":"array"}},"type":"object"},"DeleteKafkaConnectSecretResponse":{"description":"DeleteKafkaConnectSecretResponse is the response of DeleteKafkaConnectSecret.","type":"object"},"DeleteMCPServerResponse":{"type":"object"},"DeleteMountTaskResponse":{"type":"object"},"DeletePipelineResponse":{"type":"object"},"DeleteQuotaRequest":{"properties":{"entity":{"$ref":"#/components/schemas/RequestQuotaEntity"},"value_type":{"$ref":"#/components/schemas/ValueType"}},"type":"object"},"DeleteQuotaResponse":{"type":"object"},"DeleteRoleResponse":{"description":"DeleteRoleResponse is the response for DeleteRole.","type":"object"},"DeleteSecretResponse":{"description":"DeleteSecretResponse is the response of DeleteSecret.","type":"object"},"DeleteTopicResponse":{"type":"object"},"DeleteTransformResponse":{"type":"object"},"DeleteUserResponse":{"type":"object"},"DeployTransformRequest":{"description":"Metadata required to deploy a new Wasm\ntransform in a Redpanda cluster.","properties":{"environment_variables":{"description":"The environment variables you want to apply to your transform's environment","items":{"$ref":"#/components/schemas/EnvironmentVariable"},"type":"array"},"input_topic_name":{"description":"The input topic to apply the transform to.","example":"orders","type":"string"},"name":{"description":"Name of the transform.","example":"redact-payment-details-in-orders","type":"string"},"output_topic_names":{"description":"Output topic to write the transform results to.","example":"orders-redacted","items":{"type":"string"},"type":"array"}},"required":["name","input_topic_name","output_topic_names"],"type":"object"},"EarliestOffset":{"description":"Start at the earliest offset in the partition.","type":"object"},"Entity":{"properties":{"entity_name":{"type":"string"},"entity_type":{"$ref":"#/components/schemas/EntityType"}},"type":"object"},"EntityType":{"description":"The type of entity that the quota applies to.\n\n - ENTITY_TYPE_USER: Not supported in Redpanda\n - ENTITY_TYPE_IP: Not supported in Redpanda","enum":["ENTITY_TYPE_CLIENT_ID","ENTITY_TYPE_CLIENT_ID_PREFIX","ENTITY_TYPE_USER","ENTITY_TYPE_IP"],"type":"string"},"EnvironmentVariable":{"properties":{"key":{"description":"The key of your environment variable.","example":"LOG_LEVEL","type":"string"},"value":{"description":"The value of your environment variable.","example":"DEBUG","type":"string"}},"required":["key","value"],"type":"object"},"ErrorInfo":{"description":"Describes the cause of the error with structured details.\n\nExample of an error when contacting the \"pubsub.googleapis.com\" API when it\nis not enabled:\n\n { \"reason\": \"API_DISABLED\"\n \"domain\": \"googleapis.com\"\n \"metadata\": {\n \"resource\": \"projects/123\",\n \"service\": \"pubsub.googleapis.com\"\n }\n }\n\nThis response indicates that the pubsub.googleapis.com API is not enabled.\n\nExample of an error that is returned when attempting to create a Spanner\ninstance in a region that is out of stock:\n\n { \"reason\": \"STOCKOUT\"\n \"domain\": \"spanner.googleapis.com\",\n \"metadata\": {\n \"availableRegions\": \"us-central1,us-east2\"\n }\n }","properties":{"domain":{"description":"The logical grouping to which the \"reason\" belongs. The error domain\nis typically the registered service name of the tool or product that\ngenerates the error. Example: \"pubsub.googleapis.com\". If the error is\ngenerated by some common infrastructure, the error domain must be a\nglobally unique value that identifies the infrastructure. For Google API\ninfrastructure, the error domain is \"googleapis.com\".","type":"string"},"metadata":{"additionalProperties":{"type":"string"},"description":"Additional structured details about this error.\n\nKeys must match a regular expression of `[a-z][a-zA-Z0-9-_]+` but should\nideally be lowerCamelCase. Also, they must be limited to 64 characters in\nlength. When identifying the current value of an exceeded limit, the units\nshould be contained in the key, not the value. For example, rather than\n`{\"instanceLimit\": \"100/request\"}`, should be returned as,\n`{\"instanceLimitPerRequest\": \"100\"}`, if the client exceeds the number of\ninstances that can be created in a single (batch) request.","type":"object"},"reason":{"description":"The reason of the error. This is a constant value that identifies the\nproximate cause of the error. Error reasons are unique within a particular\ndomain of errors. This should be at most 63 characters and match a\nregular expression of `[A-Z][A-Z0-9_]+[A-Z0-9]`, which represents\nUPPER_SNAKE_CASE.","type":"string"}},"title":"ErrorInfo","type":"object"},"FailOverBody":{"properties":{"shadow_topic_name":{"title":"The name of the shadow topic to fail over, if not set will fail over\nthe entire shadow link","type":"string"}},"title":"Request to fail over a shadow link or a single shadow topic","type":"object"},"FailedEntity":{"properties":{"entity_name":{"type":"string"},"entity_type":{"$ref":"#/components/schemas/EntityType"},"error_code":{"format":"int32","type":"integer"},"error_message":{"type":"string"}},"type":"object"},"FieldSpec":{"description":"FieldSpec represents a field specification.","properties":{"advanced":{"type":"boolean"},"annotated_options":{"items":{"$ref":"#/components/schemas/AnnotatedOption"},"type":"array"},"children":{"items":{"$ref":"#/components/schemas/FieldSpec"},"type":"array"},"default_value":{"type":"string"},"deprecated":{"type":"boolean"},"description":{"type":"string"},"examples":{"items":{"type":"string"},"type":"array"},"interpolated":{"items":{"type":"string"},"type":"array"},"kind":{"type":"string"},"name":{"type":"string"},"optional":{"type":"boolean"},"type":{"type":"string"},"version":{"type":"string"}},"type":"object"},"FieldViolation":{"description":"A message type used to describe a single bad request field.","properties":{"description":{"description":"A description of why the request element is bad.","type":"string"},"field":{"description":"A path that leads to a field in the request body. The value will be a\nsequence of dot-separated identifiers that identify a protocol buffer\nfield.\n\nConsider the following:\n\n message CreateContactRequest {\n message EmailAddress {\n enum Type {\n TYPE_UNSPECIFIED = 0;\n HOME = 1;\n WORK = 2;\n }\n\n optional string email = 1;\n repeated EmailType type = 2;\n }\n\n string full_name = 1;\n repeated EmailAddress email_addresses = 2;\n }\n\nIn this example, in proto `field` could take one of the following values:\n\n* `full_name` for a violation in the `full_name` value\n* `email_addresses[1].email` for a violation in the `email` field of the\n first `email_addresses` message\n* `email_addresses[3].type[2]` for a violation in the second `type`\n value in the third `email_addresses` message.\n\nIn JSON, the same values are represented as:\n\n* `fullName` for a violation in the `fullName` value\n* `emailAddresses[1].email` for a violation in the `email` field of the\n first `emailAddresses` message\n* `emailAddresses[3].type[2]` for a violation in the second `type`\n value in the third `emailAddresses` message.","type":"string"},"localized_message":{"$ref":"#/components/schemas/LocalizedMessage"},"reason":{"description":"The reason of the field-level error. This is a constant value that\nidentifies the proximate cause of the field-level error. It should\nuniquely identify the type of the FieldViolation within the scope of the\ngoogle.rpc.ErrorInfo.domain. This should be at most 63\ncharacters and match a regular expression of `[A-Z][A-Z0-9_]+[A-Z0-9]`,\nwhich represents UPPER_SNAKE_CASE.","type":"string"}},"type":"object"},"FilterType":{"description":"- FILTER_TYPE_INCLUDE: Include the items that match the filter\n - FILTER_TYPE_EXCLUDE: Exclude the items that match the filter","enum":["FILTER_TYPE_INCLUDE","FILTER_TYPE_EXCLUDE"],"title":"What type of filter this is, include or exclude","type":"string"},"GetConnectClusterResponse":{"properties":{"cluster":{"$ref":"#/components/schemas/ConnectCluster"}},"type":"object"},"GetConnectorConfigResponse":{"properties":{"config":{"additionalProperties":{"type":"string"},"type":"object"}},"type":"object"},"GetConnectorResponse":{"properties":{"connector":{"$ref":"#/components/schemas/ConnectorSpec"}},"type":"object"},"GetConnectorStatusResponse":{"properties":{"status":{"$ref":"#/components/schemas/ConnectorStatus"}},"type":"object"},"GetKafkaConnectSecretResponse":{"description":"GetKafkaConnectSecretResponse is the response of GetKafkaConnectSecret.","properties":{"secret":{"$ref":"#/components/schemas/Secret"}},"type":"object"},"GetMCPServerResponse":{"properties":{"mcp_server":{"$ref":"#/components/schemas/MCPServer"}},"type":"object"},"GetMCPServerServiceConfigSchemaResponse":{"properties":{"configuration_yamls":{"description":"The configuration schema for the MCP server.","items":{"$ref":"#/components/schemas/ConfigurationYAMLSchema"},"type":"array"}},"type":"object"},"GetMountTaskResponse":{"properties":{"task":{"$ref":"#/components/schemas/MountTask"}},"type":"object"},"GetPipelineResponse":{"properties":{"pipeline":{"$ref":"#/components/schemas/Pipeline"}},"type":"object"},"GetPipelineServiceConfigSchemaResponse":{"properties":{"config_schema":{"description":"JSON schema of the configuration components that are allowed for Connect pipelines.","type":"string"}},"type":"object"},"GetPipelinesBySecretsResponse":{"properties":{"pipelines_for_secret":{"items":{"$ref":"#/components/schemas/PipelinesForSecret"},"type":"array"}},"type":"object"},"GetPipelinesForSecretResponse":{"properties":{"pipelines_for_secret":{"$ref":"#/components/schemas/PipelinesForSecret"}},"type":"object"},"GetRoleResponse":{"description":"GetRoleResponse is the response to GetRole.","properties":{"members":{"description":"Members assigned to the role.","items":{"$ref":"#/components/schemas/RoleMembership"},"type":"array"},"role":{"$ref":"#/components/schemas/Role"}},"type":"object"},"GetSecretResponse":{"description":"GetSecretResponse is the response of GetSecret.","properties":{"secret":{"$ref":"#/components/schemas/Secret"}},"type":"object"},"GetShadowMetricsResponse":{"properties":{"error_topics":{"format":"uint64","type":"string"},"failed_over_topics":{"format":"uint64","type":"string"},"total_topics_replicated":{"format":"uint64","type":"string"}},"type":"object"},"GetTopicConfigurationsResponse":{"properties":{"configurations":{"items":{"$ref":"#/components/schemas/Configuration"},"type":"array"}},"type":"object"},"GetTransformResponse":{"properties":{"transform":{"$ref":"#/components/schemas/TransformMetadata"}},"type":"object"},"Help":{"description":"Provides links to documentation or for performing an out of band action.\n\nFor example, if a quota check failed with an error indicating the calling\nproject hasn't enabled the accessed service, this can contain a URL pointing\ndirectly to the right place in the developer console to flip the bit.","properties":{"links":{"description":"URL(s) pointing to additional information on handling the current error.","items":{"$ref":"#/components/schemas/Link"},"type":"array"}},"title":"Help","type":"object"},"InFlightRequests":{"properties":{"has_more_requests":{"description":"Whether there are more in-flight requests than those in\n`sampled_in_flight_requests`.","type":"boolean"},"sampled_in_flight_requests":{"items":{"$ref":"#/components/schemas/Request"},"title":"A sample (e.g., the 5 latest) of the currently in-flight requests","type":"array"}},"type":"object"},"KafkaConnection":{"properties":{"api_versions":{"additionalProperties":{"format":"int32","type":"integer"},"description":"This map records, for each Kafka API, the highest version number observed\nin requests on this connection. It can be useful for understanding which\nprotocol versions a client supports or has negotiated with the broker.\nOnly APIs that were actually used (i.e. at least one request was seen)\nare included.\n\nExample:\n { 0: 11, 1: 13 }\nmeans that for API key 0 (Produce), version 11 was the highest seen,\nand for API key 1 (Fetch), version 13 was the highest seen.\n\nReference:\n- https://kafka.apache.org/0101/protocol.html#protocol_api_keys\n- https://kafka.apache.org/0101/protocol.html#protocol_compatibility","type":"object"},"authentication_info":{"$ref":"#/components/schemas/AuthenticationInfo"},"client_id":{"description":"Client identifier included in every request sent by the Kafka client.\nThis is typically a configurable property (client.id) set by the\napplication when creating a producer or consumer, and is often used for\nmetrics, quotas, and debugging.","type":"string"},"client_software_name":{"description":"Name of the client library, reported automatically in ApiVersions v3+\nrequests. This is set by the client implementation and is not typically\nconfigurable by applications.","type":"string"},"client_software_version":{"description":"Version of the client library, reported automatically in ApiVersions v3+\nrequests. Like client_software_name, this is set by the\nclient and not usually configurable by applications.","type":"string"},"close_time":{"description":"When the connection was closed. This field is set only when the\nconnection state is \"closed\".","format":"date-time","type":"string"},"group_id":{"description":"Most recent group ID seen in requests sent over this connection. This\ntypically refers to a consumer group, but the Kafka group protocol is\nmore general and may also be used by other types of clients that\ncoordinate membership and assignments through the broker.","type":"string"},"group_instance_id":{"description":"Most recent group instance ID seen in requests sent over this connection.\nThis is used when static membership is enabled, allowing a specific\nclient instance to retain its group membership across restarts.","type":"string"},"group_member_id":{"description":"Most recent group member ID seen in requests sent over this connection.\nThis is the unique identifier assigned by the broker to a particular\nmember of the group.","type":"string"},"idle_duration":{"title":"How long the connection has been idle (no in-flight requests)","type":"string"},"in_flight_requests":{"$ref":"#/components/schemas/InFlightRequests"},"listener_name":{"description":"Name of the Kafka listener that accepted this connection.\nA listener is a named broker endpoint (for example, \"internal\",\n\"external\", or \"sasl_tls\"). Each listener defines its network address and\nenforces its protocol and authentication policy.","type":"string"},"node_id":{"format":"int32","title":"Broker node ID","type":"integer"},"open_time":{"format":"date-time","title":"When the broker accepted the connection","type":"string"},"recent_request_statistics":{"$ref":"#/components/schemas/RequestStatistics"},"shard_id":{"format":"int64","title":"Broker shard that handles the connection","type":"integer"},"source":{"$ref":"#/components/schemas/Source"},"state":{"$ref":"#/components/schemas/KafkaConnectionState"},"tls_info":{"$ref":"#/components/schemas/TLSInfo"},"total_request_statistics":{"$ref":"#/components/schemas/RequestStatistics"},"transactional_id":{"title":"Most recent transactional ID seen in requests sent over this connection","type":"string"},"uid":{"title":"Kafka connection UUID","type":"string"}},"title":"Kafka connection details for a broker","type":"object"},"KafkaConnectionState":{"description":"- KAFKA_CONNECTION_STATE_OPEN: The connection is accepting requests.\n - KAFKA_CONNECTION_STATE_ABORTING: The connection is aborting ongoing requests and about to be closed.\nThis is a transient state between open and closed that should rarely be\nobservable under normal circumstances.\n - KAFKA_CONNECTION_STATE_CLOSED: The connection has been closed.","enum":["KAFKA_CONNECTION_STATE_OPEN","KAFKA_CONNECTION_STATE_ABORTING","KAFKA_CONNECTION_STATE_CLOSED"],"title":"Enums","type":"string"},"LatestOffset":{"description":"Start at the latest offset in the partition.","type":"object"},"Link":{"description":"Describes a URL link.","properties":{"description":{"description":"Describes what the link offers.","type":"string"},"url":{"description":"The URL of the link.","type":"string"}},"type":"object"},"LintHint":{"description":"LintHint is a generic linting hint.","properties":{"column":{"description":"Column number of the lint.","format":"int32","type":"integer"},"hint":{"description":"The hint message.","type":"string"},"line":{"description":"Line number of the lint.","format":"int32","type":"integer"},"lint_type":{"description":"Optional lint type or enum.","type":"string"}},"type":"object"},"LintMCPConfigRequest":{"properties":{"tools":{"additionalProperties":{"$ref":"#/components/schemas/Tool"},"description":"Map of tool names to their configurations. Each tool contains YAML configuration.","type":"object"}},"required":["tools"],"type":"object"},"LintMCPConfigResponse":{"properties":{"lint_hints":{"additionalProperties":{"$ref":"#/components/schemas/LintHint"},"description":"Map of tool names to their linting issues. Empty if no issues are found.","type":"object"}},"type":"object"},"LintPipelineConfigRequest":{"properties":{"config_yaml":{"description":"The Redpanda Connect pipeline configuration in YAML format.\nSee the [Redpanda Connect Configuration](https://docs.redpanda.com/redpanda-cloud/develop/connect/configuration/about) documentation\nfor more details.","type":"string"}},"required":["config_yaml"],"type":"object"},"LintPipelineConfigResponse":{"properties":{"lint_hints":{"description":"A list of linting issues.","items":{"$ref":"#/components/schemas/LintHint"},"type":"array"}},"type":"object"},"ListACLsRequest.Filter":{"properties":{"host":{"description":"The host address to use for this ACL. To allow a principal\naccess from multiple hosts, you must create an ACL for each host.","nullable":true,"type":"string"},"operation":{"$ref":"#/components/schemas/ACL.Operation"},"permission_type":{"$ref":"#/components/schemas/PermissionType"},"principal":{"description":"The user for whom this ACL applies. With the Kafka simple\nauthorizer, you must include the prefix \"User:\" with the user name.","nullable":true,"type":"string"},"resource_name":{"description":"The name of the resource this ACL targets.","nullable":true,"type":"string"},"resource_pattern_type":{"$ref":"#/components/schemas/ResourcePatternType"},"resource_type":{"$ref":"#/components/schemas/ResourceType"}},"type":"object"},"ListACLsResponse":{"properties":{"resources":{"items":{"$ref":"#/components/schemas/ListACLsResponse.Resource"},"type":"array"}},"type":"object"},"ListACLsResponse.Resource":{"properties":{"acls":{"items":{"$ref":"#/components/schemas/Policy"},"type":"array"},"resource_name":{"description":"The name of the resource this ACL targets.","type":"string"},"resource_pattern_type":{"$ref":"#/components/schemas/ResourcePatternType"},"resource_type":{"$ref":"#/components/schemas/ResourceType"}},"type":"object"},"ListComponentsResponse":{"properties":{"components":{"$ref":"#/components/schemas/ComponentList"}},"type":"object"},"ListConnectClustersResponse":{"properties":{"clusters":{"items":{"$ref":"#/components/schemas/ConnectCluster"},"type":"array"}},"type":"object"},"ListConnectorTopicsResponse":{"properties":{"topics":{"description":"Topic names.","items":{"type":"string"},"type":"array"}},"type":"object"},"ListConnectorsResponse":{"properties":{"connectors":{"description":"List of connectors, where the parent key is the connector name.","items":{"$ref":"#/components/schemas/ConnectorInfoStatus"},"type":"array"},"next_page_token":{"description":"Page Token to fetch the next page. The value can be used as page_token in the next call to this endpoint.","type":"string"}},"type":"object"},"ListKafkaConnectSecretsResponse":{"description":"ListKafkaConnectSecretsResponse is the response of ListKafkaConnectSecrets.","properties":{"next_page_token":{"description":"Token to retrieve the next page.","type":"string"},"secrets":{"description":"Secrets retrieved.","items":{"$ref":"#/components/schemas/Secret"},"type":"array"}},"type":"object"},"ListKafkaConnectionsResponse":{"description":"ListKafkaConnectionsResponse is the response from the ListKafkaConnections\nRPC.","properties":{"connections":{"description":"The list of connections matching the request.\nNote that in addition to open connections, some recently-closed\nconnections may also be included here. If you don't want to include\nclosed connections, set the filter in the request to `state =\nKAFKA_CONNECTION_STATE_OPEN`.","items":{"$ref":"#/components/schemas/KafkaConnection"},"type":"array"},"total_size":{"format":"uint64","title":"Total number of connections matching the request.\nThis may be greater than `len(connections)` if some connections were\nomitted from the response due to the specified (or default) `page_size`.\nExample:\n request.page_size = 10\n response.connections = [\u003c10 items\u003e]\n response.total_size = 13","type":"string"}},"type":"object"},"ListMCPServersRequest.Filter":{"properties":{"display_name_contains":{"description":"Returns MCP servers that partially match this name.","type":"string"},"secret_id":{"description":"Filters MCP servers that reference this secret ID in their tool configurations.","type":"string"},"tags[string]":{"additionalProperties":{"type":"string"},"description":"Filters by tags using exact match. Returns only MCP servers that have all the specified key-value pairs.","type":"object"}},"type":"object"},"ListMCPServersResponse":{"properties":{"mcp_servers":{"items":{"$ref":"#/components/schemas/MCPServer"},"type":"array"},"next_page_token":{"description":"Token to retrieve the next page of results. Empty if there are no more results.","type":"string"}},"type":"object"},"ListMountTasksResponse":{"properties":{"tasks":{"items":{"$ref":"#/components/schemas/MountTask"},"type":"array"}},"type":"object"},"ListMountableTopicsResponse":{"properties":{"topics":{"items":{"$ref":"#/components/schemas/TopicLocation"},"type":"array"}},"type":"object"},"ListPipelinesRequest.Filter":{"properties":{"name_contains":{"description":"Any pipelines that partially match this name will be returned.","type":"string"},"secret_id":{"type":"string"},"tags[string]":{"additionalProperties":{"type":"string"},"description":"Pipelines that match all the provided tags will be returned.","type":"object"}},"type":"object"},"ListPipelinesResponse":{"properties":{"next_page_token":{"type":"string"},"pipelines":{"items":{"$ref":"#/components/schemas/Pipeline"},"type":"array"}},"type":"object"},"ListQuotasRequest.Filter":{"properties":{"entity_name":{"description":"Filter by entity name. If unspecified will return all entities for specified entity type.","type":"string"},"entity_type":{"$ref":"#/components/schemas/EntityType"},"match_default":{"description":"If true, the entity_name will match the default entity (e.g., default client-id).","type":"boolean"}},"type":"object"},"ListQuotasResponse":{"properties":{"page_token":{"description":"Token to retrieve the next page of results. If empty, there are no more results.","type":"string"},"quotas":{"items":{"$ref":"#/components/schemas/QuotaEntry"},"type":"array"}},"type":"object"},"ListResourcesRequest.Filter":{"properties":{"scopes":{"items":{"$ref":"#/components/schemas/Scope"},"type":"array"},"secret_id":{"type":"string"}},"type":"object"},"ListResourcesResponse":{"properties":{"resources":{"items":{"$ref":"#/components/schemas/ListResourcesResponse.Resource"},"type":"array"}},"type":"object"},"ListResourcesResponse.Resource":{"properties":{"display_name":{"type":"string"},"id":{"type":"string"},"type":{"$ref":"#/components/schemas/ListResourcesResponse.Type"}},"type":"object"},"ListResourcesResponse.Type":{"enum":["TYPE_PIPELINE","TYPE_CLUSTER","TYPE_MCP_SERVER","TYPE_AI_AGENT"],"type":"string"},"ListRoleMembersRequest.Filter":{"description":"Filter options.","properties":{"name_contains":{"description":"Filter results to only members with names which contain the string.","type":"string"}},"type":"object"},"ListRoleMembersResponse":{"description":"ListRoleMembersResponse is the response for ListRoleMembers.","properties":{"members":{"description":"Members assigned to the role.","items":{"$ref":"#/components/schemas/RoleMembership"},"type":"array"},"next_page_token":{"description":"Token to retrieve the next page.","type":"string"},"role_name":{"description":"The role name.","type":"string"}},"type":"object"},"ListRolesRequest.Filter":{"description":"Filter options.","properties":{"name_contains":{"description":"Filter results to only roles with names which contain the string.","type":"string"},"name_prefix":{"description":"Filter results only roles named with the prefix.","type":"string"},"principal":{"description":"Return only roles assigned to this principal. The principal must contain\nthe principal type. For example: \"User:jane\" is a valid principal format.","type":"string"}},"type":"object"},"ListRolesResponse":{"description":"ListRolesResponse is the response for ListRoles.","properties":{"next_page_token":{"description":"Token to retrieve the next page.","type":"string"},"roles":{"description":"The roles in the system.","items":{"$ref":"#/components/schemas/Role"},"type":"array"}},"type":"object"},"ListSecretScopesResponse":{"description":"ListSecretScopesResponse is the response of ListSecretScopes.","properties":{"scopes":{"items":{"$ref":"#/components/schemas/Scope"},"type":"array"}},"type":"object"},"ListSecretsFilter":{"description":"ListSecretsFilter are the filter options for listing secrets.","properties":{"labels[string][string]":{"additionalProperties":{"type":"string"},"description":"The secret labels to search for.","type":"object"},"name_contains":{"description":"Substring match on secret name. Case-sensitive.","type":"string"},"scopes":{"items":{"$ref":"#/components/schemas/Scope"},"title":"Secret scopes to search for","type":"array"}},"type":"object"},"ListSecretsResponse":{"description":"ListSecretsResponse is the response of ListSecrets.","properties":{"next_page_token":{"description":"Token to retrieve the next page.","type":"string"},"secrets":{"description":"Secrets retrieved.","items":{"$ref":"#/components/schemas/Secret"},"type":"array"}},"type":"object"},"ListShadowLinkTopicsRequest.Filter":{"properties":{"topic_name_contains":{"description":"Substring match on shadow topic name. Case-sensitive.","type":"string"}},"type":"object"},"ListShadowLinkTopicsResponse":{"properties":{"next_page_token":{"title":"Token to retrieve the next page","type":"string"},"shadow_topics":{"items":{"$ref":"#/components/schemas/v1.ShadowTopic"},"title":"Shadow topic status information","type":"array"}},"type":"object"},"ListTopicsRequest.Filter":{"properties":{"name_contains":{"description":"Substring match on topic name. Case-sensitive.","type":"string"}},"type":"object"},"ListTopicsResponse":{"properties":{"next_page_token":{"type":"string"},"topics":{"items":{"$ref":"#/components/schemas/ListTopicsResponse.Topic"},"type":"array"}},"type":"object"},"ListTopicsResponse.Topic":{"properties":{"internal":{"description":"Whether topic is internal only.","type":"boolean"},"name":{"description":"Topic name.","type":"string"},"partition_count":{"description":"Topic partition count.","format":"int32","type":"integer"},"replication_factor":{"description":"Topic replication factor.","format":"int32","type":"integer"}},"type":"object"},"ListTransformsRequest.Filter":{"properties":{"name_contains":{"description":"Substring match on transform name. Case-sensitive.","type":"string"}},"type":"object"},"ListTransformsResponse":{"properties":{"next_page_token":{"description":"Token to retrieve the next page.","type":"string"},"transforms":{"items":{"$ref":"#/components/schemas/TransformMetadata"},"type":"array"}},"type":"object"},"ListUsersRequest.Filter":{"properties":{"name":{"description":"Username.","type":"string"},"name_contains":{"description":"Substring match on username. Case-sensitive.","type":"string"}},"type":"object"},"ListUsersResponse":{"properties":{"next_page_token":{"description":"Token to retrieve the next page.","type":"string"},"users":{"items":{"$ref":"#/components/schemas/ListUsersResponse.User"},"type":"array"}},"type":"object"},"ListUsersResponse.User":{"properties":{"mechanism":{"$ref":"#/components/schemas/SASLMechanism"},"name":{"description":"Username.","type":"string"}},"type":"object"},"LocalizedMessage":{"description":"Provides a localized error message that is safe to return to the user\nwhich can be attached to an RPC error.","properties":{"locale":{"title":"The locale used following the specification defined at\nhttps://www.rfc-editor.org/rfc/bcp/bcp47.txt.\nExamples are: \"en-US\", \"fr-CH\", \"es-MX\"","type":"string"},"message":{"description":"The localized error message in the above locale.","type":"string"}},"type":"object"},"MCPServer":{"description":"Defines the MCP server resource.","properties":{"description":{"description":"Optional MCP server description.","type":"string"},"display_name":{"description":"User-friendly MCP server name.","type":"string"},"id":{"description":"Unique identifier for the MCP server.","type":"string"},"resources":{"$ref":"#/components/schemas/Resources"},"service_account":{"$ref":"#/components/schemas/MCPServer.ServiceAccount"},"state":{"$ref":"#/components/schemas/MCPServer.State"},"status":{"$ref":"#/components/schemas/MCPServer.Status"},"tags":{"additionalProperties":{"type":"string"},"description":"Tags are key-value pairs that can be assigned to an MCP server resource.\nThey help organize MCP servers and enable filtering when listing them.","type":"object"},"tools":{"additionalProperties":{"$ref":"#/components/schemas/Tool"},"description":"Map of tool names to their configurations. Each tool defines a capability that the MCP server exposes.","type":"object"},"url":{"description":"URL to connect to the MCP server.","readOnly":true,"type":"string"}},"required":["id","display_name","tools","service_account"],"type":"object"},"MCPServer.ServiceAccount":{"properties":{"client_id":{"type":"string"},"client_secret":{"type":"string"}},"required":["client_id","client_secret"],"type":"object"},"MCPServer.State":{"description":"State of the MCP server.\n\n - STATE_STARTING: The MCP server is starting.\n - STATE_RUNNING: The MCP server is running.\n - STATE_STOPPING: The MCP server is in the process of stopping.\n - STATE_STOPPED: The MCP server is stopped and in paused state.\n - STATE_ERROR: The MCP server encountered an error.","enum":["STATE_STARTING","STATE_RUNNING","STATE_STOPPING","STATE_STOPPED","STATE_ERROR"],"type":"string"},"MCPServer.Status":{"description":"MCP server status may contain an error message.","properties":{"error":{"description":"Error message if the MCP server is in an error state. Empty if no error.","type":"string"}},"type":"object"},"MCPServerCreate":{"description":"MCPServerCreate contains the details for the MCP server creation request.","properties":{"description":{"description":"Optional MCP server description.","type":"string"},"display_name":{"description":"User-friendly MCP server name.","type":"string"},"resources":{"$ref":"#/components/schemas/Resources"},"service_account":{"$ref":"#/components/schemas/MCPServer.ServiceAccount"},"tags":{"additionalProperties":{"type":"string"},"description":"Optional list of tags to attach to an MCP server.","type":"object"},"tools":{"additionalProperties":{"$ref":"#/components/schemas/Tool"},"description":"Map of tool names to their configurations. Each tool defines a capability that the MCP server exposes.","type":"object"}},"required":["display_name","tools","service_account"],"type":"object"},"MCPServerUpdate":{"properties":{"description":{"description":"MCP server description.","type":"string"},"display_name":{"description":"User-friendly MCP server name.","type":"string"},"resources":{"$ref":"#/components/schemas/Resources"},"service_account":{"$ref":"#/components/schemas/MCPServer.ServiceAccount"},"tags":{"additionalProperties":{"type":"string"},"description":"A map of tags to add, update or delete.\nIf a tag's value is empty, the server interprets that as a deletion.","type":"object"},"tools":{"additionalProperties":{"$ref":"#/components/schemas/Tool"},"description":"Map of tool names to their configurations. Each tool defines a capability that the MCP server exposes.","type":"object"}},"type":"object"},"MatchingACL":{"properties":{"error":{"$ref":"#/components/schemas/rpc.Status"},"host":{"description":"The host address to use for this ACL.","type":"string"},"operation":{"$ref":"#/components/schemas/ACL.Operation"},"permission_type":{"$ref":"#/components/schemas/PermissionType"},"principal":{"description":"The user for whom this ACL applies.","type":"string"},"resource_name":{"description":"The name of the resource this ACL targets.","type":"string"},"resource_pattern_type":{"$ref":"#/components/schemas/ResourcePatternType"},"resource_type":{"$ref":"#/components/schemas/ResourceType"}},"type":"object"},"MountTask":{"properties":{"id":{"description":"Unique identifier for this mount task.","format":"int32","type":"integer"},"state":{"$ref":"#/components/schemas/MountTask.State"},"topics":{"description":"List of topics that are being mounted or unmounted.","items":{"$ref":"#/components/schemas/MountTask.Topic"},"type":"array"},"type":{"$ref":"#/components/schemas/MountTask.Type"}},"type":"object"},"MountTask.State":{"description":" - STATE_PLANNED: Planned: The mount task has been created and is awaiting further actions.\n - STATE_PREPARING: Preparing: The mount task is gathering resources and preparing for execution.\n - STATE_PREPARED: Prepared: All preparations are complete, and the mount task is ready to be executed.\n - STATE_EXECUTING: Executing: The mount task is actively transferring or transforming data.\n - STATE_EXECUTED: Executed: The core mount task actions are complete, but the mount task has not yet cut over or finalized.\n - STATE_CUT_OVER: Cut Over: The mount task has reached a critical point where ownership is transferred or final adjustments are made.\n - STATE_FINISHED: Finished: The mount task has been successfully completed, and no further actions are required.\n - STATE_CANCELING: Canceling: The mount task is in the process of being canceled, and rollback or cleanup actions may be in progress.\n - STATE_CANCELLED: Cancelled: The mount task has been fully canceled, and no further actions will be taken.","enum":["STATE_PLANNED","STATE_PREPARING","STATE_PREPARED","STATE_EXECUTING","STATE_EXECUTED","STATE_CUT_OVER","STATE_FINISHED","STATE_CANCELING","STATE_CANCELLED"],"type":"string"},"MountTask.Topic":{"properties":{"source_topic_reference":{"description":"The topic reference in the object storage bucket.\nThis field is only set for tasks of type MOUNT.","type":"string"},"topic_reference":{"description":"The topic reference within the current cluster, which may be either a simple topic name or a full reference\nin the form: cluster-uuid/topic-name/revision.","type":"string"}},"type":"object"},"MountTask.Type":{"description":" - TYPE_MOUNT: Mount represents the process of making topics available in a cluster by loading them from object storage.\n - TYPE_UNMOUNT: Unmount represents the process of offloading topics back to object storage.","enum":["TYPE_MOUNT","TYPE_UNMOUNT"],"type":"string"},"MountTopicsResponse":{"properties":{"mount_task_id":{"format":"int32","title":"ID of mount","type":"integer"}},"type":"object"},"NameFilter":{"properties":{"filter_type":{"$ref":"#/components/schemas/FilterType"},"name":{"title":"The resource name, or \"*\"\nNote if \"*\", must be the _only_ character\nand `pattern_type` must be `PATTERN_TYPE_LITERAL`","type":"string"},"pattern_type":{"$ref":"#/components/schemas/PatternType"}},"title":"A filter based on the name of a resource","type":"object"},"Options":{"properties":{"include_tasks":{"description":"Restart connector's tasks.","type":"boolean"},"only_failed":{"description":"Restart only connectors that have failed.","type":"boolean"}},"type":"object"},"ParamDefinition":{"description":"ParamDefinition represents a parameter definition.","properties":{"default_value":{"type":"string"},"description":{"type":"string"},"name":{"type":"string"},"type":{"type":"string"}},"type":"object"},"ParamSpec":{"description":"ParamSpec represents parameter specifications.","properties":{"definitions":{"items":{"$ref":"#/components/schemas/ParamDefinition"},"type":"array"}},"type":"object"},"PartitionStatus":{"enum":["PARTITION_STATUS_RUNNING","PARTITION_STATUS_INACTIVE","PARTITION_STATUS_ERRORED","PARTITION_STATUS_UNKNOWN"],"type":"string"},"PartitionTransformStatus":{"properties":{"broker_id":{"format":"int32","type":"integer"},"lag":{"format":"int32","type":"integer"},"partition_id":{"format":"int32","type":"integer"},"status":{"$ref":"#/components/schemas/PartitionStatus"}},"type":"object"},"PatternType":{"description":"- PATTERN_TYPE_LITERAL: Must match the filter exactly\n - PATTERN_TYPE_PREFIX: Will match anything that starts with filter","enum":["PATTERN_TYPE_LITERAL","PATTERN_TYPE_PREFIX"],"title":"The matching pattern type","type":"string"},"PermissionType":{"description":"Whether the operation should be allowed or denied.","enum":["PERMISSION_TYPE_ANY","PERMISSION_TYPE_DENY","PERMISSION_TYPE_ALLOW"],"type":"string"},"Pipeline":{"description":"Defines the pipeline resource.","properties":{"config_yaml":{"description":"The Redpanda Connect pipeline configuration in YAML format. See the [Redpanda Connect Configuration](https://docs.redpanda.com/redpanda-cloud/develop/connect/configuration/about) documentation for more details.","title":"The pipeline configuration in YAML.\nSee https://docs.redpanda.com/redpanda-connect/configuration/about/","type":"string"},"description":{"description":"Optional pipeline description.","type":"string"},"display_name":{"description":"User-friendly pipeline name.","type":"string"},"id":{"description":"Pipeline ID.","type":"string"},"resources":{"$ref":"#/components/schemas/Resources"},"service_account":{"$ref":"#/components/schemas/Pipeline.ServiceAccount"},"state":{"$ref":"#/components/schemas/Pipeline.State"},"status":{"$ref":"#/components/schemas/Pipeline.Status"},"tags":{"additionalProperties":{"type":"string"},"description":"Tags are key-value pairs that can be assigned to a pipeline resource.\nThey help organize pipelines and enable filtering when listing them.","type":"object"},"url":{"description":"URL to connect to the pipeline, for example, via http_server.\nMay be empty if no http_server is used.","type":"string"}},"required":["id","display_name","config_yaml"],"type":"object"},"Pipeline.ServiceAccount":{"properties":{"client_id":{"type":"string"},"client_secret":{"type":"string"}},"type":"object"},"Pipeline.State":{"description":"State of the pipeline.\n\n - STATE_STARTING: The pipeline is starting.\n - STATE_RUNNING: The pipeline is running.\n - STATE_STOPPING: The pipeline is in the process of stopping.\n - STATE_STOPPED: The pipeline is stopped and in paused state.\n - STATE_ERROR: The pipeline encountered an error. See [Error Handling](https://docs.redpanda.com/redpanda-cloud/develop/connect/configuration/error_handling/) for further guidance.\n - STATE_COMPLETED: The pipeline has completed the job successfully.","enum":["STATE_STARTING","STATE_RUNNING","STATE_STOPPING","STATE_STOPPED","STATE_ERROR","STATE_COMPLETED"],"type":"string"},"Pipeline.Status":{"description":"Pipeline status may contain an error message.","properties":{"error":{"type":"string"}},"type":"object"},"PipelineCreate":{"description":"PipelineCreate contains the details for the pipeline creation request.","properties":{"config_yaml":{"description":"The Redpanda Connect pipeline configuration in YAML format. See the [Redpanda Connect Configuration](https://docs.redpanda.com/redpanda-cloud/develop/connect/configuration/about) documentation for more details.","type":"string"},"description":{"description":"Pipeline description.","type":"string"},"display_name":{"description":"User-friendly pipeline name.","type":"string"},"resources":{"$ref":"#/components/schemas/Resources"},"service_account":{"$ref":"#/components/schemas/Pipeline.ServiceAccount"},"tags":{"additionalProperties":{"type":"string"},"description":"Optional list of tags to attach to a pipeline.","type":"object"}},"required":["display_name","config_yaml"],"type":"object"},"PipelineUpdate":{"properties":{"config_yaml":{"description":"The Redpanda Connect pipeline configuration in YAML format. See the [Redpanda Connect Configuration](https://docs.redpanda.com/redpanda-cloud/develop/connect/configuration/about) documentation for more details.","type":"string"},"description":{"description":"Pipeline description.","type":"string"},"display_name":{"description":"User-friendly pipeline name.","type":"string"},"resources":{"$ref":"#/components/schemas/Resources"},"service_account":{"$ref":"#/components/schemas/Pipeline.ServiceAccount"},"tags":{"additionalProperties":{"type":"string"},"description":"A map of tags to add, update or delete.\nIf a tag's value is empty, the server interprets that as a deletion.","type":"object"}},"required":["display_name","config_yaml"],"type":"object"},"PipelinesForSecret":{"properties":{"pipelines":{"items":{"$ref":"#/components/schemas/Pipeline"},"type":"array"},"secret_id":{"type":"string"}},"type":"object"},"PlainConfig":{"properties":{"password":{"title":"Password","type":"string"},"password_set":{"readOnly":true,"title":"Indicates that the password has been set","type":"boolean"},"password_set_at":{"format":"date-time","readOnly":true,"title":"Timestamp of when the password was last set - only valid if password_set\nis true","type":"string"},"username":{"title":"PLAIN username","type":"string"}},"title":"PLAIN settings","type":"object"},"Policy":{"properties":{"host":{"description":"The host address for this ACL.","type":"string"},"operation":{"$ref":"#/components/schemas/ACL.Operation"},"permission_type":{"$ref":"#/components/schemas/PermissionType"},"principal":{"description":"The user for whom this ACL applies.","type":"string"}},"type":"object"},"Quota.Value":{"properties":{"value":{"format":"double","type":"number"},"value_type":{"$ref":"#/components/schemas/ValueType"}},"type":"object"},"QuotaDeletion":{"properties":{"entity":{"$ref":"#/components/schemas/RequestQuotaEntity"},"value_types":{"items":{"$ref":"#/components/schemas/ValueType"},"title":"Value that should be deleted for the specified entity","type":"array"}},"type":"object"},"QuotaEntry":{"description":"QuotaEntry represents the quota for a specific entity type.","properties":{"entity":{"$ref":"#/components/schemas/Entity"},"values":{"items":{"$ref":"#/components/schemas/Quota.Value"},"type":"array"}},"type":"object"},"QuotaFailure":{"description":"Describes how a quota check failed.\n\nFor example if a daily limit was exceeded for the calling project,\na service could respond with a QuotaFailure detail containing the project\nid and the description of the quota limit that was exceeded. If the\ncalling project hasn't enabled the service in the developer console, then\na service could respond with the project id and set `service_disabled`\nto true.\n\nAlso see RetryInfo and Help types for other details about handling a\nquota failure.","properties":{"violations":{"description":"Describes all quota violations.","items":{"$ref":"#/components/schemas/QuotaFailure.Violation"},"type":"array"}},"title":"QuotaFailure","type":"object"},"QuotaFailure.Violation":{"description":"A message type used to describe a single quota violation. For example, a\ndaily quota or a custom quota that was exceeded.","properties":{"api_service":{"description":"The API Service from which the `QuotaFailure.Violation` orginates. In\nsome cases, Quota issues originate from an API Service other than the one\nthat was called. In other words, a dependency of the called API Service\ncould be the cause of the `QuotaFailure`, and this field would have the\ndependency API service name.\n\nFor example, if the called API is Kubernetes Engine API\n(container.googleapis.com), and a quota violation occurs in the\nKubernetes Engine API itself, this field would be\n\"container.googleapis.com\". On the other hand, if the quota violation\noccurs when the Kubernetes Engine API creates VMs in the Compute Engine\nAPI (compute.googleapis.com), this field would be\n\"compute.googleapis.com\".","type":"string"},"description":{"description":"A description of how the quota check failed. Clients can use this\ndescription to find more about the quota configuration in the service's\npublic documentation, or find the relevant quota limit to adjust through\ndeveloper console.\n\nFor example: \"Service disabled\" or \"Daily Limit for read operations\nexceeded\".","type":"string"},"future_quota_value":{"description":"The new quota value being rolled out at the time of the violation. At the\ncompletion of the rollout, this value will be enforced in place of\nquota_value. If no rollout is in progress at the time of the violation,\nthis field is not set.\n\nFor example, if at the time of the violation a rollout is in progress\nchanging the number of CPUs quota from 10 to 20, 20 would be the value of\nthis field.","format":"int64","nullable":true,"type":"string"},"quota_dimensions":{"additionalProperties":{"type":"string"},"description":"The dimensions of the violated quota. Every non-global quota is enforced\non a set of dimensions. While quota metric defines what to count, the\ndimensions specify for what aspects the counter should be increased.\n\nFor example, the quota \"CPUs per region per VM family\" enforces a limit\non the metric \"compute.googleapis.com/cpus_per_vm_family\" on dimensions\n\"region\" and \"vm_family\". And if the violation occurred in region\n\"us-central1\" and for VM family \"n1\", the quota_dimensions would be,\n\n{\n \"region\": \"us-central1\",\n \"vm_family\": \"n1\",\n}\n\nWhen a quota is enforced globally, the quota_dimensions would always be\nempty.","type":"object"},"quota_id":{"description":"The id of the violated quota. Also know as \"limit name\", this is the\nunique identifier of a quota in the context of an API service.\n\nFor example, \"CPUS-PER-VM-FAMILY-per-project-region\".","type":"string"},"quota_metric":{"description":"The metric of the violated quota. A quota metric is a named counter to\nmeasure usage, such as API requests or CPUs. When an activity occurs in a\nservice, such as Virtual Machine allocation, one or more quota metrics\nmay be affected.\n\nFor example, \"compute.googleapis.com/cpus_per_vm_family\",\n\"storage.googleapis.com/internet_egress_bandwidth\".","type":"string"},"quota_value":{"description":"The enforced quota value at the time of the `QuotaFailure`.\n\nFor example, if the enforced quota value at the time of the\n`QuotaFailure` on the number of CPUs is \"10\", then the value of this\nfield would reflect this quantity.","format":"int64","type":"string"},"subject":{"description":"The subject on which the quota check failed.\nFor example, \"clientip:\u003cip address of client\u003e\" or \"project:\u003cGoogle\ndeveloper project id\u003e\".","type":"string"}},"type":"object"},"QuotaSetting":{"properties":{"entity":{"$ref":"#/components/schemas/RequestQuotaEntity"},"values":{"items":{"$ref":"#/components/schemas/RequestQuotaValue"},"type":"array"}},"type":"object"},"ReplicaAssignment":{"properties":{"partition_id":{"description":"A partition to create.","format":"int32","type":"integer"},"replica_ids":{"description":"The broker IDs the partition replicas are assigned to.","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"Request":{"properties":{"api_key":{"format":"int32","title":"API key for the request type (e.g., produce/fetch/metadata/etc)\nhttps://kafka.apache.org/0101/protocol.html#protocol_api_keys","type":"integer"},"in_flight_duration":{"title":"How long the request has been in-flight since it was received","type":"string"}},"type":"object"},"RequestQuotaEntity":{"properties":{"entity_name":{"description":"Entity name is the name of the entity type specified.\nIf left empty, the entity will be treated as a default entity (e.g., all clients).\nIf entity_type is ENTITY_TYPE_CLIENT_ID_PREFIX, this field must be set.","type":"string"},"entity_type":{"$ref":"#/components/schemas/EntityType"}},"type":"object"},"RequestQuotaValue":{"properties":{"value":{"format":"double","type":"number"},"value_type":{"$ref":"#/components/schemas/ValueType"}},"type":"object"},"RequestStatistics":{"properties":{"fetch_bytes":{"description":"Sum of bytes fetched.","format":"uint64","type":"string"},"produce_batch_count":{"format":"uint64","title":"Number of produced batches.\nAverage batch size = produce_bytes / produce_batch_count","type":"string"},"produce_bytes":{"description":"Sum of bytes produced.","format":"uint64","type":"string"},"request_count":{"description":"Number of requests the client has made.","format":"uint64","type":"string"}},"type":"object"},"ResourcePatternType":{"description":"The pattern to use for matching the specified resource_name\n(any, exact match, literal, or prefixed).","enum":["RESOURCE_PATTERN_TYPE_ANY","RESOURCE_PATTERN_TYPE_MATCH","RESOURCE_PATTERN_TYPE_LITERAL","RESOURCE_PATTERN_TYPE_PREFIXED"],"type":"string"},"ResourceType":{"description":"The type of resource (topic, consumer group, etc.) this\nACL targets.","enum":["RESOURCE_TYPE_ANY","RESOURCE_TYPE_TOPIC","RESOURCE_TYPE_GROUP","RESOURCE_TYPE_CLUSTER","RESOURCE_TYPE_TRANSACTIONAL_ID","RESOURCE_TYPE_DELEGATION_TOKEN","RESOURCE_TYPE_USER","RESOURCE_TYPE_REGISTRY","RESOURCE_TYPE_SUBJECT"],"type":"string"},"Resources":{"properties":{"cpu_shares":{"description":"`cpu_shares` is a string specifying the amount of CPU to allocate for the\npipeline.\n\nThis follows the [Kubernetes quantity](https://kubernetes.io/docs/reference/kubernetes-api/common-definitions/quantity/) format. Acceptable\nunits include:\n- Decimal SI units: \"m\" (e.g., \"500m\" for 500 millicores, \"2\" for 2 cores)\nCPU shares can be specified in millicores (1 core = 1000 millicores).\nIf you don't specify a unit, the value is interpreted as the number of cores.","type":"string"},"memory_shares":{"description":"`memory_shares` is a string specifying the amount of memory to allocate for\nthe pipeline.\n\nThis follows the [Kubernetes quantity](https://kubernetes.io/docs/reference/kubernetes-api/common-definitions/quantity/) format. Acceptable units\ninclude:\n- Decimal SI units: \"K\", \"M\", \"G\", \"T\", \"P\", \"E\" (e.g., \"128M\" for 128\n megabytes)\n- Binary SI units: \"Ki\", \"Mi\", \"Gi\", \"Ti\", \"Pi\", \"Ei\" (e.g., \"512Mi\" for\n512 mebibytes) If you don't specify a unit, the value is interpreted as\nbytes.","type":"string"}},"required":["memory_shares","cpu_shares"],"type":"object"},"Role":{"description":"Role defines a role in the system.","properties":{"name":{"description":"The name of the role.","type":"string"}},"type":"object"},"RoleMembership":{"description":"RoleMembership is the role membership.","properties":{"principal":{"description":"The name of the principal assigned to the role.","type":"string"}},"type":"object"},"SASLMechanism":{"description":"SASL mechanism to use for authentication.","enum":["SASL_MECHANISM_SCRAM_SHA_256","SASL_MECHANISM_SCRAM_SHA_512"],"type":"string"},"SchemaRegistrySyncOptions":{"description":"Options for how the Schema Registry is synced.","properties":{"shadow_schema_registry_topic":{"$ref":"#/components/schemas/ShadowSchemaRegistryTopic"}},"type":"object"},"Scope":{"description":"Defines the scope of a secret.","enum":["SCOPE_REDPANDA_CONNECT","SCOPE_REDPANDA_CLUSTER","SCOPE_MCP_SERVER","SCOPE_AI_AGENT","SCOPE_AI_GATEWAY"],"type":"string"},"ScramConfig":{"properties":{"password":{"title":"Password","type":"string"},"password_set":{"readOnly":true,"title":"Indicates that the password has been set","type":"boolean"},"password_set_at":{"format":"date-time","readOnly":true,"title":"Timestamp of when the password was last set - only valid if password_set\nis true","type":"string"},"scram_mechanism":{"$ref":"#/components/schemas/ScramMechanism"},"username":{"title":"SCRAM username","type":"string"}},"title":"SCRAM settings","type":"object"},"ScramMechanism":{"description":"- SCRAM_MECHANISM_SCRAM_SHA_256: SCRAM-SHA-256\n - SCRAM_MECHANISM_SCRAM_SHA_512: SCRAM-SHA-512","enum":["SCRAM_MECHANISM_SCRAM_SHA_256","SCRAM_MECHANISM_SCRAM_SHA_512"],"title":"Valid SCRAM mechanisms","type":"string"},"Secret":{"description":"Defines the secret resource.","properties":{"id":{"description":"Secret identifier.","readOnly":true,"type":"string"},"labels":{"additionalProperties":{"type":"string"},"description":"Secret labels.","type":"object"},"scopes":{"items":{"$ref":"#/components/schemas/Scope"},"title":"Secret scopes","type":"array"}},"type":"object"},"SecuritySettingsSyncOptions":{"properties":{"acl_filters":{"items":{"$ref":"#/components/schemas/ACLFilter"},"title":"ACL filters","type":"array"},"effective_interval":{"readOnly":true,"title":"The effective interval for the task","type":"string"},"interval":{"title":"Sync interval\nIf 0 provided, defaults to 30 seconds","type":"string"},"paused":{"title":"Allows user to pause the security settings sync task. If paused,\nthen the task will enter the 'paused' state and will not sync security\nsettings from the source cluster","type":"boolean"}},"title":"Options for syncing security settings","type":"object"},"SetConfiguration":{"properties":{"name":{"description":"A topic-level config key (e.g. `segment.bytes`).","type":"string"},"value":{"description":"A topic-level config value (e.g. 1073741824).","nullable":true,"type":"string"}},"type":"object"},"SetPartitionsToTopicsRequest":{"properties":{"partition_count":{"description":"The number of partitions to set for the topics.","format":"int32","type":"integer"},"topic_names":{"description":"The topic names.","items":{"type":"string"},"type":"array"},"validate_only":{"description":"Validate the request only, do not execute it.","type":"boolean"}},"type":"object"},"SetPartitionsToTopicsResponse":{"properties":{"statuses":{"description":"The status of the operation for each topic.","items":{"$ref":"#/components/schemas/AlterTopicPartitionStatus"},"type":"array"}},"type":"object"},"SetQuotaRequest":{"properties":{"entity":{"$ref":"#/components/schemas/RequestQuotaEntity"},"value":{"$ref":"#/components/schemas/RequestQuotaValue"}},"type":"object"},"SetQuotaResponse":{"type":"object"},"SetTopicConfigurationsResponse":{"properties":{"configurations":{"description":"Topic's complete set of configurations after this update.","items":{"$ref":"#/components/schemas/Configuration"},"type":"array"}},"type":"object"},"SetTopicPartitionsBody":{"properties":{"partition_count":{"description":"The number of partitions to set for the topic.","format":"int32","type":"integer"},"validate_only":{"description":"Validate the request only, do not execute it.","type":"boolean"}},"type":"object"},"SetTopicPartitionsResponse":{"type":"object"},"ShadowLinkClientOptions":{"properties":{"authentication_configuration":{"$ref":"#/components/schemas/AuthenticationConfiguration"},"bootstrap_servers":{"items":{"type":"string"},"title":"The bootstrap servers to use","type":"array"},"client_id":{"readOnly":true,"title":"The Client ID for the Kafka RPC requests setn by this cluster to the\nsource cluster","type":"string"},"connection_timeout_ms":{"format":"int32","title":"Connection timeout.\nIf 0 is provided, defaults to 1 second","type":"integer"},"effective_connection_timeout_ms":{"format":"int32","readOnly":true,"title":"The effective connection timeout in milliseconds","type":"integer"},"effective_fetch_max_bytes":{"format":"int32","readOnly":true,"title":"The effective fetch max bytes","type":"integer"},"effective_fetch_min_bytes":{"format":"int32","readOnly":true,"title":"The effective fetch min bytes","type":"integer"},"effective_fetch_partition_max_bytes":{"format":"int32","readOnly":true,"title":"The effective fetch partition max bytes","type":"integer"},"effective_fetch_wait_max_ms":{"format":"int32","readOnly":true,"title":"The effective fetch wait max in milliseconds","type":"integer"},"effective_metadata_max_age_ms":{"format":"int32","readOnly":true,"title":"The effective metadata max age in milliseconds","type":"integer"},"effective_retry_backoff_ms":{"format":"int32","readOnly":true,"title":"The effective retry backoff in milliseconds","type":"integer"},"fetch_max_bytes":{"format":"int32","title":"Fetch max bytes.\nIf 0 is provided, defaults to 20 MiB","type":"integer"},"fetch_min_bytes":{"format":"int32","title":"Fetch min bytes.\nIf 0 is provided, defaults to 5 MiB","type":"integer"},"fetch_partition_max_bytes":{"format":"int32","title":"Fetch partition max bytes.\nIf 0 is provided, defaults to 5 MiB","type":"integer"},"fetch_wait_max_ms":{"format":"int32","title":"Fetch request timeout.\nIf 0 is provided, defaults to 500ms","type":"integer"},"metadata_max_age_ms":{"format":"int32","title":"Max metadata age.\nIf 0 is provided, defaults to 10 seconds","type":"integer"},"retry_backoff_ms":{"format":"int32","title":"Retry base backoff.\nIf 0 is provided, defaults to 100ms","type":"integer"},"source_cluster_id":{"title":"If provided, this is the expected ID of the source cluster. If it does\nnot match then the connection will be rejected. If provided, this value\nmust match the `ClusterId` field returned in the Kafka Metadata response\nmessage","type":"string"},"tls_settings":{"$ref":"#/components/schemas/TLSSettings"}},"required":["bootstrap_servers"],"title":"Options for the client link","type":"object"},"ShadowLinkConfigurations":{"properties":{"client_options":{"$ref":"#/components/schemas/ShadowLinkClientOptions"},"consumer_offset_sync_options":{"$ref":"#/components/schemas/ConsumerOffsetSyncOptions"},"schema_registry_sync_options":{"$ref":"#/components/schemas/SchemaRegistrySyncOptions"},"security_sync_options":{"$ref":"#/components/schemas/SecuritySettingsSyncOptions"},"topic_metadata_sync_options":{"$ref":"#/components/schemas/TopicMetadataSyncOptions"}},"title":"ShadowLink options","type":"object"},"ShadowLinkState":{"description":"- SHADOW_LINK_STATE_ACTIVE: Shadow link is active\n - SHADOW_LINK_STATE_PAUSED: Shadow link was paused","enum":["SHADOW_LINK_STATE_ACTIVE","SHADOW_LINK_STATE_PAUSED"],"title":"State of the shadow link","type":"string"},"ShadowLinkTaskStatus":{"properties":{"broker_id":{"format":"int32","title":"The broker the task is running on","type":"integer"},"name":{"title":"Name of the task","type":"string"},"reason":{"title":"Reason for task being in state","type":"string"},"shard":{"format":"int32","title":"The shard the task is running on","type":"integer"},"state":{"$ref":"#/components/schemas/TaskState"}},"title":"Status of a task","type":"object"},"ShadowSchemaRegistryTopic":{"description":"Shadow the entire source cluster's Schema Registry byte-for-byte.\nIf set, the Shadow Link will attempt to add the `_schemas`\ntopic to the list of Shadow Topics as long as:\n1. The `_schemas` topic exists on the source cluster\n2. The `_schemas` topic does not exist on the shadow cluster, or it is\nempty.\nIf either of the above conditions are _not_ met, then the `_schemas`\ntopic will _not_ be shadowed by this cluster. Unsetting this flag will\n_not_ remove the `_schemas` topic from shadowing if it has already been\nadded. Once made a shadow topic, the\n`_schemas` topic will be replicated byte-for-byte. To stop shadowing the\n`_schemas` topic, unset this field, then either fail-over the topic or\ndelete it.","type":"object"},"ShadowTopicState":{"description":"- SHADOW_TOPIC_STATE_ACTIVE: Shadow topic is active\n - SHADOW_TOPIC_STATE_FAULTED: Shadow topic has faulted\n - SHADOW_TOPIC_STATE_PAUSED: Shadow topic has been paused\n - SHADOW_TOPIC_STATE_FAILING_OVER: Shadow topic is in the process of failing over\n - SHADOW_TOPIC_STATE_FAILED_OVER: Shadow topic has failed over successfully\n - SHADOW_TOPIC_STATE_PROMOTING: Shadow topic is in the process of being promoted\n - SHADOW_TOPIC_STATE_PROMOTED: Shadow topic is promoted successfully","enum":["SHADOW_TOPIC_STATE_ACTIVE","SHADOW_TOPIC_STATE_FAULTED","SHADOW_TOPIC_STATE_PAUSED","SHADOW_TOPIC_STATE_FAILING_OVER","SHADOW_TOPIC_STATE_FAILED_OVER","SHADOW_TOPIC_STATE_PROMOTING","SHADOW_TOPIC_STATE_PROMOTED"],"title":"State of a shadow topic","type":"string"},"Source":{"properties":{"ip_address":{"type":"string"},"port":{"format":"int64","type":"integer"}},"type":"object"},"StartMCPServerResponse":{"properties":{"mcp_server":{"$ref":"#/components/schemas/MCPServer"}},"type":"object"},"StartPipelineResponse":{"properties":{"pipeline":{"$ref":"#/components/schemas/Pipeline"}},"type":"object"},"StopMCPServerResponse":{"properties":{"mcp_server":{"$ref":"#/components/schemas/MCPServer"}},"type":"object"},"StopPipelineResponse":{"properties":{"pipeline":{"$ref":"#/components/schemas/Pipeline"}},"type":"object"},"SuccessfulEntity":{"properties":{"entity_name":{"type":"string"},"entity_type":{"$ref":"#/components/schemas/EntityType"}},"type":"object"},"TLSFileSettings":{"properties":{"ca_path":{"title":"Path to the CA","type":"string"},"cert_path":{"title":"Path to the cert","type":"string"},"key_path":{"title":"Key and Cert are optional but if one is provided, then both must be\nPath to the key","type":"string"}},"title":"TLS file settings","type":"object"},"TLSInfo":{"properties":{"enabled":{"title":"Whether TLS is in use","type":"boolean"}},"type":"object"},"TLSPEMSettings":{"properties":{"ca":{"title":"The CA","type":"string"},"cert":{"title":"The cert","type":"string"},"key":{"title":"Key and Cert are optional but if one is provided, then both must be\nThe key","type":"string"},"key_fingerprint":{"readOnly":true,"title":"The SHA-256 of the key, in base64 format","type":"string"}},"title":"Used when providing the TLS information in PEM format","type":"object"},"TLSSettings":{"properties":{"do_not_set_sni_hostname":{"title":"If true, the SNI hostname will not be provided when TLS is used","type":"boolean"},"enabled":{"title":"Whether or not TLS is enabled","type":"boolean"},"tls_file_settings":{"$ref":"#/components/schemas/TLSFileSettings"},"tls_pem_settings":{"$ref":"#/components/schemas/TLSPEMSettings"}},"title":"TLS settings","type":"object"},"TaskInfo":{"properties":{"connector":{"description":"Name of connector.","type":"string"},"task":{"description":"The connector task ID.","format":"int32","type":"integer"}},"type":"object"},"TaskState":{"description":"- TASK_STATE_ACTIVE: Task is active\n - TASK_STATE_PAUSED: Task was paused\n - TASK_STATE_LINK_UNAVAILABLE: Task is unable to communicate with source cluster\n - TASK_STATE_NOT_RUNNING: Task is not running\n - TASK_STATE_FAULTED: Task is faulted","enum":["TASK_STATE_ACTIVE","TASK_STATE_PAUSED","TASK_STATE_LINK_UNAVAILABLE","TASK_STATE_NOT_RUNNING","TASK_STATE_FAULTED"],"title":"Task states","type":"string"},"TaskStatus":{"properties":{"id":{"description":"The connector task ID.","format":"int32","type":"integer"},"state":{"description":"State of connector task.","type":"string"},"trace":{"description":"String value of stack trace.","type":"string"},"worker_id":{"description":"ID of worker that the task is assigned to.","type":"string"}},"type":"object"},"Tool":{"description":"A configuration tool for the MCP server.","properties":{"component_type":{"$ref":"#/components/schemas/ComponentType"},"config_yaml":{"description":"The contents of the configuration tool in YAML format.","type":"string"}},"required":["config_yaml"],"type":"object"},"TopicLocation":{"properties":{"topic_location":{"description":"Full reference for the unmounted topic in this format: `topic-name/cluster-uuid/revision`.\nUse this as unique identifier for mounting a topic if there are multiple topics available\nwith the same name.","type":"string"},"topic_name":{"description":"Topic name.","type":"string"}},"type":"object"},"TopicMetadataSyncOptions":{"properties":{"auto_create_shadow_topic_filters":{"description":"List of filters that indicate which topics should be automatically\ncreated as shadow topics on the shadow cluster. This only controls\nautomatic creation of shadow topics and does not effect the state of the\nmirror topic once it is created.\nLiteral filters for __consumer_offsets, _redpanda.audit_log and _schemas\nwill be rejected as well as prefix filters to match topics prefixed with\n_redpanda or __redpanda.\nWildcard `*` is permitted only for literal filters and will _not_ match\nany topics that start with _redpanda or __redpanda. If users wish to\nshadow topics that start with _redpanda or __redpanda, they should\nprovide a literal filter for those topics.","items":{"$ref":"#/components/schemas/NameFilter"},"type":"array"},"effective_interval":{"readOnly":true,"title":"The effective interval for the task","type":"string"},"exclude_default":{"description":"If this is true, then only the properties listed in\n`synced_shadow_topic_properties` will be synced.","title":"If false, then the following topic properties will be synced by default:\n- `compression.type`\n- `retention.bytes`\n- `retention.ms`\n- `delete.retention.ms`\n- Replication Factor\n- `min.compaction.lag.ms`\n- `max.compaction.lag.ms`","type":"boolean"},"interval":{"title":"How often to sync metadata\nIf 0 provided, defaults to 30 seconds","type":"string"},"paused":{"title":"Allows user to pause the topic sync task. If paused, then\nthe task will enter the 'paused' state and not sync topics or their\nproperties from the source cluster","type":"boolean"},"start_at_earliest":{"$ref":"#/components/schemas/EarliestOffset"},"start_at_latest":{"$ref":"#/components/schemas/LatestOffset"},"start_at_timestamp":{"description":"Enables data replication from the first offset on the\nsource topic/partition where the record's timestamp is\nat or after the specified timestamp.","format":"date-time","type":"string"},"synced_shadow_topic_properties":{"description":"The following properties are not allowed to be replicated and adding them\nto this list will result in an error:\n- `redpanda.remote.readreplica`\n- `redpanda.remote.recovery`\n- `redpanda.remote.allowgaps`\n- `redpanda.virtual.cluster.id`\n- `redpanda.leaders.preference`\n- `redpanda.cloud_topic.enabled`\n\nThis list is a list of properties in addition to the default properties\nthat will be synced. See `exclude_default`.","items":{"type":"string"},"title":"List of topic properties that should be synced from the source topic.\nThe following properties will always be replicated\n- Partition count\n- `max.message.bytes`\n- `cleanup.policy`\n- `timestamp.type`","type":"array"}},"title":"Options for syncing topic metadata","type":"object"},"TopicMount":{"description":"TopicMount defines the migration of a topic from the cloud storage into this cluster,\nso that it becomes available via the Kafka API.","properties":{"alias":{"description":"Alias may be provided to mount the topic under a different name. Leave\nblank to re-use the source topic name. The alias does not persist if you\nunmount the topic again.","type":"string"},"source_topic_reference":{"description":"The topic name or full reference of the topic to mount. The full reference\nmust be used in case the same topic exists more than once. This may be the case if\nthe same topic has been unmounted multiple times. List all mountable topics to\nfind the full reference (contains topic name, cluster uuid and revision).","type":"string"}},"required":["source_topic_reference"],"type":"object"},"TopicPartitionInformation":{"properties":{"high_watermark":{"format":"int64","title":"Shadowed partition's HWM","type":"string"},"partition_id":{"format":"int64","title":"Partition ID","type":"string"},"source_high_watermark":{"format":"int64","title":"Source partition's HWM","type":"string"},"source_last_stable_offset":{"format":"int64","title":"Source partition's LSO","type":"string"},"source_last_updated_timestamp":{"format":"date-time","title":"Timestamp of the last time the source partition information was updated","type":"string"}},"title":"Topic partition information","type":"object"},"TransformMetadata":{"properties":{"environment_variables":{"description":"The environment variables you want to apply to your transform's environment","items":{"$ref":"#/components/schemas/EnvironmentVariable"},"type":"array"},"input_topic_name":{"description":"Input topic to apply the transform to.","type":"string"},"name":{"description":"Name of transform.","type":"string"},"output_topic_names":{"description":"Output topics to write the transform results to.","items":{"type":"string"},"type":"array"},"statuses":{"items":{"$ref":"#/components/schemas/PartitionTransformStatus"},"type":"array"}},"type":"object"},"UnmountTopicsResponse":{"properties":{"mount_task_id":{"format":"int32","title":"ID of unmount","type":"integer"}},"type":"object"},"UpdateConfiguration":{"properties":{"name":{"description":"A topic-level config key (e.g. `segment.bytes`).","type":"string"},"operation":{"$ref":"#/components/schemas/ConfigAlterOperation"},"value":{"description":"A topic-level config value (e.g. 1073741824).","nullable":true,"type":"string"}},"type":"object"},"UpdateKafkaConnectSecretBody":{"description":"UpdateKafkaConnectSecretRequest is the request of UpdateKafkaConnectSecret.","properties":{"labels":{"additionalProperties":{"type":"string"},"description":"Secret labels.","type":"object"},"secret_data":{"description":"The secret data. Must be Base64-encoded.","format":"byte","type":"string"}},"required":["secret_data"],"type":"object"},"UpdateKafkaConnectSecretResponse":{"description":"UpdateKafkaConnectSecretResponse is the response of UpdateKafkaConnectSecret.","properties":{"secret":{"$ref":"#/components/schemas/Secret"}},"type":"object"},"UpdateMCPServerResponse":{"properties":{"mcp_server":{"$ref":"#/components/schemas/MCPServer"}},"type":"object"},"UpdateMountTaskBody":{"properties":{"action":{"$ref":"#/components/schemas/Action"}},"required":["action"],"type":"object"},"UpdateMountTaskResponse":{"type":"object"},"UpdatePipelineResponse":{"properties":{"pipeline":{"$ref":"#/components/schemas/Pipeline"}},"type":"object"},"UpdateRoleMembershipBody":{"description":"UpdateRoleMembershipRequest is the request to UpdateRoleMembership.","properties":{"add":{"description":"Members to assign to the role.","items":{"$ref":"#/components/schemas/RoleMembership"},"type":"array"},"create":{"description":"Create the role if it doesn't already exist.\nIf the role is created in this way, the “add” list will be respected, but the “remove” list will be ignored.","type":"boolean"},"remove":{"description":"Members to remove from the role.","items":{"$ref":"#/components/schemas/RoleMembership"},"type":"array"}},"type":"object"},"UpdateRoleMembershipResponse":{"description":"UpdateRoleMembershipResponse is the response for UpdateRoleMembership.","properties":{"added":{"description":"Members assigned to the role.","items":{"$ref":"#/components/schemas/RoleMembership"},"type":"array"},"removed":{"description":"Members removed from the role.","items":{"$ref":"#/components/schemas/RoleMembership"},"type":"array"},"role_name":{"description":"The role name.","type":"string"}},"type":"object"},"UpdateSecretBody":{"description":"UpdateSecretRequest is the request of UpdateSecret.","properties":{"labels":{"additionalProperties":{"type":"string"},"description":"Secret labels.","type":"object"},"scopes":{"items":{"$ref":"#/components/schemas/Scope"},"title":"Secret scopes","type":"array"},"secret_data":{"description":"The secret data. Must be Base64-encoded.","format":"byte","type":"string"}},"type":"object"},"UpdateSecretResponse":{"description":"UpdateSecretResponse is the response of UpdateSecret.","properties":{"secret":{"$ref":"#/components/schemas/Secret"}},"type":"object"},"UpdateTopicConfigurationsResponse":{"properties":{"configurations":{"description":"Topic's complete set of configurations after applying this partial patch.","items":{"$ref":"#/components/schemas/Configuration"},"type":"array"}},"type":"object"},"UpdateUserRequest.User":{"properties":{"mechanism":{"$ref":"#/components/schemas/SASLMechanism"},"name":{"description":"Username.","type":"string"},"password":{"description":"Password.","type":"string"}},"type":"object"},"UpdateUserResponse":{"properties":{"user":{"$ref":"#/components/schemas/UpdateUserResponse.User"}},"type":"object"},"UpdateUserResponse.User":{"description":"Updated user's name and SASL mechanism.","properties":{"mechanism":{"$ref":"#/components/schemas/SASLMechanism"},"name":{"type":"string"}},"type":"object"},"UpsertConnectorResponse":{"properties":{"connector":{"$ref":"#/components/schemas/ConnectorSpec"}},"type":"object"},"ValueType":{"description":"The type of value that the quota represents.\n\n - VALUE_TYPE_PRODUCER_BYTE_RATE: The rate at which producers can send data.\n - VALUE_TYPE_CONSUMER_BYTE_RATE: The rate at which consumers can fetch data.\n - VALUE_TYPE_CONTROLLER_MUTATION_RATE: The rate at which topic mutation requests can be made.\n - VALUE_TYPE_REQUEST_PERCENTAGE: The percentage of the total throughput that can be used by the entity.\n\nNot supported in Redpanda","enum":["VALUE_TYPE_PRODUCER_BYTE_RATE","VALUE_TYPE_CONSUMER_BYTE_RATE","VALUE_TYPE_CONTROLLER_MUTATION_RATE","VALUE_TYPE_REQUEST_PERCENTAGE"],"type":"string"},"rpc.Status":{"description":"The `Status` type defines a logical error model that is suitable for\ndifferent programming environments, including REST APIs and RPC APIs. It is\nused by [gRPC](https://github.com/grpc). Each `Status` message contains\nthree pieces of data: error code, error message, and error details.\n\nYou can find out more about this error model and how to work with it in the\n[API Design Guide](https://cloud.google.com/apis/design/errors).","properties":{"code":{"description":"RPC status code, as described [here](https://github.com/googleapis/googleapis/blob/b4c238feaa1097c53798ed77035bbfeb7fc72e96/google/rpc/code.proto#L32).","enum":["OK","CANCELLED","UNKNOWN","INVALID_ARGUMENT","DEADLINE_EXCEEDED","NOT_FOUND","ALREADY_EXISTS","PERMISSION_DENIED","UNAUTHENTICATED","RESOURCE_EXHAUSTED","FAILED_PRECONDITION","ABORTED","OUT_OF_RANGE","UNIMPLEMENTED","INTERNAL","UNAVAILABLE","DATA_LOSS"],"format":"int32","type":"string"},"details":{"items":{"description":"Details of the error.","oneOf":[{"allOf":[{"properties":{"@type":{"description":"Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.","enum":["type.googleapis.com/google.rpc.BadRequest"],"type":"string"}}},{"$ref":"#/components/schemas/BadRequest"}]},{"allOf":[{"properties":{"@type":{"description":"Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.","enum":["type.googleapis.com/google.rpc.ErrorInfo"],"type":"string"}}},{"$ref":"#/components/schemas/ErrorInfo"}]},{"allOf":[{"properties":{"@type":{"description":"Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.","enum":["type.googleapis.com/google.rpc.QuotaFailure"],"type":"string"}}},{"$ref":"#/components/schemas/QuotaFailure"}]},{"allOf":[{"properties":{"@type":{"description":"Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.","enum":["type.googleapis.com/google.rpc.Help"],"type":"string"}}},{"$ref":"#/components/schemas/Help"}]}]},"type":"array"},"message":{"description":"Detailed error message. No compatibility guarantees are given for the text contained in this message.","type":"string"}},"type":"object"},"v1.FailOverResponse":{"properties":{"failed_over_topics":{"items":{"type":"string"},"title":"List of topics that were failed over\nIf shadow_topic_name was specified in the request, this will contain only that topic\nIf shadow_topic_name was not specified, this will contain all topics in the shadow link","type":"array"},"name":{"title":"Name of the shadow link that was failed over","type":"string"}},"type":"object"},"v1.GetShadowLinkResponse":{"properties":{"shadow_link":{"$ref":"#/components/schemas/v1.ShadowLink"}},"type":"object"},"v1.GetShadowTopicResponse":{"properties":{"shadow_topic":{"$ref":"#/components/schemas/v1.ShadowTopic"}},"type":"object"},"v1.ShadowLink":{"properties":{"configurations":{"$ref":"#/components/schemas/ShadowLinkConfigurations"},"name":{"title":"Return name, configuration, and overall state","type":"string"},"state":{"$ref":"#/components/schemas/ShadowLinkState"},"synced_shadow_topic_properties":{"items":{"type":"string"},"type":"array"},"tasks_status":{"items":{"$ref":"#/components/schemas/ShadowLinkTaskStatus"},"type":"array"},"uid":{"type":"string"}},"type":"object"},"v1.ShadowTopic":{"properties":{"partitions":{"items":{"$ref":"#/components/schemas/TopicPartitionInformation"},"type":"array"},"state":{"$ref":"#/components/schemas/ShadowTopicState"},"topic_id":{"type":"string"},"topic_name":{"type":"string"},"total_lag":{"format":"int64","type":"string"},"total_partitions":{"format":"int32","type":"integer"}},"type":"object"}},"securitySchemes":{"auth0":{"description":"RedpandaCloud","flows":{"implicit":{"authorizationUrl":"https://auth.prd.cloud.redpanda.com/oauth/authorize","scopes":{},"x-client-id":"dQjapNIAHhF7EQqQToRla3yEII9sUSap"}},"type":"oauth2"}}},"info":{"title":"Redpanda Cloud Data Plane API","version":"v1"},"openapi":"3.0.3","paths":{"/v1/acls":{"delete":{"description":"Delete all ACLs that match the filter criteria. The `filter.` query string parameters find matching ACLs that meet all specified conditions.","operationId":"ACLService_DeleteACLs","parameters":[{"description":"The type of resource (topic, consumer group, etc.) this\nACL targets.","in":"query","name":"filter.resource_type","required":true,"schema":{"enum":["RESOURCE_TYPE_ANY","RESOURCE_TYPE_TOPIC","RESOURCE_TYPE_GROUP","RESOURCE_TYPE_CLUSTER","RESOURCE_TYPE_TRANSACTIONAL_ID","RESOURCE_TYPE_DELEGATION_TOKEN","RESOURCE_TYPE_USER","RESOURCE_TYPE_REGISTRY","RESOURCE_TYPE_SUBJECT"],"type":"string"}},{"description":"The name of the resource this ACL targets.","in":"query","name":"filter.resource_name","schema":{"type":"string"}},{"description":"The pattern to use for matching the specified resource_name\n(any, exact match, literal, or prefixed).","in":"query","name":"filter.resource_pattern_type","required":true,"schema":{"enum":["RESOURCE_PATTERN_TYPE_ANY","RESOURCE_PATTERN_TYPE_MATCH","RESOURCE_PATTERN_TYPE_LITERAL","RESOURCE_PATTERN_TYPE_PREFIXED"],"type":"string"}},{"description":"The user for whom this ACL applies. With the Kafka simple\nauthorizer, you must include the prefix \"User:\" with the user name.","in":"query","name":"filter.principal","schema":{"type":"string"}},{"description":"The host address to use for this ACL. To allow a principal\naccess from multiple hosts, you must create an ACL for each host.","in":"query","name":"filter.host","schema":{"type":"string"}},{"description":"The operation that is allowed or denied (e.g. READ).","in":"query","name":"filter.operation","required":true,"schema":{"enum":["OPERATION_ANY","OPERATION_ALL","OPERATION_READ","OPERATION_WRITE","OPERATION_CREATE","OPERATION_DELETE","OPERATION_ALTER","OPERATION_DESCRIBE","OPERATION_CLUSTER_ACTION","OPERATION_DESCRIBE_CONFIGS","OPERATION_ALTER_CONFIGS","OPERATION_IDEMPOTENT_WRITE","OPERATION_CREATE_TOKENS","OPERATION_DESCRIBE_TOKENS"],"type":"string"}},{"description":"Whether the operation should be allowed or denied.","in":"query","name":"filter.permission_type","required":true,"schema":{"enum":["PERMISSION_TYPE_ANY","PERMISSION_TYPE_DENY","PERMISSION_TYPE_ALLOW"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteACLsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete ACLs","tags":["Redpanda ACLs"]},"get":{"description":"List all ACLs. The `filter.` query string parameters find matching ACLs that meet all specified conditions.","operationId":"ACLService_ListACLs","parameters":[{"description":"The type of resource (topic, consumer group, etc.) this\nACL targets.","in":"query","name":"filter.resource_type","schema":{"enum":["RESOURCE_TYPE_ANY","RESOURCE_TYPE_TOPIC","RESOURCE_TYPE_GROUP","RESOURCE_TYPE_CLUSTER","RESOURCE_TYPE_TRANSACTIONAL_ID","RESOURCE_TYPE_DELEGATION_TOKEN","RESOURCE_TYPE_USER","RESOURCE_TYPE_REGISTRY","RESOURCE_TYPE_SUBJECT"],"type":"string"}},{"description":"The name of the resource this ACL targets.","in":"query","name":"filter.resource_name","schema":{"type":"string"}},{"description":"The pattern to use for matching the specified resource_name\n(any, exact match, literal, or prefixed).","in":"query","name":"filter.resource_pattern_type","schema":{"enum":["RESOURCE_PATTERN_TYPE_ANY","RESOURCE_PATTERN_TYPE_MATCH","RESOURCE_PATTERN_TYPE_LITERAL","RESOURCE_PATTERN_TYPE_PREFIXED"],"type":"string"}},{"description":"The user for whom this ACL applies. With the Kafka simple\nauthorizer, you must include the prefix \"User:\" with the user name.","in":"query","name":"filter.principal","schema":{"type":"string"}},{"description":"The host address to use for this ACL. To allow a principal\naccess from multiple hosts, you must create an ACL for each host.","in":"query","name":"filter.host","schema":{"type":"string"}},{"description":"The operation that is allowed or denied (e.g. READ).","in":"query","name":"filter.operation","schema":{"enum":["OPERATION_ANY","OPERATION_ALL","OPERATION_READ","OPERATION_WRITE","OPERATION_CREATE","OPERATION_DELETE","OPERATION_ALTER","OPERATION_DESCRIBE","OPERATION_CLUSTER_ACTION","OPERATION_DESCRIBE_CONFIGS","OPERATION_ALTER_CONFIGS","OPERATION_IDEMPOTENT_WRITE","OPERATION_CREATE_TOKENS","OPERATION_DESCRIBE_TOKENS"],"type":"string"}},{"description":"Whether the operation should be allowed or denied.","in":"query","name":"filter.permission_type","schema":{"enum":["PERMISSION_TYPE_ANY","PERMISSION_TYPE_DENY","PERMISSION_TYPE_ALLOW"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListACLsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List ACLs","tags":["Redpanda ACLs"]},"post":{"description":"Create a new ACL.","operationId":"ACLService_CreateACL","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateACLRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateACLResponse"}}},"description":"Created"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create ACL","tags":["Redpanda ACLs"]}},"/v1/cloud-storage/mount-tasks":{"get":{"description":"This operation retrieves the status of a task responsible for mounting or unmounting topics. It provides details on the task’s type (mount or unmount), its current state, and the topics involved.","operationId":"CloudStorageService_ListMountTasks","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListMountTasksResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Retrieve the mount task status","tags":["Cloud Storage"]}},"/v1/cloud-storage/mount-tasks/{id}":{"delete":{"description":"Delete a mount or unmount by ID.","operationId":"CloudStorageService_DeleteMountTask","parameters":[{"description":"Unique identifier of the mount or unmount task to delete.","in":"path","name":"id","required":true,"schema":{"format":"int32","type":"integer"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteMountTaskResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete a mount or unmount","tags":["Cloud Storage"]},"get":{"description":"Retrieves the status of a mount or unmount by ID. The response provides details on the operation type (mount or unmount), its current state, and the topics involved. Use the ID returned when you start the mount or unmount, or use the ListMountTasks endpoint to retrieve a list of IDs.","operationId":"CloudStorageService_GetMountTask","parameters":[{"description":"Unique identifier of the mount or unmount task to retrieve.","in":"path","name":"id","required":true,"schema":{"format":"int32","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMountTaskResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get the status of a mount or unmount by ID","tags":["Cloud Storage"]},"post":{"description":"This operation allows performing an action on an ongoing mount task.","operationId":"CloudStorageService_UpdateMountTask","parameters":[{"description":"ID is the unique identifier of the mount or unmount to update.","in":"path","name":"id","required":true,"schema":{"format":"int32","type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMountTaskBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMountTaskResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update a mount or unmount","tags":["Cloud Storage"]}},"/v1/cloud-storage/topics/mount":{"post":{"description":"Attach mountable topics from object storage to a cluster, making them available for consumption and production again. Mounting a topic reloads its data and state to the local brokers, allowing active use of the topic.","operationId":"CloudStorageService_MountTopics","requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/TopicMount"},"required":["topics"],"type":"array"}}},"required":true,"x-originalParamName":"topics"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MountTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Mount topics from object storage","tags":["Cloud Storage"]}},"/v1/cloud-storage/topics/mountable":{"get":{"description":"Retrieve all topics that are currently unmounted and available to be mounted to the cluster. These topics reside in object storage and can be mounted for consumption or production within the cluster.","operationId":"CloudStorageService_ListMountableTopics","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListMountableTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List mountable topics","tags":["Cloud Storage"]}},"/v1/cloud-storage/topics/unmount":{"post":{"description":"Unmount topics to object storage, freeing up all local cluster resources. Once you unmount a topic, it can no longer be consumed or produced to. It detaches from the active cluster while its data remains safely stored in the external object storage.","operationId":"CloudStorageService_UnmountTopics","requestBody":{"content":{"application/json":{"schema":{"items":{"type":"string"},"required":["topics"],"type":"array"}}},"description":"List of topics to unmount.","required":true,"x-originalParamName":"topics"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmountTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Unmount topics to object storage","tags":["Cloud Storage"]}},"/v1/kafka-connect/clusters":{"get":{"description":"List Connect clusters available in Console.","operationId":"KafkaConnectService_ListConnectClusters","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListConnectClustersResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List Connect clusters","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}":{"get":{"description":"Get information about an available Kafka Connect cluster.","operationId":"KafkaConnectService_GetConnectCluster","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectCluster"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Connect cluster not found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Connect cluster","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors":{"get":{"description":"List connectors managed by the Kafka Connect service.","operationId":"KafkaConnectService_ListConnectors","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Value of the next_page_token field returned by the previous response. If not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListConnectorsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List connectors","tags":["Kafka Connect"]},"post":{"description":"Create a connector with the specified configuration.","operationId":"KafkaConnectService_CreateConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorSpec"}}},"required":true,"x-originalParamName":"connector"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorSpec"}}},"description":"Created"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create connector","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}":{"delete":{"description":"Delete a connector. This operation force stops all tasks and also deletes the connector configuration.","operationId":"KafkaConnectService_DeleteConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Deleted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete connector","tags":["Kafka Connect"]},"get":{"description":"Get information about a connector in a specific cluster.","operationId":"KafkaConnectService_GetConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorSpec"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get connector","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/config":{"get":{"description":"Get the configuration for the connector.","operationId":"KafkaConnectService_GetConnectorConfig","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get connector configuration","tags":["Kafka Connect"]},"put":{"description":"Update the configuration for an existing connector with the specified name, or create a new connector using the given configuration. Returns information about the connector after the change has been made.","operationId":"KafkaConnectService_UpsertConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector. If a connector with this name does not already exist, a new connector is created.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"required":["config"],"type":"object"}}},"description":"Connector configuration property.","required":true,"x-originalParamName":"config"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorSpec"}}},"description":"Updated"},"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorSpec"}}},"description":"Created"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Upsert connector configuration","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/pause":{"put":{"description":"Pause the connector and its tasks, which stops messages from processing until the connector is resumed. This call is asynchronous and may take some time to process.","operationId":"KafkaConnectService_PauseConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{}}},"description":"Pause request accepted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Pause connector","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/restart":{"post":{"description":"Triggers a connector restart. You must specify whether or not tasks are also restarted, and whether only failed connectors are restarted.","operationId":"KafkaConnectService_RestartConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Options"}}},"required":true,"x-originalParamName":"options"},"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Restart connector request success"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Restart connector","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/resume":{"put":{"description":"Resume a paused connector and its tasks, and resumes message processing. This call is asynchronous and may take some time to process. If the connector was not paused, this operation does not do anything.","operationId":"KafkaConnectService_ResumeConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{}}},"description":"Resume request accepted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Resume connector","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/status":{"get":{"description":"Gets the current status of the connector, including the state for each of its tasks, error information, etc.","operationId":"KafkaConnectService_GetConnectorStatus","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorStatus"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get connector status","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/stop":{"put":{"description":"Stops a connector, but does not delete it. All tasks for the connector are shut down completely. This call is asynchronous and may take some time to process.","operationId":"KafkaConnectService_StopConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{}}},"description":"Request accepted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Stop connector","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/topics":{"get":{"description":"Returns a list of connector topic names. If the connector is inactive, this call returns an empty list.","operationId":"KafkaConnectService_ListConnectorTopics","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListConnectorTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List connector topics","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/topics/reset":{"put":{"description":"Resets the set of topic names that the connector is using.","operationId":"KafkaConnectService_ResetConnectorTopics","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector using the topics to be reset.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Reset connector topics","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/secrets":{"get":{"description":"List Kafka Connect cluster secrets. Optional: filter based on secret name and labels.","operationId":"SecretService_ListKafkaConnectSecrets","parameters":[{"description":"Unique name of target connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Substring match on secret name. Case-sensitive.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"This is a request variable of the map type. The query format is \"map_name[key]=value\", e.g. If the map name is Age, the key type is string, and the value type is integer, the query parameter is expressed as Age[\"bob\"]=18","in":"query","name":"filter.labels[string][string]","schema":{"type":"string"}},{"description":"Secret scopes to search for","in":"query","name":"filter.scopes","schema":{"items":{"enum":["SCOPE_REDPANDA_CONNECT","SCOPE_REDPANDA_CLUSTER","SCOPE_MCP_SERVER","SCOPE_AI_AGENT","SCOPE_AI_GATEWAY"],"type":"string"},"type":"array"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListSecretsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List Connect cluster secrets","tags":["Secrets"]},"post":{"description":"Create a Kafka Connect cluster secret.","operationId":"SecretService_CreateKafkaConnectSecret","parameters":[{"description":"Unique name of target connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateKafkaConnectSecretBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetKafkaConnectSecretResponse"}}},"description":"Secret created"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create Connect cluster secret","tags":["Secrets"]}},"/v1/kafka-connect/clusters/{cluster_name}/secrets/{id}":{"delete":{"description":"Delete a Kafka Connect cluster secret.","operationId":"SecretService_DeleteKafkaConnectSecret","parameters":[{"description":"Unique name of target connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"ID of the secret to delete.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Secret deleted successfully"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete Connect cluster secret","tags":["Secrets"]},"get":{"description":"Get a specific Kafka Connect cluster secret.","operationId":"SecretService_GetKafkaConnectSecret","parameters":[{"description":"Unique name of target connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"The ID of the secret to retrieve.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetKafkaConnectSecretResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Connect cluster secret","tags":["Secrets"]},"put":{"description":"Update a Kafka Connect cluster secret.","operationId":"SecretService_UpdateKafkaConnectSecret","parameters":[{"description":"Unique name of target connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"ID of the secret to update.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateKafkaConnectSecretBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateKafkaConnectSecretResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update Connect cluster secret","tags":["Secrets"]}},"/v1/monitoring/kafka/connections":{"get":{"description":"List information on recent connections to the cluster.","operationId":"MonitoringService_ListKafkaConnections","parameters":[{"description":"The maximum number of connections to return. If unspecified or 0, a\ndefault value may be applied. The server may return fewer connections\nthan requested due to memory constraints; the limit is set to allow\nlisting all connections for a single broker. Consider filtering by\nnode_id to view connections for specific brokers. Note that paging is\ncurrently not fully supported, and this field only acts as a limit for\nthe first page of data returned. Subsequent pages of data cannot be\nrequested.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Filter expression to apply to the connection list.\nUses a subset of AIP-160 filter syntax supporting:\n- Field comparisons (`=`, `!=`, `\u003c`, `\u003e`, `\u003c=`, `\u003e=`)\n- Logical AND chaining: condition1 AND condition2\n- Nested field access: parent.child = value\n- Escape sequences: field = \"string with \\\"quotes\\\"\"\n- Enum types\n- RFC3339 timestamps and ISO-like duration\n\nLimitations (not supported):\n- Logical OR chaining\n- Parentheses `(` `)` for grouping\n- Map and repeated types\n- HAS (:) operator\n- Negation (-, NOT)\n- Bare literal matching\n\nExample filters:\n- `state = KAFKA_CONNECTION_STATE_OPEN`\n- `idle_duration \u003e 30s AND total_request_statistics.request_count \u003e 100`\n- `authentication_info.user_principal = \"my-producer\"`\n- `recent_request_statistics.produce_bytes \u003e 1000 AND\nclient_software_name = \"kgo\"`\n- `open_time \u003e= 2025-09-01T10:22:54Z`\n\nReference: https://google.aip.dev/160","in":"query","name":"filter","schema":{"type":"string"}},{"description":"Field-based ordering specification following AIP-132 syntax.\nSupports multiple fields with `asc`/`desc` direction indicators.\nExamples:\n- `idle_duration desc` - longest idle connections first\n- `open_time desc, total_request_statistics.request_count desc` - newest\nconnections first, then most active\n- `recent_request_statistics.produce_bytes desc` - connections with\nhighest current produce throughput first\n\nReference: https://google.aip.dev/132#ordering","in":"query","name":"order_by","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListKafkaConnectionsResponse"}}},"description":"Recent connections"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List Recent Connections","tags":["Monitoring"]}},"/v1/quotas":{"get":{"description":"List client quotas. Use filter parameters to narrow results by entity type and filter criteria.","operationId":"QuotaService_ListQuotas","parameters":[{"description":"The type of entity to filter by. If unspecified, all entities will be returned.\n\n - ENTITY_TYPE_USER: Not supported in Redpanda\n - ENTITY_TYPE_IP: Not supported in Redpanda","in":"query","name":"filter.entity_type","schema":{"enum":["ENTITY_TYPE_CLIENT_ID","ENTITY_TYPE_CLIENT_ID_PREFIX","ENTITY_TYPE_USER","ENTITY_TYPE_IP"],"type":"string"}},{"description":"Filter by entity name. If unspecified will return all entities for specified entity type.","in":"query","name":"filter.entity_name","schema":{"type":"string"}},{"description":"If true, the entity_name will match the default entity (e.g., default client-id).","in":"query","name":"filter.match_default","schema":{"type":"boolean"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response. If not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListQuotasResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List quotas","tags":["Quotas"]},"post":{"description":"Create or update client throughput quotas for a single entity. This operation is an upsert.","operationId":"QuotaService_SetQuota","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetQuotaRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetQuotaResponse"}}},"description":"Quota Set"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Set a quota","tags":["Quotas"]}},"/v1/quotas:batchDelete":{"post":{"description":"Delete client quotas for multiple entities and values in a single request.","operationId":"QuotaService_BatchDeleteQuota","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatchDeleteQuotaRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatchDeleteQuotaResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete multiple quotas","tags":["Quotas"]}},"/v1/quotas:batchSet":{"post":{"description":"Create or update client throughput quotas for multiple entities in a single request.","operationId":"QuotaService_BatchSetQuota","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatchSetQuotaRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatchSetQuotaResponse"}}},"description":"Quotas Set"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Set multiple quotas","tags":["Quotas"]}},"/v1/quotas:delete":{"post":{"description":"Delete client quotas for single entity and value.","operationId":"QuotaService_DeleteQuota","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteQuotaRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteQuotaResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete a quota","tags":["Quotas"]}},"/v1/redpanda-connect/components":{"get":{"description":"Returns a JSON list of available [components](https://docs.redpanda.com/redpanda-cloud/develop/connect/components/about), filtered by component type.","operationId":"PipelineService_ListComponents","parameters":[{"in":"query","name":"read_mask","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListComponentsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Retrieve the list of available components","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/config-schema":{"get":{"description":"The configuration schema includes available [components and processors](https://docs.redpanda.com/redpanda-cloud/develop/connect/components/about) in this Redpanda Connect instance.","operationId":"PipelineService_GetPipelineServiceConfigSchema","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetPipelineServiceConfigSchemaResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Retrieve the schema for Redpanda Connect pipeline configurations","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/mcp-servers":{"get":{"description":"Lists MCP servers. Optionally filter by display name, tags, or secret ID.","operationId":"MCPServerService_ListMCPServers","parameters":[{"description":"Returns MCP servers that partially match this name.","in":"query","name":"filter.display_name_contains","schema":{"type":"string"}},{"description":"This is a request variable of the map type. The query format is \"map_name[key]=value\", e.g. If the map name is Age, the key type is string, and the value type is integer, the query parameter is expressed as Age[\"bob\"]=18","in":"query","name":"filter.tags[string]","schema":{"type":"string"}},{"description":"Filters MCP servers that reference this secret ID in their tool configurations.","in":"query","name":"filter.secret_id","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListMCPServersResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List MCP servers","tags":["Remote MCP"]},"post":{"description":"Create a new MCP server.","operationId":"MCPServerService_CreateMCPServer","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServerCreate"}}},"required":true,"x-originalParamName":"mcp_server"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServer"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create MCP server","tags":["Remote MCP"]}},"/v1/redpanda-connect/mcp-servers/{id}":{"delete":{"description":"Delete an MCP server.","operationId":"MCPServerService_DeleteMCPServer","parameters":[{"description":"MCP server ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Deleted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete an MCP server","tags":["Remote MCP"]},"get":{"description":"Get a specific MCP server.","operationId":"MCPServerService_GetMCPServer","parameters":[{"description":"MCP server ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServer"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get MCP server","tags":["Remote MCP"]},"put":{"description":"Update the configuration of an MCP server.","operationId":"MCPServerService_UpdateMCPServer","parameters":[{"description":"MCP server ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies which fields to update. If not provided, updates all fields.","in":"query","name":"update_mask","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServerUpdate"}}},"required":true,"x-originalParamName":"mcp_server"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServer"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update an MCP server","tags":["Remote MCP"]}},"/v1/redpanda-connect/mcp-servers/{id}:start":{"post":{"description":"Start a stopped MCP server.","operationId":"MCPServerService_StartMCPServer","parameters":[{"description":"MCP server ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServer"}}},"description":"Started"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Start an MCP server","tags":["Remote MCP"]}},"/v1/redpanda-connect/mcp-servers/{id}:stop":{"post":{"description":"Stop a running MCP server.","operationId":"MCPServerService_StopMCPServer","parameters":[{"description":"MCP server ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServer"}}},"description":"Stopped"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Stop an MCP server","tags":["Remote MCP"]}},"/v1/redpanda-connect/mcp-servers:getConfigSchema":{"get":{"description":"Returns the configuration schema for MCP server tools, including available components and processors.","operationId":"MCPServerService_GetMCPServerServiceConfigSchema","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMCPServerServiceConfigSchemaResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get MCP server configuration schema","tags":["Remote MCP"]}},"/v1/redpanda-connect/mcp-servers:lint-config":{"post":{"description":"Validates a given MCP tool's configuration and returns linting hints. Each tool's YAML configuration is validated. If no problems are found, the response is empty.","operationId":"MCPServerService_LintMCPConfig","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LintMCPConfigRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LintMCPConfigResponse"}}},"description":"Linting finished. See `lint_hints` for details."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Lint a MCP tools configuration","tags":["Remote MCP"]}},"/v1/redpanda-connect/pipelines":{"get":{"description":"List Redpanda Connect pipelines. Optional: filter based on pipeline name.","operationId":"PipelineService_ListPipelines","parameters":[{"description":"Any pipelines that partially match this name will be returned.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"This is a request variable of the map type. The query format is \"map_name[key]=value\", e.g. If the map name is Age, the key type is string, and the value type is integer, the query parameter is expressed as Age[\"bob\"]=18","in":"query","name":"filter.tags[string]","schema":{"type":"string"}},{"in":"query","name":"filter.secret_id","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListPipelinesResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List Redpanda Connect pipelines","tags":["Redpanda Connect Pipelines"]},"post":{"description":"Create a new Redpanda Connect pipeline.","operationId":"PipelineService_CreatePipeline","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PipelineCreate"}}},"required":true,"x-originalParamName":"pipeline"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pipeline"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create Redpanda Connect pipeline","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/pipelines-by-secrets":{"get":{"description":"Get Redpanda Connect pipelines by secrets.","operationId":"PipelineService_GetPipelinesBySecrets","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetPipelinesBySecretsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Redpanda Connect pipelines by secrets","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/pipelines-for-secret":{"get":{"description":"Get Redpanda Connect pipelines for a given secret.","operationId":"PipelineService_GetPipelinesForSecret","parameters":[{"description":"Secret ID.","in":"query","name":"secret_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetPipelinesForSecretResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Redpanda Connect pipelines for secret","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/pipelines/{id}":{"delete":{"description":"Delete a Redpanda Connect pipeline.","operationId":"PipelineService_DeletePipeline","parameters":[{"description":"Pipeline ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Deleted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete a Redpanda Connect pipeline","tags":["Redpanda Connect Pipelines"]},"get":{"description":"Get a specific Redpanda Connect pipeline.","operationId":"PipelineService_GetPipeline","parameters":[{"description":"Pipeline ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pipeline"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Redpanda Connect pipeline","tags":["Redpanda Connect Pipelines"]},"put":{"description":"Update the [configuration](https://docs.redpanda.com/redpanda-cloud/develop/connect/configuration/about) of a Redpanda Connect pipeline.","operationId":"PipelineService_UpdatePipeline","parameters":[{"description":"Pipeline ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies which fields should be updated. If not provided,\nall fields will be updated.","in":"query","name":"update_mask","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PipelineUpdate"}}},"required":true,"x-originalParamName":"pipeline"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pipeline"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update a Redpanda Connect pipeline","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/pipelines/{id}/start":{"put":{"description":"Start a stopped Redpanda Connect pipeline.","operationId":"PipelineService_StartPipeline","parameters":[{"description":"Pipeline ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pipeline"}}},"description":"Started"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Start a Redpanda Connect pipeline","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/pipelines/{id}/stop":{"put":{"description":"Stop a running Redpanda Connect pipeline.","operationId":"PipelineService_StopPipeline","parameters":[{"description":"Pipeline ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pipeline"}}},"description":"Stopped"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Stops a Redpanda Connect pipeline","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/pipelines:lint-config":{"post":{"description":"Validates a supplied Redpanda Connect pipeline YAML and returns a list of linting hints. If no problems are found, the list is empty.","operationId":"PipelineService_LintPipelineConfig","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LintPipelineConfigRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LintPipelineConfigResponse"}}},"description":"Linting finished. See `lint_hints` for details."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Lint a Redpanda Connect pipeline configuration","tags":["Redpanda Connect Pipelines"]}},"/v1/roles":{"get":{"description":"List roles. Optional: filter based on role name and principal.","operationId":"SecurityService_ListRoles","parameters":[{"description":"Filter results only roles named with the prefix.","in":"query","name":"filter.name_prefix","schema":{"type":"string"}},{"description":"Filter results to only roles with names which contain the string.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"Return only roles assigned to this principal. The principal must contain\nthe principal type. For example: \"User:jane\" is a valid principal format.","in":"query","name":"filter.principal","schema":{"type":"string"}},{"description":"Page size.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRolesResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List roles","tags":["Security"]},"post":{"description":"Create a role.","operationId":"SecurityService_CreateRole","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Role"}}},"description":"The role to create.","required":true,"x-originalParamName":"role"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRoleResponse"}}},"description":"Role created"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create role","tags":["Security"]}},"/v1/roles/{role_name}":{"delete":{"description":"Delete a role.","operationId":"SecurityService_DeleteRole","parameters":[{"description":"The role name.","in":"path","name":"role_name","required":true,"schema":{"type":"string"}},{"description":"Whether to delete the ACLs bound to the role.","in":"query","name":"delete_acls","schema":{"type":"boolean"}}],"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Role deleted successfully"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete role","tags":["Security"]},"get":{"description":"Get a role.","operationId":"SecurityService_GetRole","parameters":[{"description":"The role name.","in":"path","name":"role_name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRoleResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get role","tags":["Security"]},"put":{"description":"Update a role.","operationId":"SecurityService_UpdateRoleMembership","parameters":[{"description":"The role name.","in":"path","name":"role_name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateRoleMembershipBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateRoleMembershipResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update role","tags":["Security"]}},"/v1/roles/{role_name}/members":{"get":{"description":"List members assigned to a role.","operationId":"SecurityService_ListRoleMembers","parameters":[{"description":"The role name.","in":"path","name":"role_name","required":true,"schema":{"type":"string"}},{"description":"Filter results to only members with names which contain the string.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"Page size.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRoleMembersResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List role members","tags":["Security"]}},"/v1/secret-scopes":{"get":{"description":"List supported secret scopes.","operationId":"SecretService_ListSecretScopes","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListSecretScopesResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List secret scopes","tags":["Secrets"]}},"/v1/secrets":{"get":{"description":"List secrets. Optional: filter based on secret name and labels.","operationId":"SecretService_ListSecrets","parameters":[{"description":"Substring match on secret name. Case-sensitive.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"This is a request variable of the map type. The query format is \"map_name[key]=value\", e.g. If the map name is Age, the key type is string, and the value type is integer, the query parameter is expressed as Age[\"bob\"]=18","in":"query","name":"filter.labels[string]","schema":{"type":"string"}},{"description":"Secret scopes to search for","in":"query","name":"filter.scopes","schema":{"items":{"enum":["SCOPE_REDPANDA_CONNECT","SCOPE_REDPANDA_CLUSTER","SCOPE_MCP_SERVER","SCOPE_AI_AGENT","SCOPE_AI_GATEWAY"],"type":"string"},"type":"array"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListSecretsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List secrets","tags":["Secrets"]},"post":{"description":"Create a secret.","operationId":"SecretService_CreateSecret","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSecretRequest"}}},"description":"CreateSecretRequest is the request of CreateSecret.","required":true,"x-originalParamName":"body"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSecretResponse"}}},"description":"Secret created"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create secret","tags":["Secrets"]}},"/v1/secrets/resources":{"get":{"description":"Get resources by secret.","operationId":"SecretService_ListResources","parameters":[{"in":"query","name":"filter.secret_id","schema":{"type":"string"}},{"in":"query","name":"filter.scopes","schema":{"items":{"enum":["SCOPE_REDPANDA_CONNECT","SCOPE_REDPANDA_CLUSTER","SCOPE_MCP_SERVER","SCOPE_AI_AGENT","SCOPE_AI_GATEWAY"],"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListResourcesResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get resources by secret","tags":["Secrets"]}},"/v1/secrets/{id}":{"delete":{"description":"Delete a secret.","operationId":"SecretService_DeleteSecret","parameters":[{"description":"The id of the secret to delete.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Secret deleted successfully"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete secret","tags":["Secrets"]},"get":{"description":"Get a secret.","operationId":"SecretService_GetSecret","parameters":[{"description":"The id of the secret to retrieve.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSecretResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get secret","tags":["Secrets"]},"put":{"description":"Update a secret.","operationId":"SecretService_UpdateSecret","parameters":[{"description":"Secret identifier.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSecretBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSecretResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update secret","tags":["Secrets"]}},"/v1/shadow-links/{name}":{"get":{"description":"Retrieve details of a specific shadow link by name.","operationId":"ShadowLinkService_GetShadowLink","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1.GetShadowLinkResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Shadow Link","tags":["Shadow Links (Data Plane)"]}},"/v1/shadow-links/{name}/failover":{"post":{"description":"Fail over a shadow link or a specific shadow topic within a link.","operationId":"ShadowLinkService_FailOver","parameters":[{"description":"The name of the shadow link to fail over","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FailOverBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1.FailOverResponse"}}},"description":"Failover accepted and initiated"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Fail Over Shadow Link","tags":["Shadow Links (Data Plane)"]}},"/v1/shadow-links/{name}/metrics":{"get":{"description":"Retrieve metrics for a specific shadow link, including total topics replicated, failed over topics, and error topics.","operationId":"ShadowLinkService_GetShadowMetrics","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetShadowMetricsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Shadow Link Metrics","tags":["Shadow Links (Data Plane)"]}},"/v1/shadow-links/{shadow_link_name}/topic":{"get":{"description":"List shadow topic status information for a specific shadow link. Optional: filter based on topic name.","operationId":"ShadowLinkService_ListShadowLinkTopics","parameters":[{"in":"path","name":"shadow_link_name","required":true,"schema":{"type":"string"}},{"description":"Substring match on shadow topic name. Case-sensitive.","in":"query","name":"filter.topic_name_contains","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListShadowLinkTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List Shadow Link Topics","tags":["Shadow Links (Data Plane)"]}},"/v1/shadow-links/{shadow_link_name}/topic/{topic_name}":{"get":{"description":"Retrieve details of a specific shadow topic within a shadow link.","operationId":"ShadowLinkService_GetShadowTopic","parameters":[{"in":"path","name":"shadow_link_name","required":true,"schema":{"type":"string"}},{"in":"path","name":"topic_name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1.GetShadowTopicResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Shadow Topic","tags":["Shadow Links (Data Plane)"]}},"/v1/topics":{"get":{"description":"List topics, with partition count and replication factor. Optional: filter based on topic name.","operationId":"TopicService_ListTopics","parameters":[{"description":"Substring match on topic name. Case-sensitive.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response. If not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List topics","tags":["Topics"]},"post":{"description":"Create a [topic](https://docs.redpanda.com/redpanda-cloud/get-started/create-topic/).","operationId":"TopicService_CreateTopic","parameters":[{"description":"If true, makes this request a dry run; everything is validated but\nno topics are actually created.","in":"query","name":"validate_only","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTopicRequest.Topic"}}},"description":"The topic to create.","required":true,"x-originalParamName":"topic"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTopicResponse"}}},"description":"Topic created"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create topic","tags":["Topics"]}},"/v1/topics-partitions":{"patch":{"description":"Add partitions to existing topics. Depending on the partitioning strategy used, this may impact ordering guarantees.","operationId":"TopicService_AddPartitionsToTopics","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddPartitionsToTopicsRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddPartitionsToTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Add topic partitions","tags":["Topics"]},"put":{"description":"Set partition counts for existing topics. New value must be equal to or larger than the current count of partitions in the topic. All topics will have the same final count of partitions. Depending on the partitioning strategy used, this may impact ordering guarantees.","operationId":"TopicService_SetPartitionsToTopics","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetPartitionsToTopicsRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetPartitionsToTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Set topic partitions","tags":["Topics"]}},"/v1/topics/{topic_name}":{"delete":{"description":"Delete the Kafka topic with the requested name.","operationId":"TopicService_DeleteTopic","parameters":[{"description":"Topic name.","in":"path","name":"topic_name","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Topic deleted successfully"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Requested topic does not exist"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete topic","tags":["Topics"]}},"/v1/topics/{topic_name}/configurations":{"get":{"description":"Get key-value configs for a topic.","operationId":"TopicService_GetTopicConfigurations","parameters":[{"description":"Topic name","in":"path","name":"topic_name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTopicConfigurationsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get topic configurations","tags":["Topics"]},"patch":{"description":"Update a subset of the topic configurations.","operationId":"TopicService_UpdateTopicConfigurations","parameters":[{"description":"Topic name","in":"path","name":"topic_name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/UpdateConfiguration"},"type":"array"}}},"required":true,"x-originalParamName":"configurations"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTopicConfigurationsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update topic configuration","tags":["Topics"]},"put":{"description":"Update the entire set of key-value configurations for a topic. Config entries that are not provided in the request are removed and will fall back to their default values.","operationId":"TopicService_SetTopicConfigurations","parameters":[{"description":"Name of topic.","in":"path","name":"topic_name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/SetConfiguration"},"type":"array"}}},"required":true,"x-originalParamName":"configurations"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetTopicConfigurationsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Set topic configurations","tags":["Topics"]}},"/v1/topics/{topic_name}/partitions":{"patch":{"description":"Add partitions to an existing topic. Depending on the partitioning strategy used, this may impact ordering guarantees.","operationId":"TopicService_AddTopicPartitions","parameters":[{"description":"The topic name.","in":"path","name":"topic_name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddTopicPartitionsBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddTopicPartitionsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Add topic partitions","tags":["Topics"]},"put":{"description":"Set partitions to an existing topic. New value must be equal to or larger than the current count of partitions in the topic. Depending on the partitioning strategy used, this may impact ordering guarantees.","operationId":"TopicService_SetTopicPartitions","parameters":[{"description":"The topic name.","in":"path","name":"topic_name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetTopicPartitionsBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetTopicPartitionsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Set topic partitions","tags":["Topics"]}},"/v1/transforms":{"get":{"description":"Retrieve a list of Wasm transforms. Optional: filter based on transform name.","operationId":"TransformService_ListTransforms","parameters":[{"description":"Substring match on transform name. Case-sensitive.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"example":{"next_page_token":"","transforms":[{"environment_variables":[],"input_topic_name":"topic1","name":"transform1","output_topic_names":["output-topic11","output-topic12"],"statuses":[{"broker_id":1,"lag":1,"partition_id":1,"status":"PARTITION_STATUS_RUNNING"}]},{"environment_variables":[],"input_topic_name":"topic2","name":"transform2","output_topic_names":["output-topic21","output-topic22"],"statuses":[{"broker_id":2,"lag":2,"partition_id":2,"status":"PARTITION_STATUS_RUNNING"}]}]},"schema":{"$ref":"#/components/schemas/ListTransformsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List transforms","tags":["Wasm Transforms"]},"put":{"description":"Initiate deployment of a new Wasm transform. This endpoint uses multipart/form-data encoding. Following deployment, a brief period is required before the Wasm transform becomes operational. Monitor the partition statuses to check whether the transform is active. This usually takes around 3s, but no longer than 10s.","operationId":"TransformService_DeployTransform","requestBody":{"content":{"multipart/form-data":{"schema":{"example":"{\"name\":\"redact-orders\",\"input_topic_name\":\"orders\",\"output_topic_names\":[\"orders-redacted\"],\"environment_variables\":[{\"key\":\"LOGGER_LEVEL\",\"value\":\"DEBUG\"}]}","properties":{"metadata":{"$ref":"#/components/schemas/DeployTransformRequest"},"wasm_binary":{"description":"Binary file containing the compiled WASM transform. The maximum size for this file is 10MiB.","format":"binary","type":"string"}},"type":"object"}}},"description":"Transform metadata as well as the WASM binary","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransformMetadata"}}},"description":"Created"}},"summary":"Deploy Transform","tags":["Wasm Transforms"]}},"/v1/transforms/{name}":{"delete":{"description":"Delete a Wasm transform with the requested name.","operationId":"TransformService_DeleteTransform","parameters":[{"description":"Name of transform.","example":{"name":"transform1"},"in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"example":{},"schema":{}}},"description":"Transform deleted successfully"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete transform","tags":["Wasm Transforms"]},"get":{"description":"Get a specific Wasm transform.","operationId":"TransformService_GetTransform","parameters":[{"description":"Name of transform.","example":{"name":"transform1"},"in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"example":{"transform":{"environment_variables":[],"input_topic_name":"topic1","name":"transform1","output_topic_names":["output-topic1","output-topic2"],"statuses":[{"broker_id":1,"lag":1,"partition_id":1,"status":"PARTITION_STATUS_RUNNING"}]}},"schema":{"$ref":"#/components/schemas/GetTransformResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get transform","tags":["Wasm Transforms"]}},"/v1/users":{"get":{"description":"List users. Optional: filter based on username.","operationId":"UserService_ListUsers","parameters":[{"description":"Username.","in":"query","name":"filter.name","schema":{"type":"string"}},{"description":"Substring match on username. Case-sensitive.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"example":{"next_page_token":"","users":[{"name":"payment-service"},{"name":"jane"}]},"schema":{"$ref":"#/components/schemas/ListUsersResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List users","tags":["Redpanda Users"]},"post":{"description":"Create a new user.","operationId":"UserService_CreateUser","requestBody":{"content":{"application/json":{"example":{"mechanism":"SASL_MECHANISM_SCRAM_SHA_256","name":"payment-service","password":"secure-password"},"schema":{"$ref":"#/components/schemas/CreateUserRequest.User"}}},"required":true,"x-originalParamName":"user"},"responses":{"201":{"content":{"application/json":{"example":{"user":{"mechanism":"SASL_MECHANISM_SCRAM_SHA_256","name":"payment-service"}},"schema":{"$ref":"#/components/schemas/CreateUserRequest.User"}}},"description":"User created"},"400":{"content":{"application/json":{"example":{"code":"INVALID_ARGUMENT","details":[{"@type":"type.googleapis.com/google.rpc.ErrorInfo","domain":"redpanda.com/dataplane","metadata":{},"reason":"REASON_INVALID_INPUT"},{"@type":"type.googleapis.com/google.rpc.BadRequest","field_violations":[{"description":"value length must be at least 3 characters","field":"user.password","localized_message":null,"reason":""},{"description":"value is required","field":"user.mechanism","localized_message":null,"reason":""}]}],"message":"provided parameters are invalid"},"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Bad request. Check API documentation and update request."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create user","tags":["Redpanda Users"]}},"/v1/users/{name}":{"delete":{"description":"Delete the specified user","operationId":"UserService_DeleteUser","parameters":[{"description":"Username","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"example":{},"schema":{}}},"description":"User deleted successfully"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"example":{"code":"NOT_FOUND","details":[{"@type":"type.googleapis.com/google.rpc.ErrorInfo","domain":"redpanda.com/dataplane","metadata":{},"reason":"REASON_RESOURCE_NOT_FOUND"}],"message":"user not found"},"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete user","tags":["Redpanda Users"]}},"/v1/users/{user.name}":{"put":{"description":"Update a user's credentials.","operationId":"UserService_UpdateUser","parameters":[{"description":"Username.","in":"path","name":"user.name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"example":{"user":{"mechanism":"SASL_MECHANISM_SCRAM_SHA_256","password":"new-password"}},"schema":{"properties":{"mechanism":{"$ref":"#/components/schemas/SASLMechanism"},"password":{"description":"Password.","type":"string"}},"type":"object"}}},"required":true,"x-originalParamName":"user"},"responses":{"200":{"content":{"application/json":{"example":{"user":{"mechanism":"SASL_MECHANISM_SCRAM_SHA_256","name":"payment-service"}},"schema":{"$ref":"#/components/schemas/UpdateUserResponse.User"}}},"description":"OK"},"400":{"content":{"application/json":{"example":{"code":"INVALID_ARGUMENT","details":[{"@type":"type.googleapis.com/google.rpc.ErrorInfo","domain":"redpanda.com/dataplane","metadata":{},"reason":"REASON_INVALID_INPUT"},{"@type":"type.googleapis.com/google.rpc.BadRequest","field_violations":[{"description":"value length must be at least 3 characters","field":"user.password","localized_message":null,"reason":""},{"description":"value is required","field":"user.mechanism","localized_message":null,"reason":""}]}],"message":"provided parameters are invalid"},"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Bad request. Check API documentation and update request."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update user","tags":["Redpanda Users"]}}},"security":[{"auth0":[]}],"servers":[{"description":"Data Plane API","url":"{dataplane_api_url}","variables":{"dataplane_api_url":{"default":"https://{dataplane_api_url}","description":"Find the Data Plane API base URL of a cluster by calling the Get Cluster endpoint of the Control Plane API. The dataplane_api.url field is returned in the response body.\u003cbr\u003e\u003cbr\u003e\n\t\t\t\t\tExample (Dedicated): \"https://api-a4cb21.ck09mi9c4vs17hng9gig.fmc.prd.cloud.redpanda.com\"\u003cbr\u003e\n\t\t\t\t\tExample (BYOC): \"https://api-a4cb21.ck09mi9c4vs17hng9gig.byoc.prd.cloud.redpanda.com\""}}}],"tags":[{"description":"Manage Redpanda access control lists (ACLs). See [Redpanda Cloud Authorization](https://docs.redpanda.com/redpanda-cloud/security/authorization/cloud-authorization/) for more information.","name":"Redpanda ACLs"},{"description":"Manage Redpanda topics stored in object storage. See: [Mountable Topics](https://docs.redpanda.com/redpanda-cloud/manage/mountable-topics/)","name":"Cloud Storage"},{"description":"Manage Wasm transforms in Redpanda.","name":"Wasm Transforms"},{"description":"Manage [connectors](https://docs.redpanda.com/redpanda-cloud/develop/managed-connectors/) and interact with the Kafka Connect API.","name":"Kafka Connect"},{"description":"Create and manage [Redpanda Connect](https://docs.redpanda.com/redpanda-cloud/develop/connect/about) pipelines and their configurations.","name":"Redpanda Connect Pipelines"},{"description":"Create and manage MCP servers and their configurations.","name":"Remote MCP"},{"description":"Monitoring operations for Redpanda.","name":"Monitoring"},{"description":"Manage client throughput limits. See [Redpanda Client Throughput Limits](https://docs.redpanda.com/current/manage/cluster-maintenance/manage-throughput/#client-throughput-limits) for more information.","name":"Quotas"},{"description":"Manage [secrets](https://docs.redpanda.com/redpanda-cloud/security/secrets) for Redpanda Cloud.","name":"Secrets"},{"description":"Manage Redpanda roles.","name":"Security"},{"description":"Data plane operations for Redpanda shadow links.","name":"Shadow Links (Data Plane)"},{"description":"Manage Redpanda topics.","name":"Topics"},{"description":"Manage Redpanda users. For more information, see [Role-Based Access Control](https://docs.redpanda.com/redpanda-cloud/security/authorization/rbac/).","name":"Redpanda Users"}]} \ No newline at end of file +{"components":{"schemas":{"ACL.Operation":{"description":"The operation that is allowed or denied (e.g. READ).","enum":["OPERATION_ANY","OPERATION_ALL","OPERATION_READ","OPERATION_WRITE","OPERATION_CREATE","OPERATION_DELETE","OPERATION_ALTER","OPERATION_DESCRIBE","OPERATION_CLUSTER_ACTION","OPERATION_DESCRIBE_CONFIGS","OPERATION_ALTER_CONFIGS","OPERATION_IDEMPOTENT_WRITE","OPERATION_CREATE_TOKENS","OPERATION_DESCRIBE_TOKENS"],"type":"string"},"ACLAccessFilter":{"properties":{"host":{"title":"The host to match. If not set, will default to match all hosts\nwith the specified `operation` and `permission_type`. Note that\nthe asterisk `*` is literal and matches hosts that are set to `*`","type":"string"},"operation":{"$ref":"#/components/schemas/ACLOperation"},"permission_type":{"$ref":"#/components/schemas/ACLPermissionType"},"principal":{"title":"The name of the principal, if not set will default to match\nall principals with the specified `operation` and `permission_type`","type":"string"}},"title":"Filter an ACL based on its access","type":"object"},"ACLFilter":{"properties":{"access_filter":{"$ref":"#/components/schemas/ACLAccessFilter"},"resource_filter":{"$ref":"#/components/schemas/ACLResourceFilter"}},"title":"A filter for ACLs","type":"object"},"ACLOperation":{"enum":["ACL_OPERATION_ANY","ACL_OPERATION_READ","ACL_OPERATION_WRITE","ACL_OPERATION_CREATE","ACL_OPERATION_REMOVE","ACL_OPERATION_ALTER","ACL_OPERATION_DESCRIBE","ACL_OPERATION_CLUSTER_ACTION","ACL_OPERATION_DESCRIBE_CONFIGS","ACL_OPERATION_ALTER_CONFIGS","ACL_OPERATION_IDEMPOTENT_WRITE"],"title":"The ACL operation to match","type":"string"},"ACLPattern":{"description":"- ACL_PATTERN_ANY: Wildcard to match any pattern\n - ACL_PATTERN_LITERAL: Match a literal string\n - ACL_PATTERN_PREFIXED: Match a prefix\n - ACL_PATTERN_MATCH: Match serves as a catch-all for all the names of a topic\nthe principal is authorized to access","enum":["ACL_PATTERN_ANY","ACL_PATTERN_LITERAL","ACL_PATTERN_PREFIXED","ACL_PATTERN_MATCH"],"title":"The ACL pattern type","type":"string"},"ACLPermissionType":{"enum":["ACL_PERMISSION_TYPE_ANY","ACL_PERMISSION_TYPE_ALLOW","ACL_PERMISSION_TYPE_DENY"],"title":"ACL permission types","type":"string"},"ACLResource":{"description":"- ACL_RESOURCE_ANY: Wildcard for selecting any ACL resource\n - ACL_RESOURCE_CLUSTER: Cluster wide resource\n - ACL_RESOURCE_GROUP: Consumer group resource\n - ACL_RESOURCE_TOPIC: Topic resource\n - ACL_RESOURCE_TXN_ID: Transaction ID resource\n - ACL_RESOURCE_SR_SUBJECT: Schema Registry subject resource\n - ACL_RESOURCE_SR_REGISTRY: Schema Registry wide resource\n - ACL_RESOURCE_SR_ANY: Wildcard to match any SR ACL resource","enum":["ACL_RESOURCE_ANY","ACL_RESOURCE_CLUSTER","ACL_RESOURCE_GROUP","ACL_RESOURCE_TOPIC","ACL_RESOURCE_TXN_ID","ACL_RESOURCE_SR_SUBJECT","ACL_RESOURCE_SR_REGISTRY","ACL_RESOURCE_SR_ANY"],"title":"The ACL resource types","type":"string"},"ACLResourceFilter":{"properties":{"name":{"title":"Name, if not given will default to match all items in `resource_type`.\nNote that asterisk `*` is literal and matches resource ACLs\nthat are named `*`","type":"string"},"pattern_type":{"$ref":"#/components/schemas/ACLPattern"},"resource_type":{"$ref":"#/components/schemas/ACLResource"}},"title":"A filter to match ACLs for resources","type":"object"},"Action":{"enum":["ACTION_PREPARE","ACTION_EXECUTE","ACTION_FINISH","ACTION_CANCEL"],"type":"string"},"AddPartitionsToTopicsRequest":{"properties":{"partition_count":{"description":"The number of partitions to add for the topics.","format":"int32","type":"integer"},"topic_names":{"description":"The topic names.","items":{"type":"string"},"type":"array"},"validate_only":{"description":"Validate the request only, do not execute it.","type":"boolean"}},"type":"object"},"AddPartitionsToTopicsResponse":{"properties":{"statuses":{"description":"The status of the operation for each topic.","items":{"$ref":"#/components/schemas/AlterTopicPartitionStatus"},"type":"array"}},"type":"object"},"AddTopicPartitionsBody":{"properties":{"partition_count":{"description":"The number of partitions to add to the topic.","format":"int32","type":"integer"},"validate_only":{"description":"Validate the request only, do not execute it.","type":"boolean"}},"type":"object"},"AddTopicPartitionsResponse":{"type":"object"},"AlterTopicPartitionStatus":{"properties":{"error":{"description":"The error if any.","type":"string"},"success":{"description":"Whether the operation was successful.","type":"boolean"},"topic_name":{"description":"The topic name.","type":"string"}},"type":"object"},"AnnotatedOption":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"title":"AnnotatedOption represents an annotated option","type":"object"},"AuthenticationConfiguration":{"properties":{"plain_configuration":{"$ref":"#/components/schemas/PlainConfig"},"scram_configuration":{"$ref":"#/components/schemas/ScramConfig"}},"title":"Authentication config. Supports:\n* SASL/SCRAM\n* SASL/PLAIN","type":"object"},"AuthenticationInfo":{"properties":{"mechanism":{"$ref":"#/components/schemas/AuthenticationMechanism"},"state":{"$ref":"#/components/schemas/AuthenticationState"},"user_principal":{"title":"Authenticated user principal","type":"string"}},"title":"Other Messages","type":"object"},"AuthenticationMechanism":{"enum":["AUTHENTICATION_MECHANISM_MTLS","AUTHENTICATION_MECHANISM_SASL_SCRAM","AUTHENTICATION_MECHANISM_SASL_OAUTHBEARER","AUTHENTICATION_MECHANISM_SASL_PLAIN","AUTHENTICATION_MECHANISM_SASL_GSSAPI"],"title":"- AUTHENTICATION_MECHANISM_MTLS: Mutual TLS using client certificates\n - AUTHENTICATION_MECHANISM_SASL_SCRAM: SASL SCRAM\n - AUTHENTICATION_MECHANISM_SASL_OAUTHBEARER: SASL OAUTHBEARER (OAuth 2.0 / OpenID Connect)\n - AUTHENTICATION_MECHANISM_SASL_PLAIN: SASL PLAIN (username/password in plaintext)\n - AUTHENTICATION_MECHANISM_SASL_GSSAPI: SASL GSSAPI (Kerberos)","type":"string"},"AuthenticationState":{"enum":["AUTHENTICATION_STATE_UNAUTHENTICATED","AUTHENTICATION_STATE_SUCCESS","AUTHENTICATION_STATE_FAILURE"],"type":"string"},"BadRequest":{"description":"Describes violations in a client request. This error type focuses on the\nsyntactic aspects of the request.","properties":{"field_violations":{"description":"Describes all violations in a client request.","items":{"$ref":"#/components/schemas/FieldViolation"},"type":"array"}},"title":"BadRequest","type":"object"},"BatchDeleteQuotaRequest":{"properties":{"deletions":{"items":{"$ref":"#/components/schemas/QuotaDeletion"},"type":"array"}},"type":"object"},"BatchDeleteQuotaResponse":{"properties":{"failed_entities":{"items":{"$ref":"#/components/schemas/FailedEntity"},"type":"array"},"successful_entities":{"items":{"$ref":"#/components/schemas/SuccessfulEntity"},"type":"array"}},"type":"object"},"BatchSetQuotaRequest":{"properties":{"settings":{"description":"A list of quota settings to apply. Each setting pairs an entity\nwith the specific values to be set for it.","items":{"$ref":"#/components/schemas/QuotaSetting"},"type":"array"}},"type":"object"},"BatchSetQuotaResponse":{"properties":{"failed_entities":{"items":{"$ref":"#/components/schemas/FailedEntity"},"type":"array"},"successful_entities":{"items":{"$ref":"#/components/schemas/SuccessfulEntity"},"type":"array"}},"type":"object"},"BloblangFunctionSpec":{"description":"BloblangFunctionSpec represents a Bloblang function specification.","properties":{"categories":{"items":{"type":"string"},"type":"array"},"description":{"type":"string"},"examples":{"items":{"type":"string"},"type":"array"},"name":{"type":"string"},"params":{"$ref":"#/components/schemas/ParamSpec"},"status":{"type":"string"},"version":{"type":"string"}},"type":"object"},"BloblangMethodSpec":{"description":"BloblangMethodSpec represents a Bloblang method specification.","properties":{"categories":{"items":{"type":"string"},"type":"array"},"description":{"type":"string"},"examples":{"items":{"type":"string"},"type":"array"},"name":{"type":"string"},"params":{"$ref":"#/components/schemas/ParamSpec"},"status":{"type":"string"},"version":{"type":"string"}},"type":"object"},"ComponentList":{"description":"ComponentList contains the structured component data.","properties":{"bloblang_functions":{"items":{"$ref":"#/components/schemas/BloblangFunctionSpec"},"type":"array"},"bloblang_methods":{"items":{"$ref":"#/components/schemas/BloblangMethodSpec"},"type":"array"},"buffers":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"caches":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"inputs":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"metrics":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"outputs":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"processors":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"rate_limits":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"scanners":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"tracers":{"items":{"$ref":"#/components/schemas/ComponentSpec"},"type":"array"},"version":{"type":"string"}},"type":"object"},"ComponentSpec":{"description":"ComponentSpec represents a component specification.","properties":{"categories":{"items":{"type":"string"},"type":"array"},"config":{"$ref":"#/components/schemas/FieldSpec"},"description":{"type":"string"},"examples":{"items":{"type":"string"},"type":"array"},"footnotes":{"type":"string"},"name":{"type":"string"},"status":{"$ref":"#/components/schemas/ComponentStatus"},"summary":{"type":"string"},"type":{"type":"string"},"version":{"type":"string"}},"type":"object"},"ComponentStatus":{"description":"ComponentStatus represents the stability level of a component.","enum":["COMPONENT_STATUS_STABLE","COMPONENT_STATUS_BETA","COMPONENT_STATUS_EXPERIMENTAL","COMPONENT_STATUS_DEPRECATED"],"type":"string"},"ComponentType":{"description":"Component type for this tool.","enum":["COMPONENT_TYPE_PROCESSOR","COMPONENT_TYPE_CACHE","COMPONENT_TYPE_INPUT","COMPONENT_TYPE_OUTPUT"],"type":"string"},"Config":{"properties":{"name":{"description":"A topic-level config key (e.g. `segment.bytes`).","type":"string"},"value":{"description":"A topic-level config value (e.g. 1073741824).","nullable":true,"type":"string"}},"type":"object"},"ConfigAlterOperation":{"enum":["CONFIG_ALTER_OPERATION_SET","CONFIG_ALTER_OPERATION_DELETE","CONFIG_ALTER_OPERATION_APPEND","CONFIG_ALTER_OPERATION_SUBTRACT"],"type":"string"},"ConfigSource":{"enum":["CONFIG_SOURCE_DYNAMIC_TOPIC_CONFIG","CONFIG_SOURCE_DYNAMIC_BROKER_CONFIG","CONFIG_SOURCE_DYNAMIC_DEFAULT_BROKER_CONFIG","CONFIG_SOURCE_STATIC_BROKER_CONFIG","CONFIG_SOURCE_DEFAULT_CONFIG","CONFIG_SOURCE_DYNAMIC_BROKER_LOGGER_CONFIG"],"type":"string"},"ConfigSynonym":{"properties":{"name":{"type":"string"},"source":{"$ref":"#/components/schemas/ConfigSource"},"value":{"nullable":true,"type":"string"}},"type":"object"},"ConfigType":{"enum":["CONFIG_TYPE_BOOLEAN","CONFIG_TYPE_STRING","CONFIG_TYPE_INT","CONFIG_TYPE_SHORT","CONFIG_TYPE_LONG","CONFIG_TYPE_DOUBLE","CONFIG_TYPE_LIST","CONFIG_TYPE_CLASS","CONFIG_TYPE_PASSWORD"],"type":"string"},"Configuration":{"properties":{"config_synonyms":{"description":"If no config value is set at the topic level, it will inherit the value\nset at the broker or cluster level. `name` is the corresponding config\nkey whose value is inherited. `source` indicates whether the inherited\nconfig is default, broker, etc.","items":{"$ref":"#/components/schemas/ConfigSynonym"},"type":"array"},"documentation":{"description":"Config documentation.","nullable":true,"type":"string"},"name":{"description":"A topic-level config key (e.g. `segment.bytes`).","type":"string"},"read_only":{"description":"Whether the config is read-only, or is dynamic and can be altered.","type":"boolean"},"sensitive":{"description":"Whether this is a sensitive config key and value.","type":"boolean"},"source":{"$ref":"#/components/schemas/ConfigSource"},"type":{"$ref":"#/components/schemas/ConfigType"},"value":{"description":"A topic-level config value (e.g. 1073741824).","nullable":true,"type":"string"}},"type":"object"},"ConfigurationYAMLSchema":{"properties":{"component_type":{"$ref":"#/components/schemas/ComponentType"},"config_schema":{"description":"JSON schema of the configuration components that are allowed for MCP servers.","type":"string"}},"type":"object"},"ConnectCluster":{"properties":{"address":{"description":"The host address of the Kafka Connect cluster.","type":"string"},"info":{"$ref":"#/components/schemas/ConnectCluster.Info"},"name":{"description":"Unique name of connect cluster. For Redpanda Cloud, the value is `redpanda`.","type":"string"},"plugins":{"items":{"$ref":"#/components/schemas/ConnectorPlugin"},"type":"array"}},"type":"object"},"ConnectCluster.Info":{"properties":{"commit":{"description":"The git commit ID of the connect worker source code.","type":"string"},"kafka_cluster_id":{"description":"Cluster ID.","type":"string"},"version":{"description":"Connect worker version.","type":"string"}},"type":"object"},"Connector":{"properties":{"state":{"description":"State of the connector instance.","type":"string"},"trace":{"description":"String value of stack trace.","type":"string"},"worker_id":{"description":"ID of worker that the connector is assigned to.","type":"string"}},"type":"object"},"ConnectorError":{"properties":{"content":{"description":"Detailed description of the error.","type":"string"},"title":{"description":"Short description of the error.","type":"string"},"type":{"$ref":"#/components/schemas/ConnectorError.Type"}},"title":"ConnectorError is the error of a connector, this is holistic error\nabstraction, made parsing the error trace of connector or Task","type":"object"},"ConnectorError.Type":{"description":"Error level.","enum":["TYPE_ERROR","TYPE_WARNING"],"type":"string"},"ConnectorHolisticState":{"description":"State of a connector or one of its tasks, as described in the [Kafka Connect documentation](https://kafka.apache.org/documentation.html#connect_administration). Takes into account not just the state of the connector instance itself, but also the tasks within the connector.\n\n - CONNECTOR_HOLISTIC_STATE_PAUSED: The connector or task has been administratively paused.\n - CONNECTOR_HOLISTIC_STATE_RESTARTING: The connector or task is restarting.\n - CONNECTOR_HOLISTIC_STATE_DESTROYED: The connector is destroyed, regardless of any tasks.\n - CONNECTOR_HOLISTIC_STATE_STOPPED: The connector or task has been stopped.\n - CONNECTOR_HOLISTIC_STATE_UNASSIGNED: - The connector or task has not yet been assigned to a worker,\n- THe connector is running, but there are unassigned tasks.\n - CONNECTOR_HOLISTIC_STATE_HEALTHY: The connector is running, \u003e 0 tasks, all of them in running state.\n - CONNECTOR_HOLISTIC_STATE_UNHEALTHY: - The connector has failed,\n- The connector is running, but has no tasks,\n- Connector is running and has tasks, but all tasks have failed.\n - CONNECTOR_HOLISTIC_STATE_DEGRADED: The connector is running and has tasks, and at least one task, but not all, have failed.\n - CONNECTOR_HOLISTIC_STATE_UNKNOWN: The connector or task state could not be determined.","enum":["CONNECTOR_HOLISTIC_STATE_PAUSED","CONNECTOR_HOLISTIC_STATE_RESTARTING","CONNECTOR_HOLISTIC_STATE_DESTROYED","CONNECTOR_HOLISTIC_STATE_STOPPED","CONNECTOR_HOLISTIC_STATE_UNASSIGNED","CONNECTOR_HOLISTIC_STATE_HEALTHY","CONNECTOR_HOLISTIC_STATE_UNHEALTHY","CONNECTOR_HOLISTIC_STATE_DEGRADED","CONNECTOR_HOLISTIC_STATE_UNKNOWN"],"type":"string"},"ConnectorInfoStatus":{"properties":{"info":{"$ref":"#/components/schemas/ConnectorSpec"},"name":{"description":"Name of connector.","type":"string"},"status":{"$ref":"#/components/schemas/ConnectorStatus"}},"type":"object"},"ConnectorPlugin":{"properties":{"class":{"type":"string"},"type":{"type":"string"},"version":{"type":"string"}},"type":"object"},"ConnectorSpec":{"description":"Connector specifications as defined in the Kafka Connect\nAPI. You may include this in the request body when creating a new connector.","properties":{"config":{"additionalProperties":{"type":"string"},"description":"Connector configuration properties.","type":"object"},"name":{"description":"Name of connector.","type":"string"},"tasks":{"items":{"$ref":"#/components/schemas/TaskInfo"},"readOnly":true,"type":"array"},"type":{"readOnly":true,"type":"string"}},"required":["name","config"],"type":"object"},"ConnectorStatus":{"properties":{"connector":{"$ref":"#/components/schemas/Connector"},"errors":{"description":"List of parsed connectors' and tasks' errors.","items":{"$ref":"#/components/schemas/ConnectorError"},"type":"array"},"holistic_state":{"$ref":"#/components/schemas/ConnectorHolisticState"},"name":{"description":"Name of connector.","type":"string"},"tasks":{"description":"Status of connector tasks. For more information, see the [https://docs.redpanda.com/current/deploy/deployment-option/cloud/managed-connectors/monitor-connectors/#connector-tasks](Monitor Connectors) documentation.","items":{"$ref":"#/components/schemas/TaskStatus"},"type":"array"},"type":{"description":"Type of connector (sink or source).","type":"string"}},"type":"object"},"ConsumerOffsetSyncOptions":{"properties":{"effective_interval":{"readOnly":true,"title":"The effective interval for the task","type":"string"},"group_filters":{"items":{"$ref":"#/components/schemas/NameFilter"},"title":"The filters","type":"array"},"interval":{"title":"Sync interval\nIf 0 provided, defaults to 30 seconds","type":"string"},"paused":{"title":"Allows user to pause the consumer offset sync task. If paused, then\nthe task will enter the 'paused' state and not sync consumer offsets from\nthe source cluster","type":"boolean"}},"title":"Options for syncing consumer offsets","type":"object"},"CreateACLRequest":{"properties":{"host":{"description":"The host address to use for this ACL. To allow a principal\naccess from multiple hosts, you must create an ACL for each host.","type":"string"},"operation":{"$ref":"#/components/schemas/ACL.Operation"},"permission_type":{"$ref":"#/components/schemas/PermissionType"},"principal":{"description":"The user for whom this ACL applies. With the Kafka simple\nauthorizer, you must include the prefix \"User:\" with the user name.","type":"string"},"resource_name":{"description":"The name of the resource this ACL targets.\nFor requests with resource_type CLUSTER, this will default to \"kafka-cluster\".","type":"string"},"resource_pattern_type":{"$ref":"#/components/schemas/ResourcePatternType"},"resource_type":{"$ref":"#/components/schemas/ResourceType"}},"required":["resource_type","resource_pattern_type","principal","host","operation","permission_type"],"type":"object"},"CreateACLResponse":{"type":"object"},"CreateConnectorResponse":{"properties":{"connector":{"$ref":"#/components/schemas/ConnectorSpec"}},"type":"object"},"CreateKafkaConnectSecretBody":{"description":"CreateKafkaConnectSecretRequest is the request of CreateKafkaConnectSecret.","properties":{"labels":{"additionalProperties":{"type":"string"},"description":"Secret labels.","type":"object"},"name":{"description":"Name of connector.","type":"string"},"secret_data":{"description":"The secret data. Must be Base64-encoded.","format":"byte","type":"string"}},"required":["name","secret_data"],"type":"object"},"CreateKafkaConnectSecretResponse":{"description":"CreateKafkaConnectSecretResponse is the response of CreateKafkaConnectSecret.","properties":{"secret":{"$ref":"#/components/schemas/Secret"}},"type":"object"},"CreateMCPServerResponse":{"properties":{"mcp_server":{"$ref":"#/components/schemas/MCPServer"}},"type":"object"},"CreatePipelineResponse":{"properties":{"pipeline":{"$ref":"#/components/schemas/Pipeline"}},"type":"object"},"CreateRoleResponse":{"description":"CreateRoleResponse is the response for CreateRole.","properties":{"role":{"$ref":"#/components/schemas/Role"}},"type":"object"},"CreateSecretRequest":{"description":"CreateSecretRequest is the request of CreateSecret.","properties":{"id":{"description":"Secret identifier.","type":"string"},"labels":{"additionalProperties":{"type":"string"},"description":"Secret labels.","type":"object"},"scopes":{"items":{"$ref":"#/components/schemas/Scope"},"title":"Secret scopes","type":"array"},"secret_data":{"description":"The secret data. Must be Base64-encoded.","format":"byte","type":"string"}},"required":["secret_data"],"type":"object"},"CreateSecretResponse":{"description":"CreateSecretResponse is the response of CreateSecret.","properties":{"secret":{"$ref":"#/components/schemas/Secret"}},"type":"object"},"CreateTopicRequest.Topic":{"properties":{"configs":{"description":"An array of key-value config pairs for a topic.\nThese correspond to Kafka topic-level configs.","items":{"$ref":"#/components/schemas/Config"},"type":"array"},"name":{"description":"Name of topic.","type":"string"},"partition_count":{"description":"The number of partitions to give the topic. If specifying\npartitions manually (see `replica_assignments`), set to -1.\nOr, to use the cluster default partition count, set to null.","format":"int32","nullable":true,"type":"integer"},"replica_assignments":{"description":"Manually specify broker ID assignments for partition replicas. If manually assigning replicas, both `replication_factor` and\n`partition_count` must be -1.","items":{"$ref":"#/components/schemas/ReplicaAssignment"},"type":"array"},"replication_factor":{"description":"The number of replicas every partition must have.\nIf specifying partitions manually (see `replica_assignments`), set to -1.\nOr, to use the cluster default replication factor, set to null.","format":"int32","nullable":true,"type":"integer"}},"type":"object"},"CreateTopicResponse":{"properties":{"partition_count":{"description":"The number of partitions created for the topic.\nThis field has a default value of -1, which may be returned if the broker\ndoes not support v5+ of this request which added support for returning\nthis information.","format":"int32","type":"integer"},"replication_factor":{"description":"The number of replicas per topic partition.\nThis field has a default of -1, which may be returned if the broker\ndoes not support v5+ of this request which added support for returning\nthis information.","format":"int32","type":"integer"},"topic_name":{"description":"Name of topic.","type":"string"}},"type":"object"},"CreateUserRequest.User":{"properties":{"mechanism":{"$ref":"#/components/schemas/SASLMechanism"},"name":{"description":"Username.","type":"string"},"password":{"description":"Password.","type":"string"}},"type":"object"},"CreateUserResponse":{"properties":{"user":{"$ref":"#/components/schemas/CreateUserResponse.User"}},"type":"object"},"CreateUserResponse.User":{"properties":{"mechanism":{"$ref":"#/components/schemas/SASLMechanism"},"name":{"title":"Name of newly-created user","type":"string"}},"type":"object"},"DeleteACLsRequest.Filter":{"properties":{"host":{"description":"The host address to use for this ACL. To allow a principal\naccess from multiple hosts, you must create an ACL for each host.","nullable":true,"type":"string"},"operation":{"$ref":"#/components/schemas/ACL.Operation"},"permission_type":{"$ref":"#/components/schemas/PermissionType"},"principal":{"description":"The user for whom this ACL applies. With the Kafka simple\nauthorizer, you must include the prefix \"User:\" with the user name.","nullable":true,"type":"string"},"resource_name":{"description":"The name of the resource this ACL targets.","nullable":true,"type":"string"},"resource_pattern_type":{"$ref":"#/components/schemas/ResourcePatternType"},"resource_type":{"$ref":"#/components/schemas/ResourceType"}},"required":["resource_type","resource_pattern_type","operation","permission_type"],"type":"object"},"DeleteACLsResponse":{"properties":{"matching_acls":{"items":{"$ref":"#/components/schemas/MatchingACL"},"type":"array"}},"type":"object"},"DeleteKafkaConnectSecretResponse":{"description":"DeleteKafkaConnectSecretResponse is the response of DeleteKafkaConnectSecret.","type":"object"},"DeleteMCPServerResponse":{"type":"object"},"DeleteMountTaskResponse":{"type":"object"},"DeletePipelineResponse":{"type":"object"},"DeleteQuotaRequest":{"properties":{"entity":{"$ref":"#/components/schemas/RequestQuotaEntity"},"value_type":{"$ref":"#/components/schemas/ValueType"}},"type":"object"},"DeleteQuotaResponse":{"type":"object"},"DeleteRoleResponse":{"description":"DeleteRoleResponse is the response for DeleteRole.","type":"object"},"DeleteSecretResponse":{"description":"DeleteSecretResponse is the response of DeleteSecret.","type":"object"},"DeleteTopicResponse":{"type":"object"},"DeleteTransformResponse":{"type":"object"},"DeleteUserResponse":{"type":"object"},"DeployTransformRequest":{"description":"Metadata required to deploy a new Wasm\ntransform in a Redpanda cluster.","properties":{"environment_variables":{"description":"The environment variables you want to apply to your transform's environment","items":{"$ref":"#/components/schemas/EnvironmentVariable"},"type":"array"},"input_topic_name":{"description":"The input topic to apply the transform to.","example":"orders","type":"string"},"name":{"description":"Name of the transform.","example":"redact-payment-details-in-orders","type":"string"},"output_topic_names":{"description":"Output topic to write the transform results to.","example":"orders-redacted","items":{"type":"string"},"type":"array"}},"required":["name","input_topic_name","output_topic_names"],"type":"object"},"EarliestOffset":{"description":"Start at the earliest offset in the partition.","type":"object"},"Entity":{"properties":{"entity_name":{"type":"string"},"entity_type":{"$ref":"#/components/schemas/EntityType"}},"type":"object"},"EntityType":{"description":"The type of entity that the quota applies to.\n\n - ENTITY_TYPE_USER: Not supported in Redpanda\n - ENTITY_TYPE_IP: Not supported in Redpanda","enum":["ENTITY_TYPE_CLIENT_ID","ENTITY_TYPE_CLIENT_ID_PREFIX","ENTITY_TYPE_USER","ENTITY_TYPE_IP"],"type":"string"},"EnvironmentVariable":{"properties":{"key":{"description":"The key of your environment variable.","example":"LOG_LEVEL","type":"string"},"value":{"description":"The value of your environment variable.","example":"DEBUG","type":"string"}},"required":["key","value"],"type":"object"},"ErrorInfo":{"description":"Describes the cause of the error with structured details.\n\nExample of an error when contacting the \"pubsub.googleapis.com\" API when it\nis not enabled:\n\n { \"reason\": \"API_DISABLED\"\n \"domain\": \"googleapis.com\"\n \"metadata\": {\n \"resource\": \"projects/123\",\n \"service\": \"pubsub.googleapis.com\"\n }\n }\n\nThis response indicates that the pubsub.googleapis.com API is not enabled.\n\nExample of an error that is returned when attempting to create a Spanner\ninstance in a region that is out of stock:\n\n { \"reason\": \"STOCKOUT\"\n \"domain\": \"spanner.googleapis.com\",\n \"metadata\": {\n \"availableRegions\": \"us-central1,us-east2\"\n }\n }","properties":{"domain":{"description":"The logical grouping to which the \"reason\" belongs. The error domain\nis typically the registered service name of the tool or product that\ngenerates the error. Example: \"pubsub.googleapis.com\". If the error is\ngenerated by some common infrastructure, the error domain must be a\nglobally unique value that identifies the infrastructure. For Google API\ninfrastructure, the error domain is \"googleapis.com\".","type":"string"},"metadata":{"additionalProperties":{"type":"string"},"description":"Additional structured details about this error.\n\nKeys must match a regular expression of `[a-z][a-zA-Z0-9-_]+` but should\nideally be lowerCamelCase. Also, they must be limited to 64 characters in\nlength. When identifying the current value of an exceeded limit, the units\nshould be contained in the key, not the value. For example, rather than\n`{\"instanceLimit\": \"100/request\"}`, should be returned as,\n`{\"instanceLimitPerRequest\": \"100\"}`, if the client exceeds the number of\ninstances that can be created in a single (batch) request.","type":"object"},"reason":{"description":"The reason of the error. This is a constant value that identifies the\nproximate cause of the error. Error reasons are unique within a particular\ndomain of errors. This should be at most 63 characters and match a\nregular expression of `[A-Z][A-Z0-9_]+[A-Z0-9]`, which represents\nUPPER_SNAKE_CASE.","type":"string"}},"title":"ErrorInfo","type":"object"},"FailOverBody":{"properties":{"shadow_topic_name":{"title":"The name of the shadow topic to fail over, if not set will fail over\nthe entire shadow link","type":"string"}},"title":"Request to fail over a shadow link or a single shadow topic","type":"object"},"FailedEntity":{"properties":{"entity_name":{"type":"string"},"entity_type":{"$ref":"#/components/schemas/EntityType"},"error_code":{"format":"int32","type":"integer"},"error_message":{"type":"string"}},"type":"object"},"FieldSpec":{"description":"FieldSpec represents a field specification.","properties":{"advanced":{"type":"boolean"},"annotated_options":{"items":{"$ref":"#/components/schemas/AnnotatedOption"},"type":"array"},"children":{"items":{"$ref":"#/components/schemas/FieldSpec"},"type":"array"},"default_value":{"type":"string"},"deprecated":{"type":"boolean"},"description":{"type":"string"},"examples":{"items":{"type":"string"},"type":"array"},"interpolated":{"items":{"type":"string"},"type":"array"},"kind":{"type":"string"},"name":{"type":"string"},"optional":{"type":"boolean"},"type":{"type":"string"},"version":{"type":"string"}},"type":"object"},"FieldViolation":{"description":"A message type used to describe a single bad request field.","properties":{"description":{"description":"A description of why the request element is bad.","type":"string"},"field":{"description":"A path that leads to a field in the request body. The value will be a\nsequence of dot-separated identifiers that identify a protocol buffer\nfield.\n\nConsider the following:\n\n message CreateContactRequest {\n message EmailAddress {\n enum Type {\n TYPE_UNSPECIFIED = 0;\n HOME = 1;\n WORK = 2;\n }\n\n optional string email = 1;\n repeated EmailType type = 2;\n }\n\n string full_name = 1;\n repeated EmailAddress email_addresses = 2;\n }\n\nIn this example, in proto `field` could take one of the following values:\n\n* `full_name` for a violation in the `full_name` value\n* `email_addresses[1].email` for a violation in the `email` field of the\n first `email_addresses` message\n* `email_addresses[3].type[2]` for a violation in the second `type`\n value in the third `email_addresses` message.\n\nIn JSON, the same values are represented as:\n\n* `fullName` for a violation in the `fullName` value\n* `emailAddresses[1].email` for a violation in the `email` field of the\n first `emailAddresses` message\n* `emailAddresses[3].type[2]` for a violation in the second `type`\n value in the third `emailAddresses` message.","type":"string"},"localized_message":{"$ref":"#/components/schemas/LocalizedMessage"},"reason":{"description":"The reason of the field-level error. This is a constant value that\nidentifies the proximate cause of the field-level error. It should\nuniquely identify the type of the FieldViolation within the scope of the\ngoogle.rpc.ErrorInfo.domain. This should be at most 63\ncharacters and match a regular expression of `[A-Z][A-Z0-9_]+[A-Z0-9]`,\nwhich represents UPPER_SNAKE_CASE.","type":"string"}},"type":"object"},"FilterType":{"description":"- FILTER_TYPE_INCLUDE: Include the items that match the filter\n - FILTER_TYPE_EXCLUDE: Exclude the items that match the filter","enum":["FILTER_TYPE_INCLUDE","FILTER_TYPE_EXCLUDE"],"title":"What type of filter this is, include or exclude","type":"string"},"GetConnectClusterResponse":{"properties":{"cluster":{"$ref":"#/components/schemas/ConnectCluster"}},"type":"object"},"GetConnectorConfigResponse":{"properties":{"config":{"additionalProperties":{"type":"string"},"type":"object"}},"type":"object"},"GetConnectorResponse":{"properties":{"connector":{"$ref":"#/components/schemas/ConnectorSpec"}},"type":"object"},"GetConnectorStatusResponse":{"properties":{"status":{"$ref":"#/components/schemas/ConnectorStatus"}},"type":"object"},"GetKafkaConnectSecretResponse":{"description":"GetKafkaConnectSecretResponse is the response of GetKafkaConnectSecret.","properties":{"secret":{"$ref":"#/components/schemas/Secret"}},"type":"object"},"GetMCPServerResponse":{"properties":{"mcp_server":{"$ref":"#/components/schemas/MCPServer"}},"type":"object"},"GetMCPServerServiceConfigSchemaResponse":{"properties":{"configuration_yamls":{"description":"The configuration schema for the MCP server.","items":{"$ref":"#/components/schemas/ConfigurationYAMLSchema"},"type":"array"}},"type":"object"},"GetMountTaskResponse":{"properties":{"task":{"$ref":"#/components/schemas/MountTask"}},"type":"object"},"GetPipelineResponse":{"properties":{"pipeline":{"$ref":"#/components/schemas/Pipeline"}},"type":"object"},"GetPipelineServiceConfigSchemaResponse":{"properties":{"config_schema":{"description":"JSON schema of the configuration components that are allowed for Connect pipelines.","type":"string"}},"type":"object"},"GetPipelinesBySecretsResponse":{"properties":{"pipelines_for_secret":{"items":{"$ref":"#/components/schemas/PipelinesForSecret"},"type":"array"}},"type":"object"},"GetPipelinesForSecretResponse":{"properties":{"pipelines_for_secret":{"$ref":"#/components/schemas/PipelinesForSecret"}},"type":"object"},"GetRoleResponse":{"description":"GetRoleResponse is the response to GetRole.","properties":{"members":{"description":"Members assigned to the role.","items":{"$ref":"#/components/schemas/RoleMembership"},"type":"array"},"role":{"$ref":"#/components/schemas/Role"}},"type":"object"},"GetSecretResponse":{"description":"GetSecretResponse is the response of GetSecret.","properties":{"secret":{"$ref":"#/components/schemas/Secret"}},"type":"object"},"GetShadowMetricsResponse":{"properties":{"error_topics":{"format":"uint64","type":"string"},"failed_over_topics":{"format":"uint64","type":"string"},"total_topics_replicated":{"format":"uint64","type":"string"}},"type":"object"},"GetTopicConfigurationsResponse":{"properties":{"configurations":{"items":{"$ref":"#/components/schemas/Configuration"},"type":"array"}},"type":"object"},"GetTransformResponse":{"properties":{"transform":{"$ref":"#/components/schemas/TransformMetadata"}},"type":"object"},"Help":{"description":"Provides links to documentation or for performing an out of band action.\n\nFor example, if a quota check failed with an error indicating the calling\nproject hasn't enabled the accessed service, this can contain a URL pointing\ndirectly to the right place in the developer console to flip the bit.","properties":{"links":{"description":"URL(s) pointing to additional information on handling the current error.","items":{"$ref":"#/components/schemas/Link"},"type":"array"}},"title":"Help","type":"object"},"InFlightRequests":{"properties":{"has_more_requests":{"description":"Whether there are more in-flight requests than those in\n`sampled_in_flight_requests`.","type":"boolean"},"sampled_in_flight_requests":{"items":{"$ref":"#/components/schemas/Request"},"title":"A sample (e.g., the 5 latest) of the currently in-flight requests","type":"array"}},"type":"object"},"KafkaConnection":{"properties":{"api_versions":{"additionalProperties":{"format":"int32","type":"integer"},"description":"This map records, for each Kafka API, the highest version number observed\nin requests on this connection. It can be useful for understanding which\nprotocol versions a client supports or has negotiated with the broker.\nOnly APIs that were actually used (i.e. at least one request was seen)\nare included.\n\nExample:\n { 0: 11, 1: 13 }\nmeans that for API key 0 (Produce), version 11 was the highest seen,\nand for API key 1 (Fetch), version 13 was the highest seen.\n\nReference:\n- https://kafka.apache.org/0101/protocol.html#protocol_api_keys\n- https://kafka.apache.org/0101/protocol.html#protocol_compatibility","type":"object"},"authentication_info":{"$ref":"#/components/schemas/AuthenticationInfo"},"client_id":{"description":"Client identifier included in every request sent by the Kafka client.\nThis is typically a configurable property (client.id) set by the\napplication when creating a producer or consumer, and is often used for\nmetrics, quotas, and debugging.","type":"string"},"client_software_name":{"description":"Name of the client library, reported automatically in ApiVersions v3+\nrequests. This is set by the client implementation and is not typically\nconfigurable by applications.","type":"string"},"client_software_version":{"description":"Version of the client library, reported automatically in ApiVersions v3+\nrequests. Like client_software_name, this is set by the\nclient and not usually configurable by applications.","type":"string"},"close_time":{"description":"When the connection was closed. This field is set only when the\nconnection state is \"closed\".","format":"date-time","type":"string"},"group_id":{"description":"Most recent group ID seen in requests sent over this connection. This\ntypically refers to a consumer group, but the Kafka group protocol is\nmore general and may also be used by other types of clients that\ncoordinate membership and assignments through the broker.","type":"string"},"group_instance_id":{"description":"Most recent group instance ID seen in requests sent over this connection.\nThis is used when static membership is enabled, allowing a specific\nclient instance to retain its group membership across restarts.","type":"string"},"group_member_id":{"description":"Most recent group member ID seen in requests sent over this connection.\nThis is the unique identifier assigned by the broker to a particular\nmember of the group.","type":"string"},"idle_duration":{"title":"How long the connection has been idle (no in-flight requests)","type":"string"},"in_flight_requests":{"$ref":"#/components/schemas/InFlightRequests"},"listener_name":{"description":"Name of the Kafka listener that accepted this connection.\nA listener is a named broker endpoint (for example, \"internal\",\n\"external\", or \"sasl_tls\"). Each listener defines its network address and\nenforces its protocol and authentication policy.","type":"string"},"node_id":{"format":"int32","title":"Broker node ID","type":"integer"},"open_time":{"format":"date-time","title":"When the broker accepted the connection","type":"string"},"recent_request_statistics":{"$ref":"#/components/schemas/RequestStatistics"},"shard_id":{"format":"int64","title":"Broker shard that handles the connection","type":"integer"},"source":{"$ref":"#/components/schemas/Source"},"state":{"$ref":"#/components/schemas/KafkaConnectionState"},"tls_info":{"$ref":"#/components/schemas/TLSInfo"},"total_request_statistics":{"$ref":"#/components/schemas/RequestStatistics"},"transactional_id":{"title":"Most recent transactional ID seen in requests sent over this connection","type":"string"},"uid":{"title":"Kafka connection UUID","type":"string"}},"title":"Kafka connection details for a broker","type":"object"},"KafkaConnectionState":{"description":"- KAFKA_CONNECTION_STATE_OPEN: The connection is accepting requests.\n - KAFKA_CONNECTION_STATE_ABORTING: The connection is aborting ongoing requests and about to be closed.\nThis is a transient state between open and closed that should rarely be\nobservable under normal circumstances.\n - KAFKA_CONNECTION_STATE_CLOSED: The connection has been closed.","enum":["KAFKA_CONNECTION_STATE_OPEN","KAFKA_CONNECTION_STATE_ABORTING","KAFKA_CONNECTION_STATE_CLOSED"],"title":"Enums","type":"string"},"LatestOffset":{"description":"Start at the latest offset in the partition.","type":"object"},"Link":{"description":"Describes a URL link.","properties":{"description":{"description":"Describes what the link offers.","type":"string"},"url":{"description":"The URL of the link.","type":"string"}},"type":"object"},"LintHint":{"description":"LintHint is a generic linting hint.","properties":{"column":{"description":"Column number of the lint.","format":"int32","type":"integer"},"hint":{"description":"The hint message.","type":"string"},"line":{"description":"Line number of the lint.","format":"int32","type":"integer"},"lint_type":{"description":"Optional lint type or enum.","type":"string"}},"type":"object"},"LintMCPConfigRequest":{"properties":{"tools":{"additionalProperties":{"$ref":"#/components/schemas/Tool"},"description":"Map of tool names to their configurations. Each tool contains YAML configuration.","type":"object"}},"required":["tools"],"type":"object"},"LintMCPConfigResponse":{"properties":{"lint_hints":{"additionalProperties":{"$ref":"#/components/schemas/LintHint"},"description":"Map of tool names to their linting issues. Empty if no issues are found.","type":"object"}},"type":"object"},"LintPipelineConfigRequest":{"properties":{"config_yaml":{"description":"The Redpanda Connect pipeline configuration in YAML format.\nSee the [Redpanda Connect Configuration](https://docs.redpanda.com/redpanda-cloud/develop/connect/configuration/about) documentation\nfor more details.","type":"string"}},"required":["config_yaml"],"type":"object"},"LintPipelineConfigResponse":{"properties":{"lint_hints":{"description":"A list of linting issues.","items":{"$ref":"#/components/schemas/LintHint"},"type":"array"}},"type":"object"},"ListACLsRequest.Filter":{"properties":{"host":{"description":"The host address to use for this ACL. To allow a principal\naccess from multiple hosts, you must create an ACL for each host.","nullable":true,"type":"string"},"operation":{"$ref":"#/components/schemas/ACL.Operation"},"permission_type":{"$ref":"#/components/schemas/PermissionType"},"principal":{"description":"The user for whom this ACL applies. With the Kafka simple\nauthorizer, you must include the prefix \"User:\" with the user name.","nullable":true,"type":"string"},"resource_name":{"description":"The name of the resource this ACL targets.","nullable":true,"type":"string"},"resource_pattern_type":{"$ref":"#/components/schemas/ResourcePatternType"},"resource_type":{"$ref":"#/components/schemas/ResourceType"}},"type":"object"},"ListACLsResponse":{"properties":{"resources":{"items":{"$ref":"#/components/schemas/ListACLsResponse.Resource"},"type":"array"}},"type":"object"},"ListACLsResponse.Resource":{"properties":{"acls":{"items":{"$ref":"#/components/schemas/Policy"},"type":"array"},"resource_name":{"description":"The name of the resource this ACL targets.","type":"string"},"resource_pattern_type":{"$ref":"#/components/schemas/ResourcePatternType"},"resource_type":{"$ref":"#/components/schemas/ResourceType"}},"type":"object"},"ListComponentsResponse":{"properties":{"components":{"$ref":"#/components/schemas/ComponentList"}},"type":"object"},"ListConnectClustersResponse":{"properties":{"clusters":{"items":{"$ref":"#/components/schemas/ConnectCluster"},"type":"array"}},"type":"object"},"ListConnectorTopicsResponse":{"properties":{"topics":{"description":"Topic names.","items":{"type":"string"},"type":"array"}},"type":"object"},"ListConnectorsResponse":{"properties":{"connectors":{"description":"List of connectors, where the parent key is the connector name.","items":{"$ref":"#/components/schemas/ConnectorInfoStatus"},"type":"array"},"next_page_token":{"description":"Page Token to fetch the next page. The value can be used as page_token in the next call to this endpoint.","type":"string"}},"type":"object"},"ListKafkaConnectSecretsResponse":{"description":"ListKafkaConnectSecretsResponse is the response of ListKafkaConnectSecrets.","properties":{"next_page_token":{"description":"Token to retrieve the next page.","type":"string"},"secrets":{"description":"Secrets retrieved.","items":{"$ref":"#/components/schemas/Secret"},"type":"array"}},"type":"object"},"ListKafkaConnectionsResponse":{"description":"ListKafkaConnectionsResponse is the response from the ListKafkaConnections\nRPC.","properties":{"connections":{"description":"The list of connections matching the request.\nNote that in addition to open connections, some recently-closed\nconnections may also be included here. If you don't want to include\nclosed connections, set the filter in the request to `state =\nKAFKA_CONNECTION_STATE_OPEN`.","items":{"$ref":"#/components/schemas/KafkaConnection"},"type":"array"},"total_size":{"format":"uint64","title":"Total number of connections matching the request.\nThis may be greater than `len(connections)` if some connections were\nomitted from the response due to the specified (or default) `page_size`.\nExample:\n request.page_size = 10\n response.connections = [\u003c10 items\u003e]\n response.total_size = 13","type":"string"}},"type":"object"},"ListMCPServersRequest.Filter":{"properties":{"display_name_contains":{"description":"Returns MCP servers that partially match this name.","type":"string"},"secret_id":{"description":"Filters MCP servers that reference this secret ID in their tool configurations.","type":"string"},"tags[string]":{"additionalProperties":{"type":"string"},"description":"Filters by tags using exact match. Returns only MCP servers that have all the specified key-value pairs.","type":"object"}},"type":"object"},"ListMCPServersResponse":{"properties":{"mcp_servers":{"items":{"$ref":"#/components/schemas/MCPServer"},"type":"array"},"next_page_token":{"description":"Token to retrieve the next page of results. Empty if there are no more results.","type":"string"}},"type":"object"},"ListMountTasksResponse":{"properties":{"tasks":{"items":{"$ref":"#/components/schemas/MountTask"},"type":"array"}},"type":"object"},"ListMountableTopicsResponse":{"properties":{"topics":{"items":{"$ref":"#/components/schemas/TopicLocation"},"type":"array"}},"type":"object"},"ListPipelinesRequest.Filter":{"properties":{"name_contains":{"description":"Any pipelines that partially match this name will be returned.","type":"string"},"secret_id":{"type":"string"},"tags[string]":{"additionalProperties":{"type":"string"},"description":"Pipelines that match all the provided tags will be returned.","type":"object"}},"type":"object"},"ListPipelinesResponse":{"properties":{"next_page_token":{"type":"string"},"pipelines":{"items":{"$ref":"#/components/schemas/Pipeline"},"type":"array"}},"type":"object"},"ListQuotasRequest.Filter":{"properties":{"entity_name":{"description":"Filter by entity name. If unspecified will return all entities for specified entity type.","type":"string"},"entity_type":{"$ref":"#/components/schemas/EntityType"},"match_default":{"description":"If true, the entity_name will match the default entity (e.g., default client-id).","type":"boolean"}},"type":"object"},"ListQuotasResponse":{"properties":{"page_token":{"description":"Token to retrieve the next page of results. If empty, there are no more results.","type":"string"},"quotas":{"items":{"$ref":"#/components/schemas/QuotaEntry"},"type":"array"}},"type":"object"},"ListResourcesRequest.Filter":{"properties":{"scopes":{"items":{"$ref":"#/components/schemas/Scope"},"type":"array"},"secret_id":{"type":"string"}},"type":"object"},"ListResourcesResponse":{"properties":{"resources":{"items":{"$ref":"#/components/schemas/ListResourcesResponse.Resource"},"type":"array"}},"type":"object"},"ListResourcesResponse.Resource":{"properties":{"display_name":{"type":"string"},"id":{"type":"string"},"type":{"$ref":"#/components/schemas/ListResourcesResponse.Type"}},"type":"object"},"ListResourcesResponse.Type":{"enum":["TYPE_PIPELINE","TYPE_CLUSTER","TYPE_MCP_SERVER","TYPE_AI_AGENT"],"type":"string"},"ListRoleMembersRequest.Filter":{"description":"Filter options.","properties":{"name_contains":{"description":"Filter results to only members with names which contain the string.","type":"string"}},"type":"object"},"ListRoleMembersResponse":{"description":"ListRoleMembersResponse is the response for ListRoleMembers.","properties":{"members":{"description":"Members assigned to the role.","items":{"$ref":"#/components/schemas/RoleMembership"},"type":"array"},"next_page_token":{"description":"Token to retrieve the next page.","type":"string"},"role_name":{"description":"The role name.","type":"string"}},"type":"object"},"ListRolesRequest.Filter":{"description":"Filter options.","properties":{"name_contains":{"description":"Filter results to only roles with names which contain the string.","type":"string"},"name_prefix":{"description":"Filter results only roles named with the prefix.","type":"string"},"principal":{"description":"Return only roles assigned to this principal. The principal must contain\nthe principal type. For example: \"User:jane\" is a valid principal format.","type":"string"}},"type":"object"},"ListRolesResponse":{"description":"ListRolesResponse is the response for ListRoles.","properties":{"next_page_token":{"description":"Token to retrieve the next page.","type":"string"},"roles":{"description":"The roles in the system.","items":{"$ref":"#/components/schemas/Role"},"type":"array"}},"type":"object"},"ListSecretScopesResponse":{"description":"ListSecretScopesResponse is the response of ListSecretScopes.","properties":{"scopes":{"items":{"$ref":"#/components/schemas/Scope"},"type":"array"}},"type":"object"},"ListSecretsFilter":{"description":"ListSecretsFilter are the filter options for listing secrets.","properties":{"labels[string][string]":{"additionalProperties":{"type":"string"},"description":"The secret labels to search for.","type":"object"},"name_contains":{"description":"Substring match on secret name. Case-sensitive.","type":"string"},"scopes":{"items":{"$ref":"#/components/schemas/Scope"},"title":"Secret scopes to search for","type":"array"}},"type":"object"},"ListSecretsResponse":{"description":"ListSecretsResponse is the response of ListSecrets.","properties":{"next_page_token":{"description":"Token to retrieve the next page.","type":"string"},"secrets":{"description":"Secrets retrieved.","items":{"$ref":"#/components/schemas/Secret"},"type":"array"}},"type":"object"},"ListShadowLinkTopicsRequest.Filter":{"properties":{"topic_name_contains":{"description":"Substring match on shadow topic name. Case-sensitive.","type":"string"}},"type":"object"},"ListShadowLinkTopicsResponse":{"properties":{"next_page_token":{"title":"Token to retrieve the next page","type":"string"},"shadow_topics":{"items":{"$ref":"#/components/schemas/v1.ShadowTopic"},"title":"Shadow topic status information","type":"array"}},"type":"object"},"ListTopicsRequest.Filter":{"properties":{"name_contains":{"description":"Substring match on topic name. Case-sensitive.","type":"string"}},"type":"object"},"ListTopicsResponse":{"properties":{"next_page_token":{"type":"string"},"topics":{"items":{"$ref":"#/components/schemas/ListTopicsResponse.Topic"},"type":"array"}},"type":"object"},"ListTopicsResponse.Topic":{"properties":{"internal":{"description":"Whether topic is internal only.","type":"boolean"},"name":{"description":"Topic name.","type":"string"},"partition_count":{"description":"Topic partition count.","format":"int32","type":"integer"},"replication_factor":{"description":"Topic replication factor.","format":"int32","type":"integer"}},"type":"object"},"ListTransformsRequest.Filter":{"properties":{"name_contains":{"description":"Substring match on transform name. Case-sensitive.","type":"string"}},"type":"object"},"ListTransformsResponse":{"properties":{"next_page_token":{"description":"Token to retrieve the next page.","type":"string"},"transforms":{"items":{"$ref":"#/components/schemas/TransformMetadata"},"type":"array"}},"type":"object"},"ListUsersRequest.Filter":{"properties":{"name":{"description":"Username.","type":"string"},"name_contains":{"description":"Substring match on username. Case-sensitive.","type":"string"}},"type":"object"},"ListUsersResponse":{"properties":{"next_page_token":{"description":"Token to retrieve the next page.","type":"string"},"users":{"items":{"$ref":"#/components/schemas/ListUsersResponse.User"},"type":"array"}},"type":"object"},"ListUsersResponse.User":{"properties":{"mechanism":{"$ref":"#/components/schemas/SASLMechanism"},"name":{"description":"Username.","type":"string"}},"type":"object"},"LocalizedMessage":{"description":"Provides a localized error message that is safe to return to the user\nwhich can be attached to an RPC error.","properties":{"locale":{"title":"The locale used following the specification defined at\nhttps://www.rfc-editor.org/rfc/bcp/bcp47.txt.\nExamples are: \"en-US\", \"fr-CH\", \"es-MX\"","type":"string"},"message":{"description":"The localized error message in the above locale.","type":"string"}},"type":"object"},"MCPServer":{"description":"Defines the MCP server resource.","properties":{"description":{"description":"Optional MCP server description.","type":"string"},"display_name":{"description":"User-friendly MCP server name.","type":"string"},"id":{"description":"Unique identifier for the MCP server.","type":"string"},"resources":{"$ref":"#/components/schemas/Resources"},"service_account":{"$ref":"#/components/schemas/MCPServer.ServiceAccount"},"state":{"$ref":"#/components/schemas/MCPServer.State"},"status":{"$ref":"#/components/schemas/MCPServer.Status"},"tags":{"additionalProperties":{"type":"string"},"description":"Tags are key-value pairs that can be assigned to an MCP server resource.\nThey help organize MCP servers and enable filtering when listing them.","type":"object"},"tools":{"additionalProperties":{"$ref":"#/components/schemas/Tool"},"description":"Map of tool names to their configurations. Each tool defines a capability that the MCP server exposes.","type":"object"},"url":{"description":"URL to connect to the MCP server.","readOnly":true,"type":"string"}},"required":["id","display_name","tools","service_account"],"type":"object"},"MCPServer.ServiceAccount":{"properties":{"client_id":{"type":"string"},"client_secret":{"type":"string"}},"required":["client_id","client_secret"],"type":"object"},"MCPServer.State":{"description":"State of the MCP server.\n\n - STATE_STARTING: The MCP server is starting.\n - STATE_RUNNING: The MCP server is running.\n - STATE_STOPPING: The MCP server is in the process of stopping.\n - STATE_STOPPED: The MCP server is stopped and in paused state.\n - STATE_ERROR: The MCP server encountered an error.","enum":["STATE_STARTING","STATE_RUNNING","STATE_STOPPING","STATE_STOPPED","STATE_ERROR"],"type":"string"},"MCPServer.Status":{"description":"MCP server status may contain an error message.","properties":{"error":{"description":"Error message if the MCP server is in an error state. Empty if no error.","type":"string"}},"type":"object"},"MCPServerCreate":{"description":"MCPServerCreate contains the details for the MCP server creation request.","properties":{"description":{"description":"Optional MCP server description.","type":"string"},"display_name":{"description":"User-friendly MCP server name.","type":"string"},"resources":{"$ref":"#/components/schemas/Resources"},"service_account":{"$ref":"#/components/schemas/MCPServer.ServiceAccount"},"tags":{"additionalProperties":{"type":"string"},"description":"Optional list of tags to attach to an MCP server.","type":"object"},"tools":{"additionalProperties":{"$ref":"#/components/schemas/Tool"},"description":"Map of tool names to their configurations. Each tool defines a capability that the MCP server exposes.","type":"object"}},"required":["display_name","tools","service_account"],"type":"object"},"MCPServerUpdate":{"properties":{"description":{"description":"MCP server description.","type":"string"},"display_name":{"description":"User-friendly MCP server name.","type":"string"},"resources":{"$ref":"#/components/schemas/Resources"},"service_account":{"$ref":"#/components/schemas/MCPServer.ServiceAccount"},"tags":{"additionalProperties":{"type":"string"},"description":"A map of tags to add, update or delete.\nIf a tag's value is empty, the server interprets that as a deletion.","type":"object"},"tools":{"additionalProperties":{"$ref":"#/components/schemas/Tool"},"description":"Map of tool names to their configurations. Each tool defines a capability that the MCP server exposes.","type":"object"}},"type":"object"},"MatchingACL":{"properties":{"error":{"$ref":"#/components/schemas/rpc.Status"},"host":{"description":"The host address to use for this ACL.","type":"string"},"operation":{"$ref":"#/components/schemas/ACL.Operation"},"permission_type":{"$ref":"#/components/schemas/PermissionType"},"principal":{"description":"The user for whom this ACL applies.","type":"string"},"resource_name":{"description":"The name of the resource this ACL targets.","type":"string"},"resource_pattern_type":{"$ref":"#/components/schemas/ResourcePatternType"},"resource_type":{"$ref":"#/components/schemas/ResourceType"}},"type":"object"},"MountTask":{"properties":{"id":{"description":"Unique identifier for this mount task.","format":"int32","type":"integer"},"state":{"$ref":"#/components/schemas/MountTask.State"},"topics":{"description":"List of topics that are being mounted or unmounted.","items":{"$ref":"#/components/schemas/MountTask.Topic"},"type":"array"},"type":{"$ref":"#/components/schemas/MountTask.Type"}},"type":"object"},"MountTask.State":{"description":" - STATE_PLANNED: Planned: The mount task has been created and is awaiting further actions.\n - STATE_PREPARING: Preparing: The mount task is gathering resources and preparing for execution.\n - STATE_PREPARED: Prepared: All preparations are complete, and the mount task is ready to be executed.\n - STATE_EXECUTING: Executing: The mount task is actively transferring or transforming data.\n - STATE_EXECUTED: Executed: The core mount task actions are complete, but the mount task has not yet cut over or finalized.\n - STATE_CUT_OVER: Cut Over: The mount task has reached a critical point where ownership is transferred or final adjustments are made.\n - STATE_FINISHED: Finished: The mount task has been successfully completed, and no further actions are required.\n - STATE_CANCELING: Canceling: The mount task is in the process of being canceled, and rollback or cleanup actions may be in progress.\n - STATE_CANCELLED: Cancelled: The mount task has been fully canceled, and no further actions will be taken.","enum":["STATE_PLANNED","STATE_PREPARING","STATE_PREPARED","STATE_EXECUTING","STATE_EXECUTED","STATE_CUT_OVER","STATE_FINISHED","STATE_CANCELING","STATE_CANCELLED"],"type":"string"},"MountTask.Topic":{"properties":{"source_topic_reference":{"description":"The topic reference in the object storage bucket.\nThis field is only set for tasks of type MOUNT.","type":"string"},"topic_reference":{"description":"The topic reference within the current cluster, which may be either a simple topic name or a full reference\nin the form: cluster-uuid/topic-name/revision.","type":"string"}},"type":"object"},"MountTask.Type":{"description":" - TYPE_MOUNT: Mount represents the process of making topics available in a cluster by loading them from object storage.\n - TYPE_UNMOUNT: Unmount represents the process of offloading topics back to object storage.","enum":["TYPE_MOUNT","TYPE_UNMOUNT"],"type":"string"},"MountTopicsResponse":{"properties":{"mount_task_id":{"format":"int32","title":"ID of mount","type":"integer"}},"type":"object"},"NameFilter":{"properties":{"filter_type":{"$ref":"#/components/schemas/FilterType"},"name":{"title":"The resource name, or \"*\"\nNote if \"*\", must be the _only_ character\nand `pattern_type` must be `PATTERN_TYPE_LITERAL`","type":"string"},"pattern_type":{"$ref":"#/components/schemas/PatternType"}},"title":"A filter based on the name of a resource","type":"object"},"Options":{"properties":{"include_tasks":{"description":"Restart connector's tasks.","type":"boolean"},"only_failed":{"description":"Restart only connectors that have failed.","type":"boolean"}},"type":"object"},"ParamDefinition":{"description":"ParamDefinition represents a parameter definition.","properties":{"default_value":{"type":"string"},"description":{"type":"string"},"name":{"type":"string"},"type":{"type":"string"}},"type":"object"},"ParamSpec":{"description":"ParamSpec represents parameter specifications.","properties":{"definitions":{"items":{"$ref":"#/components/schemas/ParamDefinition"},"type":"array"}},"type":"object"},"PartitionStatus":{"enum":["PARTITION_STATUS_RUNNING","PARTITION_STATUS_INACTIVE","PARTITION_STATUS_ERRORED","PARTITION_STATUS_UNKNOWN"],"type":"string"},"PartitionTransformStatus":{"properties":{"broker_id":{"format":"int32","type":"integer"},"lag":{"format":"int32","type":"integer"},"partition_id":{"format":"int32","type":"integer"},"status":{"$ref":"#/components/schemas/PartitionStatus"}},"type":"object"},"PatternType":{"description":"- PATTERN_TYPE_LITERAL: Must match the filter exactly\n - PATTERN_TYPE_PREFIX: Will match anything that starts with filter","enum":["PATTERN_TYPE_LITERAL","PATTERN_TYPE_PREFIX"],"title":"The matching pattern type","type":"string"},"PermissionType":{"description":"Whether the operation should be allowed or denied.","enum":["PERMISSION_TYPE_ANY","PERMISSION_TYPE_DENY","PERMISSION_TYPE_ALLOW"],"type":"string"},"Pipeline":{"description":"Defines the pipeline resource.","properties":{"config_yaml":{"description":"The Redpanda Connect pipeline configuration in YAML format. See the [Redpanda Connect Configuration](https://docs.redpanda.com/redpanda-cloud/develop/connect/configuration/about) documentation for more details.","title":"The pipeline configuration in YAML.\nSee https://docs.redpanda.com/redpanda-connect/configuration/about/","type":"string"},"description":{"description":"Optional pipeline description.","type":"string"},"display_name":{"description":"User-friendly pipeline name.","type":"string"},"id":{"description":"Pipeline ID.","type":"string"},"resources":{"$ref":"#/components/schemas/Resources"},"service_account":{"$ref":"#/components/schemas/Pipeline.ServiceAccount"},"state":{"$ref":"#/components/schemas/Pipeline.State"},"status":{"$ref":"#/components/schemas/Pipeline.Status"},"tags":{"additionalProperties":{"type":"string"},"description":"Tags are key-value pairs that can be assigned to a pipeline resource.\nThey help organize pipelines and enable filtering when listing them.","type":"object"},"url":{"description":"URL to connect to the pipeline, for example, via http_server.\nMay be empty if no http_server is used.","type":"string"}},"required":["id","display_name","config_yaml"],"type":"object"},"Pipeline.ServiceAccount":{"properties":{"client_id":{"type":"string"},"client_secret":{"type":"string"}},"type":"object"},"Pipeline.State":{"description":"State of the pipeline.\n\n - STATE_STARTING: The pipeline is starting.\n - STATE_RUNNING: The pipeline is running.\n - STATE_STOPPING: The pipeline is in the process of stopping.\n - STATE_STOPPED: The pipeline is stopped and in paused state.\n - STATE_ERROR: The pipeline encountered an error. See [Error Handling](https://docs.redpanda.com/redpanda-cloud/develop/connect/configuration/error_handling/) for further guidance.\n - STATE_COMPLETED: The pipeline has completed the job successfully.","enum":["STATE_STARTING","STATE_RUNNING","STATE_STOPPING","STATE_STOPPED","STATE_ERROR","STATE_COMPLETED"],"type":"string"},"Pipeline.Status":{"description":"Pipeline status may contain an error message.","properties":{"error":{"type":"string"}},"type":"object"},"PipelineCreate":{"description":"PipelineCreate contains the details for the pipeline creation request.","properties":{"config_yaml":{"description":"The Redpanda Connect pipeline configuration in YAML format. See the [Redpanda Connect Configuration](https://docs.redpanda.com/redpanda-cloud/develop/connect/configuration/about) documentation for more details.","type":"string"},"description":{"description":"Pipeline description.","type":"string"},"display_name":{"description":"User-friendly pipeline name.","type":"string"},"resources":{"$ref":"#/components/schemas/Resources"},"service_account":{"$ref":"#/components/schemas/Pipeline.ServiceAccount"},"tags":{"additionalProperties":{"type":"string"},"description":"Optional list of tags to attach to a pipeline.","type":"object"}},"required":["display_name","config_yaml"],"type":"object"},"PipelineUpdate":{"properties":{"config_yaml":{"description":"The Redpanda Connect pipeline configuration in YAML format. See the [Redpanda Connect Configuration](https://docs.redpanda.com/redpanda-cloud/develop/connect/configuration/about) documentation for more details.","type":"string"},"description":{"description":"Pipeline description.","type":"string"},"display_name":{"description":"User-friendly pipeline name.","type":"string"},"resources":{"$ref":"#/components/schemas/Resources"},"service_account":{"$ref":"#/components/schemas/Pipeline.ServiceAccount"},"tags":{"additionalProperties":{"type":"string"},"description":"A map of tags to add, update or delete.\nIf a tag's value is empty, the server interprets that as a deletion.","type":"object"}},"required":["display_name","config_yaml"],"type":"object"},"PipelinesForSecret":{"properties":{"pipelines":{"items":{"$ref":"#/components/schemas/Pipeline"},"type":"array"},"secret_id":{"type":"string"}},"type":"object"},"PlainConfig":{"properties":{"password":{"title":"Password","type":"string"},"password_set":{"readOnly":true,"title":"Indicates that the password has been set","type":"boolean"},"password_set_at":{"format":"date-time","readOnly":true,"title":"Timestamp of when the password was last set - only valid if password_set\nis true","type":"string"},"username":{"title":"PLAIN username","type":"string"}},"title":"PLAIN settings","type":"object"},"Policy":{"properties":{"host":{"description":"The host address for this ACL.","type":"string"},"operation":{"$ref":"#/components/schemas/ACL.Operation"},"permission_type":{"$ref":"#/components/schemas/PermissionType"},"principal":{"description":"The user for whom this ACL applies.","type":"string"}},"type":"object"},"Quota.Value":{"properties":{"value":{"format":"double","type":"number"},"value_type":{"$ref":"#/components/schemas/ValueType"}},"type":"object"},"QuotaDeletion":{"properties":{"entity":{"$ref":"#/components/schemas/RequestQuotaEntity"},"value_types":{"items":{"$ref":"#/components/schemas/ValueType"},"title":"Value that should be deleted for the specified entity","type":"array"}},"type":"object"},"QuotaEntry":{"description":"QuotaEntry represents the quota for a specific entity type.","properties":{"entity":{"$ref":"#/components/schemas/Entity"},"values":{"items":{"$ref":"#/components/schemas/Quota.Value"},"type":"array"}},"type":"object"},"QuotaFailure":{"description":"Describes how a quota check failed.\n\nFor example if a daily limit was exceeded for the calling project,\na service could respond with a QuotaFailure detail containing the project\nid and the description of the quota limit that was exceeded. If the\ncalling project hasn't enabled the service in the developer console, then\na service could respond with the project id and set `service_disabled`\nto true.\n\nAlso see RetryInfo and Help types for other details about handling a\nquota failure.","properties":{"violations":{"description":"Describes all quota violations.","items":{"$ref":"#/components/schemas/QuotaFailure.Violation"},"type":"array"}},"title":"QuotaFailure","type":"object"},"QuotaFailure.Violation":{"description":"A message type used to describe a single quota violation. For example, a\ndaily quota or a custom quota that was exceeded.","properties":{"api_service":{"description":"The API Service from which the `QuotaFailure.Violation` orginates. In\nsome cases, Quota issues originate from an API Service other than the one\nthat was called. In other words, a dependency of the called API Service\ncould be the cause of the `QuotaFailure`, and this field would have the\ndependency API service name.\n\nFor example, if the called API is Kubernetes Engine API\n(container.googleapis.com), and a quota violation occurs in the\nKubernetes Engine API itself, this field would be\n\"container.googleapis.com\". On the other hand, if the quota violation\noccurs when the Kubernetes Engine API creates VMs in the Compute Engine\nAPI (compute.googleapis.com), this field would be\n\"compute.googleapis.com\".","type":"string"},"description":{"description":"A description of how the quota check failed. Clients can use this\ndescription to find more about the quota configuration in the service's\npublic documentation, or find the relevant quota limit to adjust through\ndeveloper console.\n\nFor example: \"Service disabled\" or \"Daily Limit for read operations\nexceeded\".","type":"string"},"future_quota_value":{"description":"The new quota value being rolled out at the time of the violation. At the\ncompletion of the rollout, this value will be enforced in place of\nquota_value. If no rollout is in progress at the time of the violation,\nthis field is not set.\n\nFor example, if at the time of the violation a rollout is in progress\nchanging the number of CPUs quota from 10 to 20, 20 would be the value of\nthis field.","format":"int64","nullable":true,"type":"string"},"quota_dimensions":{"additionalProperties":{"type":"string"},"description":"The dimensions of the violated quota. Every non-global quota is enforced\non a set of dimensions. While quota metric defines what to count, the\ndimensions specify for what aspects the counter should be increased.\n\nFor example, the quota \"CPUs per region per VM family\" enforces a limit\non the metric \"compute.googleapis.com/cpus_per_vm_family\" on dimensions\n\"region\" and \"vm_family\". And if the violation occurred in region\n\"us-central1\" and for VM family \"n1\", the quota_dimensions would be,\n\n{\n \"region\": \"us-central1\",\n \"vm_family\": \"n1\",\n}\n\nWhen a quota is enforced globally, the quota_dimensions would always be\nempty.","type":"object"},"quota_id":{"description":"The id of the violated quota. Also know as \"limit name\", this is the\nunique identifier of a quota in the context of an API service.\n\nFor example, \"CPUS-PER-VM-FAMILY-per-project-region\".","type":"string"},"quota_metric":{"description":"The metric of the violated quota. A quota metric is a named counter to\nmeasure usage, such as API requests or CPUs. When an activity occurs in a\nservice, such as Virtual Machine allocation, one or more quota metrics\nmay be affected.\n\nFor example, \"compute.googleapis.com/cpus_per_vm_family\",\n\"storage.googleapis.com/internet_egress_bandwidth\".","type":"string"},"quota_value":{"description":"The enforced quota value at the time of the `QuotaFailure`.\n\nFor example, if the enforced quota value at the time of the\n`QuotaFailure` on the number of CPUs is \"10\", then the value of this\nfield would reflect this quantity.","format":"int64","type":"string"},"subject":{"description":"The subject on which the quota check failed.\nFor example, \"clientip:\u003cip address of client\u003e\" or \"project:\u003cGoogle\ndeveloper project id\u003e\".","type":"string"}},"type":"object"},"QuotaSetting":{"properties":{"entity":{"$ref":"#/components/schemas/RequestQuotaEntity"},"values":{"items":{"$ref":"#/components/schemas/RequestQuotaValue"},"type":"array"}},"type":"object"},"ReplicaAssignment":{"properties":{"partition_id":{"description":"A partition to create.","format":"int32","type":"integer"},"replica_ids":{"description":"The broker IDs the partition replicas are assigned to.","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"Request":{"properties":{"api_key":{"format":"int32","title":"API key for the request type (e.g., produce/fetch/metadata/etc)\nhttps://kafka.apache.org/0101/protocol.html#protocol_api_keys","type":"integer"},"in_flight_duration":{"title":"How long the request has been in-flight since it was received","type":"string"}},"type":"object"},"RequestQuotaEntity":{"properties":{"entity_name":{"description":"Entity name is the name of the entity type specified.\nIf left empty, the entity will be treated as a default entity (e.g., all clients).\nIf entity_type is ENTITY_TYPE_CLIENT_ID_PREFIX, this field must be set.","type":"string"},"entity_type":{"$ref":"#/components/schemas/EntityType"}},"type":"object"},"RequestQuotaValue":{"properties":{"value":{"format":"double","type":"number"},"value_type":{"$ref":"#/components/schemas/ValueType"}},"type":"object"},"RequestStatistics":{"properties":{"fetch_bytes":{"description":"Sum of bytes fetched.","format":"uint64","type":"string"},"produce_batch_count":{"format":"uint64","title":"Number of produced batches.\nAverage batch size = produce_bytes / produce_batch_count","type":"string"},"produce_bytes":{"description":"Sum of bytes produced.","format":"uint64","type":"string"},"request_count":{"description":"Number of requests the client has made.","format":"uint64","type":"string"}},"type":"object"},"ResourcePatternType":{"description":"The pattern to use for matching the specified resource_name\n(any, exact match, literal, or prefixed).","enum":["RESOURCE_PATTERN_TYPE_ANY","RESOURCE_PATTERN_TYPE_MATCH","RESOURCE_PATTERN_TYPE_LITERAL","RESOURCE_PATTERN_TYPE_PREFIXED"],"type":"string"},"ResourceType":{"description":"The type of resource (topic, consumer group, etc.) this\nACL targets.","enum":["RESOURCE_TYPE_ANY","RESOURCE_TYPE_TOPIC","RESOURCE_TYPE_GROUP","RESOURCE_TYPE_CLUSTER","RESOURCE_TYPE_TRANSACTIONAL_ID","RESOURCE_TYPE_DELEGATION_TOKEN","RESOURCE_TYPE_USER","RESOURCE_TYPE_REGISTRY","RESOURCE_TYPE_SUBJECT"],"type":"string"},"Resources":{"properties":{"cpu_shares":{"description":"`cpu_shares` is a string specifying the amount of CPU to allocate for the\npipeline.\n\nThis follows the [Kubernetes quantity](https://kubernetes.io/docs/reference/kubernetes-api/common-definitions/quantity/) format. Acceptable\nunits include:\n- Decimal SI units: \"m\" (e.g., \"500m\" for 500 millicores, \"2\" for 2 cores)\nCPU shares can be specified in millicores (1 core = 1000 millicores).\nIf you don't specify a unit, the value is interpreted as the number of cores.","type":"string"},"memory_shares":{"description":"`memory_shares` is a string specifying the amount of memory to allocate for\nthe pipeline.\n\nThis follows the [Kubernetes quantity](https://kubernetes.io/docs/reference/kubernetes-api/common-definitions/quantity/) format. Acceptable units\ninclude:\n- Decimal SI units: \"K\", \"M\", \"G\", \"T\", \"P\", \"E\" (e.g., \"128M\" for 128\n megabytes)\n- Binary SI units: \"Ki\", \"Mi\", \"Gi\", \"Ti\", \"Pi\", \"Ei\" (e.g., \"512Mi\" for\n512 mebibytes) If you don't specify a unit, the value is interpreted as\nbytes.","type":"string"}},"required":["memory_shares","cpu_shares"],"type":"object"},"Role":{"description":"Role defines a role in the system.","properties":{"name":{"description":"The name of the role.","type":"string"}},"type":"object"},"RoleMembership":{"description":"RoleMembership is the role membership.","properties":{"principal":{"description":"The name of the principal assigned to the role.","type":"string"}},"type":"object"},"SASLMechanism":{"description":"SASL mechanism to use for authentication.","enum":["SASL_MECHANISM_SCRAM_SHA_256","SASL_MECHANISM_SCRAM_SHA_512"],"type":"string"},"SchemaRegistrySyncOptions":{"description":"Options for how the Schema Registry is synced.","properties":{"shadow_schema_registry_topic":{"$ref":"#/components/schemas/ShadowSchemaRegistryTopic"}},"type":"object"},"Scope":{"description":"Defines the scope of a secret.","enum":["SCOPE_REDPANDA_CONNECT","SCOPE_REDPANDA_CLUSTER","SCOPE_MCP_SERVER","SCOPE_AI_AGENT","SCOPE_AI_GATEWAY"],"type":"string"},"ScramConfig":{"properties":{"password":{"title":"Password","type":"string"},"password_set":{"readOnly":true,"title":"Indicates that the password has been set","type":"boolean"},"password_set_at":{"format":"date-time","readOnly":true,"title":"Timestamp of when the password was last set - only valid if password_set\nis true","type":"string"},"scram_mechanism":{"$ref":"#/components/schemas/ScramMechanism"},"username":{"title":"SCRAM username","type":"string"}},"title":"SCRAM settings","type":"object"},"ScramMechanism":{"description":"- SCRAM_MECHANISM_SCRAM_SHA_256: SCRAM-SHA-256\n - SCRAM_MECHANISM_SCRAM_SHA_512: SCRAM-SHA-512","enum":["SCRAM_MECHANISM_SCRAM_SHA_256","SCRAM_MECHANISM_SCRAM_SHA_512"],"title":"Valid SCRAM mechanisms","type":"string"},"Secret":{"description":"Defines the secret resource.","properties":{"id":{"description":"Secret identifier.","readOnly":true,"type":"string"},"labels":{"additionalProperties":{"type":"string"},"description":"Secret labels.","type":"object"},"scopes":{"items":{"$ref":"#/components/schemas/Scope"},"title":"Secret scopes","type":"array"}},"type":"object"},"SecuritySettingsSyncOptions":{"properties":{"acl_filters":{"items":{"$ref":"#/components/schemas/ACLFilter"},"title":"ACL filters","type":"array"},"effective_interval":{"readOnly":true,"title":"The effective interval for the task","type":"string"},"interval":{"title":"Sync interval\nIf 0 provided, defaults to 30 seconds","type":"string"},"paused":{"title":"Allows user to pause the security settings sync task. If paused,\nthen the task will enter the 'paused' state and will not sync security\nsettings from the source cluster","type":"boolean"}},"title":"Options for syncing security settings","type":"object"},"SetConfiguration":{"properties":{"name":{"description":"A topic-level config key (e.g. `segment.bytes`).","type":"string"},"value":{"description":"A topic-level config value (e.g. 1073741824).","nullable":true,"type":"string"}},"type":"object"},"SetPartitionsToTopicsRequest":{"properties":{"partition_count":{"description":"The number of partitions to set for the topics.","format":"int32","type":"integer"},"topic_names":{"description":"The topic names.","items":{"type":"string"},"type":"array"},"validate_only":{"description":"Validate the request only, do not execute it.","type":"boolean"}},"type":"object"},"SetPartitionsToTopicsResponse":{"properties":{"statuses":{"description":"The status of the operation for each topic.","items":{"$ref":"#/components/schemas/AlterTopicPartitionStatus"},"type":"array"}},"type":"object"},"SetQuotaRequest":{"properties":{"entity":{"$ref":"#/components/schemas/RequestQuotaEntity"},"value":{"$ref":"#/components/schemas/RequestQuotaValue"}},"type":"object"},"SetQuotaResponse":{"type":"object"},"SetTopicConfigurationsResponse":{"properties":{"configurations":{"description":"Topic's complete set of configurations after this update.","items":{"$ref":"#/components/schemas/Configuration"},"type":"array"}},"type":"object"},"SetTopicPartitionsBody":{"properties":{"partition_count":{"description":"The number of partitions to set for the topic.","format":"int32","type":"integer"},"validate_only":{"description":"Validate the request only, do not execute it.","type":"boolean"}},"type":"object"},"SetTopicPartitionsResponse":{"type":"object"},"ShadowLinkClientOptions":{"properties":{"authentication_configuration":{"$ref":"#/components/schemas/AuthenticationConfiguration"},"bootstrap_servers":{"items":{"type":"string"},"title":"The bootstrap servers to use","type":"array"},"client_id":{"readOnly":true,"title":"The Client ID for the Kafka RPC requests setn by this cluster to the\nsource cluster","type":"string"},"connection_timeout_ms":{"format":"int32","title":"Connection timeout.\nIf 0 is provided, defaults to 1 second","type":"integer"},"effective_connection_timeout_ms":{"format":"int32","readOnly":true,"title":"The effective connection timeout in milliseconds","type":"integer"},"effective_fetch_max_bytes":{"format":"int32","readOnly":true,"title":"The effective fetch max bytes","type":"integer"},"effective_fetch_min_bytes":{"format":"int32","readOnly":true,"title":"The effective fetch min bytes","type":"integer"},"effective_fetch_partition_max_bytes":{"format":"int32","readOnly":true,"title":"The effective fetch partition max bytes","type":"integer"},"effective_fetch_wait_max_ms":{"format":"int32","readOnly":true,"title":"The effective fetch wait max in milliseconds","type":"integer"},"effective_metadata_max_age_ms":{"format":"int32","readOnly":true,"title":"The effective metadata max age in milliseconds","type":"integer"},"effective_retry_backoff_ms":{"format":"int32","readOnly":true,"title":"The effective retry backoff in milliseconds","type":"integer"},"fetch_max_bytes":{"format":"int32","title":"Fetch max bytes.\nIf 0 is provided, defaults to 20 MiB","type":"integer"},"fetch_min_bytes":{"format":"int32","title":"Fetch min bytes.\nIf 0 is provided, defaults to 5 MiB","type":"integer"},"fetch_partition_max_bytes":{"format":"int32","title":"Fetch partition max bytes.\nIf 0 is provided, defaults to 5 MiB","type":"integer"},"fetch_wait_max_ms":{"format":"int32","title":"Fetch request timeout.\nIf 0 is provided, defaults to 500ms","type":"integer"},"metadata_max_age_ms":{"format":"int32","title":"Max metadata age.\nIf 0 is provided, defaults to 10 seconds","type":"integer"},"retry_backoff_ms":{"format":"int32","title":"Retry base backoff.\nIf 0 is provided, defaults to 100ms","type":"integer"},"source_cluster_id":{"title":"If provided, this is the expected ID of the source cluster. If it does\nnot match then the connection will be rejected. If provided, this value\nmust match the `ClusterId` field returned in the Kafka Metadata response\nmessage","type":"string"},"tls_settings":{"$ref":"#/components/schemas/TLSSettings"}},"required":["bootstrap_servers"],"title":"Options for the client link","type":"object"},"ShadowLinkConfigurations":{"properties":{"client_options":{"$ref":"#/components/schemas/ShadowLinkClientOptions"},"consumer_offset_sync_options":{"$ref":"#/components/schemas/ConsumerOffsetSyncOptions"},"schema_registry_sync_options":{"$ref":"#/components/schemas/SchemaRegistrySyncOptions"},"security_sync_options":{"$ref":"#/components/schemas/SecuritySettingsSyncOptions"},"topic_metadata_sync_options":{"$ref":"#/components/schemas/TopicMetadataSyncOptions"}},"title":"ShadowLink options","type":"object"},"ShadowLinkState":{"description":"- SHADOW_LINK_STATE_ACTIVE: Shadow link is active\n - SHADOW_LINK_STATE_PAUSED: Shadow link was paused","enum":["SHADOW_LINK_STATE_ACTIVE","SHADOW_LINK_STATE_PAUSED"],"title":"State of the shadow link","type":"string"},"ShadowLinkTaskStatus":{"properties":{"broker_id":{"format":"int32","title":"The broker the task is running on","type":"integer"},"name":{"title":"Name of the task","type":"string"},"reason":{"title":"Reason for task being in state","type":"string"},"shard":{"format":"int32","title":"The shard the task is running on","type":"integer"},"state":{"$ref":"#/components/schemas/TaskState"}},"title":"Status of a task","type":"object"},"ShadowSchemaRegistryTopic":{"description":"Shadow the entire source cluster's Schema Registry byte-for-byte.\nIf set, the Shadow Link will attempt to add the `_schemas`\ntopic to the list of Shadow Topics as long as:\n1. The `_schemas` topic exists on the source cluster\n2. The `_schemas` topic does not exist on the shadow cluster, or it is\nempty.\nIf either of the above conditions are _not_ met, then the `_schemas`\ntopic will _not_ be shadowed by this cluster. Unsetting this flag will\n_not_ remove the `_schemas` topic from shadowing if it has already been\nadded. Once made a shadow topic, the\n`_schemas` topic will be replicated byte-for-byte. To stop shadowing the\n`_schemas` topic, unset this field, then either fail-over the topic or\ndelete it.","type":"object"},"ShadowTopicState":{"description":"- SHADOW_TOPIC_STATE_ACTIVE: Shadow topic is active\n - SHADOW_TOPIC_STATE_FAULTED: Shadow topic has faulted\n - SHADOW_TOPIC_STATE_PAUSED: Shadow topic has been paused\n - SHADOW_TOPIC_STATE_FAILING_OVER: Shadow topic is in the process of failing over\n - SHADOW_TOPIC_STATE_FAILED_OVER: Shadow topic has failed over successfully\n - SHADOW_TOPIC_STATE_PROMOTING: Shadow topic is in the process of being promoted\n - SHADOW_TOPIC_STATE_PROMOTED: Shadow topic is promoted successfully","enum":["SHADOW_TOPIC_STATE_ACTIVE","SHADOW_TOPIC_STATE_FAULTED","SHADOW_TOPIC_STATE_PAUSED","SHADOW_TOPIC_STATE_FAILING_OVER","SHADOW_TOPIC_STATE_FAILED_OVER","SHADOW_TOPIC_STATE_PROMOTING","SHADOW_TOPIC_STATE_PROMOTED"],"title":"State of a shadow topic","type":"string"},"Source":{"properties":{"ip_address":{"type":"string"},"port":{"format":"int64","type":"integer"}},"type":"object"},"StartMCPServerResponse":{"properties":{"mcp_server":{"$ref":"#/components/schemas/MCPServer"}},"type":"object"},"StartPipelineResponse":{"properties":{"pipeline":{"$ref":"#/components/schemas/Pipeline"}},"type":"object"},"StopMCPServerResponse":{"properties":{"mcp_server":{"$ref":"#/components/schemas/MCPServer"}},"type":"object"},"StopPipelineResponse":{"properties":{"pipeline":{"$ref":"#/components/schemas/Pipeline"}},"type":"object"},"SuccessfulEntity":{"properties":{"entity_name":{"type":"string"},"entity_type":{"$ref":"#/components/schemas/EntityType"}},"type":"object"},"TLSFileSettings":{"properties":{"ca_path":{"title":"Path to the CA","type":"string"},"cert_path":{"title":"Path to the cert","type":"string"},"key_path":{"title":"Key and Cert are optional but if one is provided, then both must be\nPath to the key","type":"string"}},"title":"TLS file settings","type":"object"},"TLSInfo":{"properties":{"enabled":{"title":"Whether TLS is in use","type":"boolean"}},"type":"object"},"TLSPEMSettings":{"properties":{"ca":{"title":"The CA","type":"string"},"cert":{"title":"The cert","type":"string"},"key":{"title":"Key and Cert are optional but if one is provided, then both must be\nThe key","type":"string"},"key_fingerprint":{"readOnly":true,"title":"The SHA-256 of the key, in base64 format","type":"string"}},"title":"Used when providing the TLS information in PEM format","type":"object"},"TLSSettings":{"properties":{"do_not_set_sni_hostname":{"title":"If true, the SNI hostname will not be provided when TLS is used","type":"boolean"},"enabled":{"title":"Whether or not TLS is enabled","type":"boolean"},"tls_file_settings":{"$ref":"#/components/schemas/TLSFileSettings"},"tls_pem_settings":{"$ref":"#/components/schemas/TLSPEMSettings"}},"title":"TLS settings","type":"object"},"TaskInfo":{"properties":{"connector":{"description":"Name of connector.","type":"string"},"task":{"description":"The connector task ID.","format":"int32","type":"integer"}},"type":"object"},"TaskState":{"description":"- TASK_STATE_ACTIVE: Task is active\n - TASK_STATE_PAUSED: Task was paused\n - TASK_STATE_LINK_UNAVAILABLE: Task is unable to communicate with source cluster\n - TASK_STATE_NOT_RUNNING: Task is not running\n - TASK_STATE_FAULTED: Task is faulted","enum":["TASK_STATE_ACTIVE","TASK_STATE_PAUSED","TASK_STATE_LINK_UNAVAILABLE","TASK_STATE_NOT_RUNNING","TASK_STATE_FAULTED"],"title":"Task states","type":"string"},"TaskStatus":{"properties":{"id":{"description":"The connector task ID.","format":"int32","type":"integer"},"state":{"description":"State of connector task.","type":"string"},"trace":{"description":"String value of stack trace.","type":"string"},"worker_id":{"description":"ID of worker that the task is assigned to.","type":"string"}},"type":"object"},"Tool":{"description":"A configuration tool for the MCP server.","properties":{"component_type":{"$ref":"#/components/schemas/ComponentType"},"config_yaml":{"description":"The contents of the configuration tool in YAML format.","type":"string"}},"required":["config_yaml"],"type":"object"},"TopicLocation":{"properties":{"topic_location":{"description":"Full reference for the unmounted topic in this format: `topic-name/cluster-uuid/revision`.\nUse this as unique identifier for mounting a topic if there are multiple topics available\nwith the same name.","type":"string"},"topic_name":{"description":"Topic name.","type":"string"}},"type":"object"},"TopicMetadataSyncOptions":{"properties":{"auto_create_shadow_topic_filters":{"description":"List of filters that indicate which topics should be automatically\ncreated as shadow topics on the shadow cluster. This only controls\nautomatic creation of shadow topics and does not effect the state of the\nmirror topic once it is created.\nLiteral filters for __consumer_offsets, _redpanda.audit_log and _schemas\nwill be rejected as well as prefix filters to match topics prefixed with\n_redpanda or __redpanda.\nWildcard `*` is permitted only for literal filters and will _not_ match\nany topics that start with _redpanda or __redpanda. If users wish to\nshadow topics that start with _redpanda or __redpanda, they should\nprovide a literal filter for those topics.","items":{"$ref":"#/components/schemas/NameFilter"},"type":"array"},"effective_interval":{"readOnly":true,"title":"The effective interval for the task","type":"string"},"exclude_default":{"description":"If this is true, then only the properties listed in\n`synced_shadow_topic_properties` will be synced.","title":"If false, then the following topic properties will be synced by default:\n- `compression.type`\n- `retention.bytes`\n- `retention.ms`\n- `delete.retention.ms`\n- Replication Factor\n- `min.compaction.lag.ms`\n- `max.compaction.lag.ms`","type":"boolean"},"interval":{"title":"How often to sync metadata\nIf 0 provided, defaults to 30 seconds","type":"string"},"paused":{"title":"Allows user to pause the topic sync task. If paused, then\nthe task will enter the 'paused' state and not sync topics or their\nproperties from the source cluster","type":"boolean"},"start_at_earliest":{"$ref":"#/components/schemas/EarliestOffset"},"start_at_latest":{"$ref":"#/components/schemas/LatestOffset"},"start_at_timestamp":{"description":"Enables data replication from the first offset on the\nsource topic/partition where the record's timestamp is\nat or after the specified timestamp.","format":"date-time","type":"string"},"synced_shadow_topic_properties":{"description":"The following properties are not allowed to be replicated and adding them\nto this list will result in an error:\n- `redpanda.remote.readreplica`\n- `redpanda.remote.recovery`\n- `redpanda.remote.allowgaps`\n- `redpanda.virtual.cluster.id`\n- `redpanda.leaders.preference`\n- `redpanda.cloud_topic.enabled`\n\nThis list is a list of properties in addition to the default properties\nthat will be synced. See `exclude_default`.","items":{"type":"string"},"title":"List of topic properties that should be synced from the source topic.\nThe following properties will always be replicated\n- Partition count\n- `max.message.bytes`\n- `cleanup.policy`\n- `timestamp.type`","type":"array"}},"title":"Options for syncing topic metadata","type":"object"},"TopicMount":{"description":"TopicMount defines the migration of a topic from the cloud storage into this cluster,\nso that it becomes available via the Kafka API.","properties":{"alias":{"description":"Alias may be provided to mount the topic under a different name. Leave\nblank to re-use the source topic name. The alias does not persist if you\nunmount the topic again.","type":"string"},"source_topic_reference":{"description":"The topic name or full reference of the topic to mount. The full reference\nmust be used in case the same topic exists more than once. This may be the case if\nthe same topic has been unmounted multiple times. List all mountable topics to\nfind the full reference (contains topic name, cluster uuid and revision).","type":"string"}},"required":["source_topic_reference"],"type":"object"},"TopicPartitionInformation":{"properties":{"high_watermark":{"format":"int64","title":"Shadowed partition's HWM","type":"string"},"partition_id":{"format":"int64","title":"Partition ID","type":"string"},"source_high_watermark":{"format":"int64","title":"Source partition's HWM","type":"string"},"source_last_stable_offset":{"format":"int64","title":"Source partition's LSO","type":"string"},"source_last_updated_timestamp":{"format":"date-time","title":"Timestamp of the last time the source partition information was updated","type":"string"}},"title":"Topic partition information","type":"object"},"TransformMetadata":{"properties":{"environment_variables":{"description":"The environment variables you want to apply to your transform's environment","items":{"$ref":"#/components/schemas/EnvironmentVariable"},"type":"array"},"input_topic_name":{"description":"Input topic to apply the transform to.","type":"string"},"name":{"description":"Name of transform.","type":"string"},"output_topic_names":{"description":"Output topics to write the transform results to.","items":{"type":"string"},"type":"array"},"statuses":{"items":{"$ref":"#/components/schemas/PartitionTransformStatus"},"type":"array"}},"type":"object"},"UnmountTopicsResponse":{"properties":{"mount_task_id":{"format":"int32","title":"ID of unmount","type":"integer"}},"type":"object"},"UpdateConfiguration":{"properties":{"name":{"description":"A topic-level config key (e.g. `segment.bytes`).","type":"string"},"operation":{"$ref":"#/components/schemas/ConfigAlterOperation"},"value":{"description":"A topic-level config value (e.g. 1073741824).","nullable":true,"type":"string"}},"type":"object"},"UpdateKafkaConnectSecretBody":{"description":"UpdateKafkaConnectSecretRequest is the request of UpdateKafkaConnectSecret.","properties":{"labels":{"additionalProperties":{"type":"string"},"description":"Secret labels.","type":"object"},"secret_data":{"description":"The secret data. Must be Base64-encoded.","format":"byte","type":"string"}},"required":["secret_data"],"type":"object"},"UpdateKafkaConnectSecretResponse":{"description":"UpdateKafkaConnectSecretResponse is the response of UpdateKafkaConnectSecret.","properties":{"secret":{"$ref":"#/components/schemas/Secret"}},"type":"object"},"UpdateMCPServerResponse":{"properties":{"mcp_server":{"$ref":"#/components/schemas/MCPServer"}},"type":"object"},"UpdateMountTaskBody":{"properties":{"action":{"$ref":"#/components/schemas/Action"}},"required":["action"],"type":"object"},"UpdateMountTaskResponse":{"type":"object"},"UpdatePipelineResponse":{"properties":{"pipeline":{"$ref":"#/components/schemas/Pipeline"}},"type":"object"},"UpdateRoleMembershipBody":{"description":"UpdateRoleMembershipRequest is the request to UpdateRoleMembership.","properties":{"add":{"description":"Members to assign to the role.","items":{"$ref":"#/components/schemas/RoleMembership"},"type":"array"},"create":{"description":"Create the role if it doesn't already exist.\nIf the role is created in this way, the “add” list will be respected, but the “remove” list will be ignored.","type":"boolean"},"remove":{"description":"Members to remove from the role.","items":{"$ref":"#/components/schemas/RoleMembership"},"type":"array"}},"type":"object"},"UpdateRoleMembershipResponse":{"description":"UpdateRoleMembershipResponse is the response for UpdateRoleMembership.","properties":{"added":{"description":"Members assigned to the role.","items":{"$ref":"#/components/schemas/RoleMembership"},"type":"array"},"removed":{"description":"Members removed from the role.","items":{"$ref":"#/components/schemas/RoleMembership"},"type":"array"},"role_name":{"description":"The role name.","type":"string"}},"type":"object"},"UpdateSecretBody":{"description":"UpdateSecretRequest is the request of UpdateSecret.","properties":{"labels":{"additionalProperties":{"type":"string"},"description":"Secret labels.","type":"object"},"scopes":{"items":{"$ref":"#/components/schemas/Scope"},"title":"Secret scopes","type":"array"},"secret_data":{"description":"The secret data. Must be Base64-encoded.","format":"byte","type":"string"}},"type":"object"},"UpdateSecretResponse":{"description":"UpdateSecretResponse is the response of UpdateSecret.","properties":{"secret":{"$ref":"#/components/schemas/Secret"}},"type":"object"},"UpdateTopicConfigurationsResponse":{"properties":{"configurations":{"description":"Topic's complete set of configurations after applying this partial patch.","items":{"$ref":"#/components/schemas/Configuration"},"type":"array"}},"type":"object"},"UpdateUserRequest.User":{"properties":{"mechanism":{"$ref":"#/components/schemas/SASLMechanism"},"name":{"description":"Username.","type":"string"},"password":{"description":"Password.","type":"string"}},"type":"object"},"UpdateUserResponse":{"properties":{"user":{"$ref":"#/components/schemas/UpdateUserResponse.User"}},"type":"object"},"UpdateUserResponse.User":{"description":"Updated user's name and SASL mechanism.","properties":{"mechanism":{"$ref":"#/components/schemas/SASLMechanism"},"name":{"type":"string"}},"type":"object"},"UpsertConnectorResponse":{"properties":{"connector":{"$ref":"#/components/schemas/ConnectorSpec"}},"type":"object"},"ValueType":{"description":"The type of value that the quota represents.\n\n - VALUE_TYPE_PRODUCER_BYTE_RATE: The rate at which producers can send data.\n - VALUE_TYPE_CONSUMER_BYTE_RATE: The rate at which consumers can fetch data.\n - VALUE_TYPE_CONTROLLER_MUTATION_RATE: The rate at which topic mutation requests can be made.\n - VALUE_TYPE_REQUEST_PERCENTAGE: The percentage of the total throughput that can be used by the entity.\n\nNot supported in Redpanda","enum":["VALUE_TYPE_PRODUCER_BYTE_RATE","VALUE_TYPE_CONSUMER_BYTE_RATE","VALUE_TYPE_CONTROLLER_MUTATION_RATE","VALUE_TYPE_REQUEST_PERCENTAGE"],"type":"string"},"rpc.Status":{"description":"The `Status` type defines a logical error model that is suitable for\ndifferent programming environments, including REST APIs and RPC APIs. It is\nused by [gRPC](https://github.com/grpc). Each `Status` message contains\nthree pieces of data: error code, error message, and error details.\n\nYou can find out more about this error model and how to work with it in the\n[API Design Guide](https://cloud.google.com/apis/design/errors).","properties":{"code":{"description":"RPC status code, as described [here](https://github.com/googleapis/googleapis/blob/b4c238feaa1097c53798ed77035bbfeb7fc72e96/google/rpc/code.proto#L32).","enum":["OK","CANCELLED","UNKNOWN","INVALID_ARGUMENT","DEADLINE_EXCEEDED","NOT_FOUND","ALREADY_EXISTS","PERMISSION_DENIED","UNAUTHENTICATED","RESOURCE_EXHAUSTED","FAILED_PRECONDITION","ABORTED","OUT_OF_RANGE","UNIMPLEMENTED","INTERNAL","UNAVAILABLE","DATA_LOSS"],"format":"int32","type":"string"},"details":{"items":{"description":"Details of the error.","oneOf":[{"allOf":[{"properties":{"@type":{"description":"Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.","enum":["type.googleapis.com/google.rpc.BadRequest"],"type":"string"}}},{"$ref":"#/components/schemas/BadRequest"}]},{"allOf":[{"properties":{"@type":{"description":"Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.","enum":["type.googleapis.com/google.rpc.ErrorInfo"],"type":"string"}}},{"$ref":"#/components/schemas/ErrorInfo"}]},{"allOf":[{"properties":{"@type":{"description":"Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.","enum":["type.googleapis.com/google.rpc.QuotaFailure"],"type":"string"}}},{"$ref":"#/components/schemas/QuotaFailure"}]},{"allOf":[{"properties":{"@type":{"description":"Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.","enum":["type.googleapis.com/google.rpc.Help"],"type":"string"}}},{"$ref":"#/components/schemas/Help"}]}]},"type":"array"},"message":{"description":"Detailed error message. No compatibility guarantees are given for the text contained in this message.","type":"string"}},"type":"object"},"v1.FailOverResponse":{"properties":{"failed_over_topics":{"items":{"type":"string"},"title":"List of topics that were failed over\nIf shadow_topic_name was specified in the request, this will contain only that topic\nIf shadow_topic_name was not specified, this will contain all topics in the shadow link","type":"array"},"name":{"title":"Name of the shadow link that was failed over","type":"string"}},"type":"object"},"v1.GetShadowLinkResponse":{"properties":{"shadow_link":{"$ref":"#/components/schemas/v1.ShadowLink"}},"type":"object"},"v1.GetShadowTopicResponse":{"properties":{"shadow_topic":{"$ref":"#/components/schemas/v1.ShadowTopic"}},"type":"object"},"v1.ShadowLink":{"properties":{"configurations":{"$ref":"#/components/schemas/ShadowLinkConfigurations"},"name":{"title":"Return name, configuration, and overall state","type":"string"},"state":{"$ref":"#/components/schemas/ShadowLinkState"},"synced_shadow_topic_properties":{"items":{"type":"string"},"type":"array"},"tasks_status":{"items":{"$ref":"#/components/schemas/ShadowLinkTaskStatus"},"type":"array"},"uid":{"type":"string"}},"type":"object"},"v1.ShadowTopic":{"properties":{"partitions":{"items":{"$ref":"#/components/schemas/TopicPartitionInformation"},"type":"array"},"state":{"$ref":"#/components/schemas/ShadowTopicState"},"topic_id":{"type":"string"},"topic_name":{"type":"string"},"total_lag":{"format":"int64","type":"string"},"total_partitions":{"format":"int32","type":"integer"}},"type":"object"}},"securitySchemes":{"auth0":{"description":"RedpandaCloud","flows":{"implicit":{"authorizationUrl":"https://auth.prd.cloud.redpanda.com/oauth/authorize","scopes":{},"x-client-id":"dQjapNIAHhF7EQqQToRla3yEII9sUSap"}},"type":"oauth2"}}},"info":{"title":"Redpanda Cloud Data Plane API","version":"v1"},"openapi":"3.0.3","paths":{"/v1/acls":{"delete":{"description":"Delete all ACLs that match the filter criteria. The `filter.` query string parameters find matching ACLs that meet all specified conditions.","operationId":"ACLService_DeleteACLs","parameters":[{"description":"The type of resource (topic, consumer group, etc.) this\nACL targets.","in":"query","name":"filter.resource_type","required":true,"schema":{"enum":["RESOURCE_TYPE_ANY","RESOURCE_TYPE_TOPIC","RESOURCE_TYPE_GROUP","RESOURCE_TYPE_CLUSTER","RESOURCE_TYPE_TRANSACTIONAL_ID","RESOURCE_TYPE_DELEGATION_TOKEN","RESOURCE_TYPE_USER","RESOURCE_TYPE_REGISTRY","RESOURCE_TYPE_SUBJECT"],"type":"string"}},{"description":"The name of the resource this ACL targets.","in":"query","name":"filter.resource_name","schema":{"type":"string"}},{"description":"The pattern to use for matching the specified resource_name\n(any, exact match, literal, or prefixed).","in":"query","name":"filter.resource_pattern_type","required":true,"schema":{"enum":["RESOURCE_PATTERN_TYPE_ANY","RESOURCE_PATTERN_TYPE_MATCH","RESOURCE_PATTERN_TYPE_LITERAL","RESOURCE_PATTERN_TYPE_PREFIXED"],"type":"string"}},{"description":"The user for whom this ACL applies. With the Kafka simple\nauthorizer, you must include the prefix \"User:\" with the user name.","in":"query","name":"filter.principal","schema":{"type":"string"}},{"description":"The host address to use for this ACL. To allow a principal\naccess from multiple hosts, you must create an ACL for each host.","in":"query","name":"filter.host","schema":{"type":"string"}},{"description":"The operation that is allowed or denied (e.g. READ).","in":"query","name":"filter.operation","required":true,"schema":{"enum":["OPERATION_ANY","OPERATION_ALL","OPERATION_READ","OPERATION_WRITE","OPERATION_CREATE","OPERATION_DELETE","OPERATION_ALTER","OPERATION_DESCRIBE","OPERATION_CLUSTER_ACTION","OPERATION_DESCRIBE_CONFIGS","OPERATION_ALTER_CONFIGS","OPERATION_IDEMPOTENT_WRITE","OPERATION_CREATE_TOKENS","OPERATION_DESCRIBE_TOKENS"],"type":"string"}},{"description":"Whether the operation should be allowed or denied.","in":"query","name":"filter.permission_type","required":true,"schema":{"enum":["PERMISSION_TYPE_ANY","PERMISSION_TYPE_DENY","PERMISSION_TYPE_ALLOW"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteACLsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete ACLs","tags":["Redpanda ACLs"]},"get":{"description":"List all ACLs. The `filter.` query string parameters find matching ACLs that meet all specified conditions.","operationId":"ACLService_ListACLs","parameters":[{"description":"The type of resource (topic, consumer group, etc.) this\nACL targets.","in":"query","name":"filter.resource_type","schema":{"enum":["RESOURCE_TYPE_ANY","RESOURCE_TYPE_TOPIC","RESOURCE_TYPE_GROUP","RESOURCE_TYPE_CLUSTER","RESOURCE_TYPE_TRANSACTIONAL_ID","RESOURCE_TYPE_DELEGATION_TOKEN","RESOURCE_TYPE_USER","RESOURCE_TYPE_REGISTRY","RESOURCE_TYPE_SUBJECT"],"type":"string"}},{"description":"The name of the resource this ACL targets.","in":"query","name":"filter.resource_name","schema":{"type":"string"}},{"description":"The pattern to use for matching the specified resource_name\n(any, exact match, literal, or prefixed).","in":"query","name":"filter.resource_pattern_type","schema":{"enum":["RESOURCE_PATTERN_TYPE_ANY","RESOURCE_PATTERN_TYPE_MATCH","RESOURCE_PATTERN_TYPE_LITERAL","RESOURCE_PATTERN_TYPE_PREFIXED"],"type":"string"}},{"description":"The user for whom this ACL applies. With the Kafka simple\nauthorizer, you must include the prefix \"User:\" with the user name.","in":"query","name":"filter.principal","schema":{"type":"string"}},{"description":"The host address to use for this ACL. To allow a principal\naccess from multiple hosts, you must create an ACL for each host.","in":"query","name":"filter.host","schema":{"type":"string"}},{"description":"The operation that is allowed or denied (e.g. READ).","in":"query","name":"filter.operation","schema":{"enum":["OPERATION_ANY","OPERATION_ALL","OPERATION_READ","OPERATION_WRITE","OPERATION_CREATE","OPERATION_DELETE","OPERATION_ALTER","OPERATION_DESCRIBE","OPERATION_CLUSTER_ACTION","OPERATION_DESCRIBE_CONFIGS","OPERATION_ALTER_CONFIGS","OPERATION_IDEMPOTENT_WRITE","OPERATION_CREATE_TOKENS","OPERATION_DESCRIBE_TOKENS"],"type":"string"}},{"description":"Whether the operation should be allowed or denied.","in":"query","name":"filter.permission_type","schema":{"enum":["PERMISSION_TYPE_ANY","PERMISSION_TYPE_DENY","PERMISSION_TYPE_ALLOW"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListACLsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List ACLs","tags":["Redpanda ACLs"]},"post":{"description":"Create a new ACL.","operationId":"ACLService_CreateACL","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateACLRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateACLResponse"}}},"description":"Created"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create ACL","tags":["Redpanda ACLs"]}},"/v1/cloud-storage/mount-tasks":{"get":{"description":"This operation retrieves the status of a task responsible for mounting or unmounting topics. It provides details on the task’s type (mount or unmount), its current state, and the topics involved.","operationId":"CloudStorageService_ListMountTasks","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListMountTasksResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Retrieve the mount task status","tags":["Cloud Storage"]}},"/v1/cloud-storage/mount-tasks/{id}":{"delete":{"description":"Delete a mount or unmount by ID.","operationId":"CloudStorageService_DeleteMountTask","parameters":[{"description":"Unique identifier of the mount or unmount task to delete.","in":"path","name":"id","required":true,"schema":{"format":"int32","type":"integer"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteMountTaskResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete a mount or unmount","tags":["Cloud Storage"]},"get":{"description":"Retrieves the status of a mount or unmount by ID. The response provides details on the operation type (mount or unmount), its current state, and the topics involved. Use the ID returned when you start the mount or unmount, or use the ListMountTasks endpoint to retrieve a list of IDs.","operationId":"CloudStorageService_GetMountTask","parameters":[{"description":"Unique identifier of the mount or unmount task to retrieve.","in":"path","name":"id","required":true,"schema":{"format":"int32","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMountTaskResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get the status of a mount or unmount by ID","tags":["Cloud Storage"]},"post":{"description":"This operation allows performing an action on an ongoing mount task.","operationId":"CloudStorageService_UpdateMountTask","parameters":[{"description":"ID is the unique identifier of the mount or unmount to update.","in":"path","name":"id","required":true,"schema":{"format":"int32","type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMountTaskBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMountTaskResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update a mount or unmount","tags":["Cloud Storage"]}},"/v1/cloud-storage/topics/mount":{"post":{"description":"Attach mountable topics from object storage to a cluster, making them available for consumption and production again. Mounting a topic reloads its data and state to the local brokers, allowing active use of the topic.","operationId":"CloudStorageService_MountTopics","requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/TopicMount"},"required":["topics"],"type":"array"}}},"required":true,"x-originalParamName":"topics"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MountTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Mount topics from object storage","tags":["Cloud Storage"]}},"/v1/cloud-storage/topics/mountable":{"get":{"description":"Retrieve all topics that are currently unmounted and available to be mounted to the cluster. These topics reside in object storage and can be mounted for consumption or production within the cluster.","operationId":"CloudStorageService_ListMountableTopics","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListMountableTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List mountable topics","tags":["Cloud Storage"]}},"/v1/cloud-storage/topics/unmount":{"post":{"description":"Unmount topics to object storage, freeing up all local cluster resources. Once you unmount a topic, it can no longer be consumed or produced to. It detaches from the active cluster while its data remains safely stored in the external object storage.","operationId":"CloudStorageService_UnmountTopics","requestBody":{"content":{"application/json":{"schema":{"items":{"type":"string"},"required":["topics"],"type":"array"}}},"description":"List of topics to unmount.","required":true,"x-originalParamName":"topics"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmountTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Unmount topics to object storage","tags":["Cloud Storage"]}},"/v1/kafka-connect/clusters":{"get":{"description":"List Connect clusters available in Console.","operationId":"KafkaConnectService_ListConnectClusters","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListConnectClustersResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List Connect clusters","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}":{"get":{"description":"Get information about an available Kafka Connect cluster.","operationId":"KafkaConnectService_GetConnectCluster","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectCluster"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Connect cluster not found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Connect cluster","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors":{"get":{"description":"List connectors managed by the Kafka Connect service.","operationId":"KafkaConnectService_ListConnectors","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Value of the next_page_token field returned by the previous response. If not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListConnectorsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List connectors","tags":["Kafka Connect"]},"post":{"description":"Create a connector with the specified configuration.","operationId":"KafkaConnectService_CreateConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorSpec"}}},"required":true,"x-originalParamName":"connector"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorSpec"}}},"description":"Created"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create connector","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}":{"delete":{"description":"Delete a connector. This operation force stops all tasks and also deletes the connector configuration.","operationId":"KafkaConnectService_DeleteConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Deleted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete connector","tags":["Kafka Connect"]},"get":{"description":"Get information about a connector in a specific cluster.","operationId":"KafkaConnectService_GetConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorSpec"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get connector","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/config":{"get":{"description":"Get the configuration for the connector.","operationId":"KafkaConnectService_GetConnectorConfig","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get connector configuration","tags":["Kafka Connect"]},"put":{"description":"Update the configuration for an existing connector with the specified name, or create a new connector using the given configuration. Returns information about the connector after the change has been made.","operationId":"KafkaConnectService_UpsertConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector. If a connector with this name does not already exist, a new connector is created.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"required":["config"],"type":"object"}}},"description":"Connector configuration property.","required":true,"x-originalParamName":"config"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorSpec"}}},"description":"Updated"},"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorSpec"}}},"description":"Created"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Upsert connector configuration","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/pause":{"put":{"description":"Pause the connector and its tasks, which stops messages from processing until the connector is resumed. This call is asynchronous and may take some time to process.","operationId":"KafkaConnectService_PauseConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{}}},"description":"Pause request accepted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Pause connector","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/restart":{"post":{"description":"Triggers a connector restart. You must specify whether or not tasks are also restarted, and whether only failed connectors are restarted.","operationId":"KafkaConnectService_RestartConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Options"}}},"required":true,"x-originalParamName":"options"},"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Restart connector request success"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Restart connector","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/resume":{"put":{"description":"Resume a paused connector and its tasks, and resumes message processing. This call is asynchronous and may take some time to process. If the connector was not paused, this operation does not do anything.","operationId":"KafkaConnectService_ResumeConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{}}},"description":"Resume request accepted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Resume connector","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/status":{"get":{"description":"Gets the current status of the connector, including the state for each of its tasks, error information, etc.","operationId":"KafkaConnectService_GetConnectorStatus","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorStatus"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get connector status","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/stop":{"put":{"description":"Stops a connector, but does not delete it. All tasks for the connector are shut down completely. This call is asynchronous and may take some time to process.","operationId":"KafkaConnectService_StopConnector","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{}}},"description":"Request accepted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Stop connector","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/topics":{"get":{"description":"Returns a list of connector topic names. If the connector is inactive, this call returns an empty list.","operationId":"KafkaConnectService_ListConnectorTopics","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListConnectorTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List connector topics","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/connectors/{name}/topics/reset":{"put":{"description":"Resets the set of topic names that the connector is using.","operationId":"KafkaConnectService_ResetConnectorTopics","parameters":[{"description":"Unique name of target Connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Name of connector using the topics to be reset.","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Reset connector topics","tags":["Kafka Connect"]}},"/v1/kafka-connect/clusters/{cluster_name}/secrets":{"get":{"description":"List Kafka Connect cluster secrets. Optional: filter based on secret name and labels.","operationId":"SecretService_ListKafkaConnectSecrets","parameters":[{"description":"Unique name of target connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"Substring match on secret name. Case-sensitive.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"This is a request variable of the map type. The query format is \"map_name[key]=value\", e.g. If the map name is Age, the key type is string, and the value type is integer, the query parameter is expressed as Age[\"bob\"]=18","in":"query","name":"filter.labels[string][string]","schema":{"type":"string"}},{"description":"Secret scopes to search for","in":"query","name":"filter.scopes","schema":{"items":{"enum":["SCOPE_REDPANDA_CONNECT","SCOPE_REDPANDA_CLUSTER","SCOPE_MCP_SERVER","SCOPE_AI_AGENT","SCOPE_AI_GATEWAY"],"type":"string"},"type":"array"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListSecretsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List Connect cluster secrets","tags":["Secrets"]},"post":{"description":"Create a Kafka Connect cluster secret.","operationId":"SecretService_CreateKafkaConnectSecret","parameters":[{"description":"Unique name of target connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateKafkaConnectSecretBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetKafkaConnectSecretResponse"}}},"description":"Secret created"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create Connect cluster secret","tags":["Secrets"]}},"/v1/kafka-connect/clusters/{cluster_name}/secrets/{id}":{"delete":{"description":"Delete a Kafka Connect cluster secret.","operationId":"SecretService_DeleteKafkaConnectSecret","parameters":[{"description":"Unique name of target connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"ID of the secret to delete.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Secret deleted successfully"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete Connect cluster secret","tags":["Secrets"]},"get":{"description":"Get a specific Kafka Connect cluster secret.","operationId":"SecretService_GetKafkaConnectSecret","parameters":[{"description":"Unique name of target connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"The ID of the secret to retrieve.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetKafkaConnectSecretResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Connect cluster secret","tags":["Secrets"]},"put":{"description":"Update a Kafka Connect cluster secret.","operationId":"SecretService_UpdateKafkaConnectSecret","parameters":[{"description":"Unique name of target connect cluster. For Redpanda Cloud, use `redpanda`.","in":"path","name":"cluster_name","required":true,"schema":{"type":"string"}},{"description":"ID of the secret to update.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateKafkaConnectSecretBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateKafkaConnectSecretResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update Connect cluster secret","tags":["Secrets"]}},"/v1/monitoring/kafka/connections":{"get":{"description":"List information on recent connections to the cluster.","operationId":"MonitoringService_ListKafkaConnections","parameters":[{"description":"The maximum number of connections to return. If unspecified or 0, a\ndefault value may be applied. The server may return fewer connections\nthan requested due to memory constraints; the limit is set to allow\nlisting all connections for a single broker. Consider filtering by\nnode_id to view connections for specific brokers. Note that paging is\ncurrently not fully supported, and this field only acts as a limit for\nthe first page of data returned. Subsequent pages of data cannot be\nrequested.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Filter expression to apply to the connection list.\nUses a subset of AIP-160 filter syntax supporting:\n- Field comparisons (`=`, `!=`, `\u003c`, `\u003e`, `\u003c=`, `\u003e=`)\n- Logical AND chaining: condition1 AND condition2\n- Nested field access: parent.child = value\n- Escape sequences: field = \"string with \\\"quotes\\\"\"\n- Enum types\n- RFC3339 timestamps and ISO-like duration\n\nLimitations (not supported):\n- Logical OR chaining\n- Parentheses `(` `)` for grouping\n- Map and repeated types\n- HAS (:) operator\n- Negation (-, NOT)\n- Bare literal matching\n\nExample filters:\n- `state = KAFKA_CONNECTION_STATE_OPEN`\n- `idle_duration \u003e 30s AND total_request_statistics.request_count \u003e 100`\n- `authentication_info.user_principal = \"my-producer\"`\n- `recent_request_statistics.produce_bytes \u003e 1000 AND\nclient_software_name = \"kgo\"`\n- `open_time \u003e= 2025-09-01T10:22:54Z`\n\nReference: https://google.aip.dev/160","in":"query","name":"filter","schema":{"type":"string"}},{"description":"Field-based ordering specification following AIP-132 syntax.\nSupports multiple fields with `asc`/`desc` direction indicators.\nExamples:\n- `idle_duration desc` - longest idle connections first\n- `open_time desc, total_request_statistics.request_count desc` - newest\nconnections first, then most active\n- `recent_request_statistics.produce_bytes desc` - connections with\nhighest current produce throughput first\n\nReference: https://google.aip.dev/132#ordering","in":"query","name":"order_by","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListKafkaConnectionsResponse"}}},"description":"Recent connections"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List Recent Connections","tags":["Monitoring"]}},"/v1/quotas":{"get":{"description":"List client quotas. Use filter parameters to narrow results by entity type and filter criteria.","operationId":"QuotaService_ListQuotas","parameters":[{"description":"The type of entity to filter by. If unspecified, all entities will be returned.\n\n - ENTITY_TYPE_USER: Not supported in Redpanda\n - ENTITY_TYPE_IP: Not supported in Redpanda","in":"query","name":"filter.entity_type","schema":{"enum":["ENTITY_TYPE_CLIENT_ID","ENTITY_TYPE_CLIENT_ID_PREFIX","ENTITY_TYPE_USER","ENTITY_TYPE_IP"],"type":"string"}},{"description":"Filter by entity name. If unspecified will return all entities for specified entity type.","in":"query","name":"filter.entity_name","schema":{"type":"string"}},{"description":"If true, the entity_name will match the default entity (e.g., default client-id).","in":"query","name":"filter.match_default","schema":{"type":"boolean"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response. If not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListQuotasResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List quotas","tags":["Quotas"]},"post":{"description":"Create or update client throughput quotas for a single entity. This operation is an upsert.","operationId":"QuotaService_SetQuota","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetQuotaRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetQuotaResponse"}}},"description":"Quota Set"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Set a quota","tags":["Quotas"]}},"/v1/quotas:batchDelete":{"post":{"description":"Delete client quotas for multiple entities and values in a single request.","operationId":"QuotaService_BatchDeleteQuota","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatchDeleteQuotaRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatchDeleteQuotaResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete multiple quotas","tags":["Quotas"]}},"/v1/quotas:batchSet":{"post":{"description":"Create or update client throughput quotas for multiple entities in a single request.","operationId":"QuotaService_BatchSetQuota","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatchSetQuotaRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatchSetQuotaResponse"}}},"description":"Quotas Set"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Set multiple quotas","tags":["Quotas"]}},"/v1/quotas:delete":{"post":{"description":"Delete client quotas for single entity and value.","operationId":"QuotaService_DeleteQuota","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteQuotaRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteQuotaResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete a quota","tags":["Quotas"]}},"/v1/redpanda-connect/components":{"get":{"description":"Returns a JSON list of available [components](https://docs.redpanda.com/redpanda-cloud/develop/connect/components/about), filtered by component type.","operationId":"PipelineService_ListComponents","parameters":[{"in":"query","name":"read_mask","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListComponentsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Retrieve the list of available components","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/config-schema":{"get":{"description":"The configuration schema includes available [components and processors](https://docs.redpanda.com/redpanda-cloud/develop/connect/components/about) in this Redpanda Connect instance.","operationId":"PipelineService_GetPipelineServiceConfigSchema","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetPipelineServiceConfigSchemaResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Retrieve the schema for Redpanda Connect pipeline configurations","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/mcp-servers":{"get":{"description":"Lists MCP servers. Optionally filter by display name, tags, or secret ID.","operationId":"MCPServerService_ListMCPServers","parameters":[{"description":"Returns MCP servers that partially match this name.","in":"query","name":"filter.display_name_contains","schema":{"type":"string"}},{"description":"This is a request variable of the map type. The query format is \"map_name[key]=value\", e.g. If the map name is Age, the key type is string, and the value type is integer, the query parameter is expressed as Age[\"bob\"]=18","in":"query","name":"filter.tags[string]","schema":{"type":"string"}},{"description":"Filters MCP servers that reference this secret ID in their tool configurations.","in":"query","name":"filter.secret_id","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListMCPServersResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List MCP servers","tags":["Remote MCP"]},"post":{"description":"Create a new MCP server.","operationId":"MCPServerService_CreateMCPServer","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServerCreate"}}},"required":true,"x-originalParamName":"mcp_server"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServer"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create MCP server","tags":["Remote MCP"]}},"/v1/redpanda-connect/mcp-servers/{id}":{"delete":{"description":"Delete an MCP server.","operationId":"MCPServerService_DeleteMCPServer","parameters":[{"description":"MCP server ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Deleted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete an MCP server","tags":["Remote MCP"]},"get":{"description":"Get a specific MCP server.","operationId":"MCPServerService_GetMCPServer","parameters":[{"description":"MCP server ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServer"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get MCP server","tags":["Remote MCP"]},"put":{"description":"Update the configuration of an MCP server.","operationId":"MCPServerService_UpdateMCPServer","parameters":[{"description":"MCP server ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies which fields to update. If not provided, updates all fields.","in":"query","name":"update_mask","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServerUpdate"}}},"required":true,"x-originalParamName":"mcp_server"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServer"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update an MCP server","tags":["Remote MCP"]}},"/v1/redpanda-connect/mcp-servers/{id}:start":{"post":{"description":"Start a stopped MCP server.","operationId":"MCPServerService_StartMCPServer","parameters":[{"description":"MCP server ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServer"}}},"description":"Started"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Start an MCP server","tags":["Remote MCP"]}},"/v1/redpanda-connect/mcp-servers/{id}:stop":{"post":{"description":"Stop a running MCP server.","operationId":"MCPServerService_StopMCPServer","parameters":[{"description":"MCP server ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServer"}}},"description":"Stopped"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Stop an MCP server","tags":["Remote MCP"]}},"/v1/redpanda-connect/mcp-servers:getConfigSchema":{"get":{"description":"Returns the configuration schema for MCP server tools, including available components and processors.","operationId":"MCPServerService_GetMCPServerServiceConfigSchema","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMCPServerServiceConfigSchemaResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get MCP server configuration schema","tags":["Remote MCP"]}},"/v1/redpanda-connect/mcp-servers:lint-config":{"post":{"description":"Validates a given MCP tool's configuration and returns linting hints. Each tool's YAML configuration is validated. If no problems are found, the response is empty.","operationId":"MCPServerService_LintMCPConfig","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LintMCPConfigRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LintMCPConfigResponse"}}},"description":"Linting finished. See `lint_hints` for details."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Lint a MCP tools configuration","tags":["Remote MCP"]}},"/v1/redpanda-connect/pipelines":{"get":{"description":"List Redpanda Connect pipelines. Optional: filter based on pipeline name.","operationId":"PipelineService_ListPipelines","parameters":[{"description":"Any pipelines that partially match this name will be returned.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"This is a request variable of the map type. The query format is \"map_name[key]=value\", e.g. If the map name is Age, the key type is string, and the value type is integer, the query parameter is expressed as Age[\"bob\"]=18","in":"query","name":"filter.tags[string]","schema":{"type":"string"}},{"in":"query","name":"filter.secret_id","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListPipelinesResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List Redpanda Connect pipelines","tags":["Redpanda Connect Pipelines"]},"post":{"description":"Create a new Redpanda Connect pipeline.","operationId":"PipelineService_CreatePipeline","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PipelineCreate"}}},"required":true,"x-originalParamName":"pipeline"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pipeline"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create Redpanda Connect pipeline","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/pipelines-by-secrets":{"get":{"description":"Get Redpanda Connect pipelines by secrets.","operationId":"PipelineService_GetPipelinesBySecrets","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetPipelinesBySecretsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Redpanda Connect pipelines by secrets","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/pipelines-for-secret":{"get":{"description":"Get Redpanda Connect pipelines for a given secret.","operationId":"PipelineService_GetPipelinesForSecret","parameters":[{"description":"Secret ID.","in":"query","name":"secret_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetPipelinesForSecretResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Redpanda Connect pipelines for secret","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/pipelines/{id}":{"delete":{"description":"Delete a Redpanda Connect pipeline.","operationId":"PipelineService_DeletePipeline","parameters":[{"description":"Pipeline ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Deleted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete a Redpanda Connect pipeline","tags":["Redpanda Connect Pipelines"]},"get":{"description":"Get a specific Redpanda Connect pipeline.","operationId":"PipelineService_GetPipeline","parameters":[{"description":"Pipeline ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pipeline"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Redpanda Connect pipeline","tags":["Redpanda Connect Pipelines"]},"put":{"description":"Update the [configuration](https://docs.redpanda.com/redpanda-cloud/develop/connect/configuration/about) of a Redpanda Connect pipeline.","operationId":"PipelineService_UpdatePipeline","parameters":[{"description":"Pipeline ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies which fields should be updated. If not provided,\nall fields will be updated.","in":"query","name":"update_mask","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PipelineUpdate"}}},"required":true,"x-originalParamName":"pipeline"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pipeline"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update a Redpanda Connect pipeline","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/pipelines/{id}/start":{"put":{"description":"Start a stopped Redpanda Connect pipeline.","operationId":"PipelineService_StartPipeline","parameters":[{"description":"Pipeline ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pipeline"}}},"description":"Started"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Start a Redpanda Connect pipeline","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/pipelines/{id}/stop":{"put":{"description":"Stop a running Redpanda Connect pipeline.","operationId":"PipelineService_StopPipeline","parameters":[{"description":"Pipeline ID.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pipeline"}}},"description":"Stopped"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Stops a Redpanda Connect pipeline","tags":["Redpanda Connect Pipelines"]}},"/v1/redpanda-connect/pipelines:lint-config":{"post":{"description":"Validates a supplied Redpanda Connect pipeline YAML and returns a list of linting hints. If no problems are found, the list is empty.","operationId":"PipelineService_LintPipelineConfig","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LintPipelineConfigRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LintPipelineConfigResponse"}}},"description":"Linting finished. See `lint_hints` for details."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Lint a Redpanda Connect pipeline configuration","tags":["Redpanda Connect Pipelines"]}},"/v1/roles":{"get":{"description":"List roles. Optional: filter based on role name and principal.","operationId":"SecurityService_ListRoles","parameters":[{"description":"Filter results only roles named with the prefix.","in":"query","name":"filter.name_prefix","schema":{"type":"string"}},{"description":"Filter results to only roles with names which contain the string.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"Return only roles assigned to this principal. The principal must contain\nthe principal type. For example: \"User:jane\" is a valid principal format.","in":"query","name":"filter.principal","schema":{"type":"string"}},{"description":"Page size.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRolesResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List roles","tags":["Security"]},"post":{"description":"Create a role.","operationId":"SecurityService_CreateRole","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Role"}}},"description":"The role to create.","required":true,"x-originalParamName":"role"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRoleResponse"}}},"description":"Role created"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create role","tags":["Security"]}},"/v1/roles/{role_name}":{"delete":{"description":"Delete a role.","operationId":"SecurityService_DeleteRole","parameters":[{"description":"The role name.","in":"path","name":"role_name","required":true,"schema":{"type":"string"}},{"description":"Whether to delete the ACLs bound to the role.","in":"query","name":"delete_acls","schema":{"type":"boolean"}}],"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Role deleted successfully"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete role","tags":["Security"]},"get":{"description":"Get a role.","operationId":"SecurityService_GetRole","parameters":[{"description":"The role name.","in":"path","name":"role_name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRoleResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get role","tags":["Security"]},"put":{"description":"Update a role.","operationId":"SecurityService_UpdateRoleMembership","parameters":[{"description":"The role name.","in":"path","name":"role_name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateRoleMembershipBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateRoleMembershipResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update role","tags":["Security"]}},"/v1/roles/{role_name}/members":{"get":{"description":"List members assigned to a role.","operationId":"SecurityService_ListRoleMembers","parameters":[{"description":"The role name.","in":"path","name":"role_name","required":true,"schema":{"type":"string"}},{"description":"Filter results to only members with names which contain the string.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"Page size.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRoleMembersResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List role members","tags":["Security"]}},"/v1/secret-scopes":{"get":{"description":"List supported secret scopes.","operationId":"SecretService_ListSecretScopes","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListSecretScopesResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List secret scopes","tags":["Secrets"]}},"/v1/secrets":{"get":{"description":"List secrets. Optional: filter based on secret name and labels.","operationId":"SecretService_ListSecrets","parameters":[{"description":"Substring match on secret name. Case-sensitive.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"This is a request variable of the map type. The query format is \"map_name[key]=value\", e.g. If the map name is Age, the key type is string, and the value type is integer, the query parameter is expressed as Age[\"bob\"]=18","in":"query","name":"filter.labels[string]","schema":{"type":"string"}},{"description":"Secret scopes to search for","in":"query","name":"filter.scopes","schema":{"items":{"enum":["SCOPE_REDPANDA_CONNECT","SCOPE_REDPANDA_CLUSTER","SCOPE_MCP_SERVER","SCOPE_AI_AGENT","SCOPE_AI_GATEWAY"],"type":"string"},"type":"array"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListSecretsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List secrets","tags":["Secrets"]},"post":{"description":"Create a secret.","operationId":"SecretService_CreateSecret","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSecretRequest"}}},"description":"CreateSecretRequest is the request of CreateSecret.","required":true,"x-originalParamName":"body"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSecretResponse"}}},"description":"Secret created"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create secret","tags":["Secrets"]}},"/v1/secrets/resources":{"get":{"description":"Get resources by secret.","operationId":"SecretService_ListResources","parameters":[{"in":"query","name":"filter.secret_id","schema":{"type":"string"}},{"in":"query","name":"filter.scopes","schema":{"items":{"enum":["SCOPE_REDPANDA_CONNECT","SCOPE_REDPANDA_CLUSTER","SCOPE_MCP_SERVER","SCOPE_AI_AGENT","SCOPE_AI_GATEWAY"],"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListResourcesResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get resources by secret","tags":["Secrets"]}},"/v1/secrets/{id}":{"delete":{"description":"Delete a secret.","operationId":"SecretService_DeleteSecret","parameters":[{"description":"The id of the secret to delete.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Secret deleted successfully"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete secret","tags":["Secrets"]},"get":{"description":"Get a secret.","operationId":"SecretService_GetSecret","parameters":[{"description":"The id of the secret to retrieve.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSecretResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get secret","tags":["Secrets"]},"put":{"description":"Update a secret.","operationId":"SecretService_UpdateSecret","parameters":[{"description":"Secret identifier.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSecretBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSecretResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update secret","tags":["Secrets"]}},"/v1/shadow-links/{name}":{"get":{"description":"Retrieve details of a specific shadow link by name.","operationId":"ShadowLinkService_GetShadowLink","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1.GetShadowLinkResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Shadow Link","tags":["Shadow Links (Data Plane)"]}},"/v1/shadow-links/{name}/failover":{"post":{"description":"Fail over a shadow link or a specific shadow topic within a link.","operationId":"ShadowLinkService_FailOver","parameters":[{"description":"The name of the shadow link to fail over","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FailOverBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1.FailOverResponse"}}},"description":"Failover accepted and initiated"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Fail Over Shadow Link","tags":["Shadow Links (Data Plane)"]}},"/v1/shadow-links/{name}/metrics":{"get":{"description":"Retrieve metrics for a specific shadow link, including total topics replicated, failed over topics, and error topics.","operationId":"ShadowLinkService_GetShadowMetrics","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetShadowMetricsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Shadow Link Metrics","tags":["Shadow Links (Data Plane)"]}},"/v1/shadow-links/{shadow_link_name}/topic":{"get":{"description":"List shadow topic status information for a specific shadow link. Optional: filter based on topic name.","operationId":"ShadowLinkService_ListShadowLinkTopics","parameters":[{"in":"path","name":"shadow_link_name","required":true,"schema":{"type":"string"}},{"description":"Substring match on shadow topic name. Case-sensitive.","in":"query","name":"filter.topic_name_contains","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListShadowLinkTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List Shadow Link Topics","tags":["Shadow Links (Data Plane)"]}},"/v1/shadow-links/{shadow_link_name}/topic/{topic_name}":{"get":{"description":"Retrieve details of a specific shadow topic within a shadow link.","operationId":"ShadowLinkService_GetShadowTopic","parameters":[{"in":"path","name":"shadow_link_name","required":true,"schema":{"type":"string"}},{"in":"path","name":"topic_name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1.GetShadowTopicResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get Shadow Topic","tags":["Shadow Links (Data Plane)"]}},"/v1/topics":{"get":{"description":"List topics, with partition count and replication factor. Optional: filter based on topic name.","operationId":"TopicService_ListTopics","parameters":[{"description":"Substring match on topic name. Case-sensitive.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response. If not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List topics","tags":["Topics"]},"post":{"description":"Create a [topic](https://docs.redpanda.com/redpanda-cloud/get-started/create-topic/).","operationId":"TopicService_CreateTopic","parameters":[{"description":"If true, makes this request a dry run; everything is validated but\nno topics are actually created.","in":"query","name":"validate_only","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTopicRequest.Topic"}}},"description":"The topic to create.","required":true,"x-originalParamName":"topic"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTopicResponse"}}},"description":"Topic created"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create topic","tags":["Topics"]}},"/v1/topics-partitions":{"patch":{"description":"Add partitions to existing topics. Depending on the partitioning strategy used, this may impact ordering guarantees.","operationId":"TopicService_AddPartitionsToTopics","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddPartitionsToTopicsRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddPartitionsToTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Add topic partitions","tags":["Topics"]},"put":{"description":"Set partition counts for existing topics. New value must be equal to or larger than the current count of partitions in the topic. All topics will have the same final count of partitions. Depending on the partitioning strategy used, this may impact ordering guarantees.","operationId":"TopicService_SetPartitionsToTopics","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetPartitionsToTopicsRequest"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetPartitionsToTopicsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Set topic partitions","tags":["Topics"]}},"/v1/topics/{topic_name}":{"delete":{"description":"Delete the Kafka topic with the requested name.","operationId":"TopicService_DeleteTopic","parameters":[{"description":"Topic name.","in":"path","name":"topic_name","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"schema":{}}},"description":"Topic deleted successfully"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Requested topic does not exist"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete topic","tags":["Topics"]}},"/v1/topics/{topic_name}/configurations":{"get":{"description":"Get key-value configs for a topic.","operationId":"TopicService_GetTopicConfigurations","parameters":[{"description":"Topic name","in":"path","name":"topic_name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTopicConfigurationsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get topic configurations","tags":["Topics"]},"patch":{"description":"Update a subset of the topic configurations.","operationId":"TopicService_UpdateTopicConfigurations","parameters":[{"description":"Topic name","in":"path","name":"topic_name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/UpdateConfiguration"},"type":"array"}}},"required":true,"x-originalParamName":"configurations"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTopicConfigurationsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update topic configuration","tags":["Topics"]},"put":{"description":"Update the entire set of key-value configurations for a topic. Config entries that are not provided in the request are removed and will fall back to their default values.","operationId":"TopicService_SetTopicConfigurations","parameters":[{"description":"Name of topic.","in":"path","name":"topic_name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/SetConfiguration"},"type":"array"}}},"required":true,"x-originalParamName":"configurations"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetTopicConfigurationsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Set topic configurations","tags":["Topics"]}},"/v1/topics/{topic_name}/partitions":{"patch":{"description":"Add partitions to an existing topic. Depending on the partitioning strategy used, this may impact ordering guarantees.","operationId":"TopicService_AddTopicPartitions","parameters":[{"description":"The topic name.","in":"path","name":"topic_name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddTopicPartitionsBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddTopicPartitionsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Add topic partitions","tags":["Topics"]},"put":{"description":"Set partitions to an existing topic. New value must be equal to or larger than the current count of partitions in the topic. Depending on the partitioning strategy used, this may impact ordering guarantees.","operationId":"TopicService_SetTopicPartitions","parameters":[{"description":"The topic name.","in":"path","name":"topic_name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetTopicPartitionsBody"}}},"required":true,"x-originalParamName":"body"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetTopicPartitionsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Set topic partitions","tags":["Topics"]}},"/v1/transforms":{"get":{"description":"Retrieve a list of Wasm transforms. Optional: filter based on transform name.","operationId":"TransformService_ListTransforms","parameters":[{"description":"Substring match on transform name. Case-sensitive.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"example":{"next_page_token":"","transforms":[{"environment_variables":[],"input_topic_name":"topic1","name":"transform1","output_topic_names":["output-topic11","output-topic12"],"statuses":[{"broker_id":1,"lag":1,"partition_id":1,"status":"PARTITION_STATUS_RUNNING"}]},{"environment_variables":[],"input_topic_name":"topic2","name":"transform2","output_topic_names":["output-topic21","output-topic22"],"statuses":[{"broker_id":2,"lag":2,"partition_id":2,"status":"PARTITION_STATUS_RUNNING"}]}]},"schema":{"$ref":"#/components/schemas/ListTransformsResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List transforms","tags":["Wasm Transforms"]},"put":{"description":"Initiate deployment of a new Wasm transform. This endpoint uses multipart/form-data encoding. Following deployment, a brief period is required before the Wasm transform becomes operational. Monitor the partition statuses to check whether the transform is active. This usually takes around 3s, but no longer than 10s.","operationId":"TransformService_DeployTransform","requestBody":{"content":{"multipart/form-data":{"schema":{"example":"{\"name\":\"redact-orders\", \"input_topic_name\":\"orders\", \"output_topic_names\":[\"orders-redacted\"], \"environment_variables\":[{\"key\":\"LOGGER_LEVEL\", \"value\":\"DEBUG\"}]}","properties":{"metadata":{"$ref":"#/components/schemas/DeployTransformRequest"},"wasm_binary":{"description":"Binary file containing the compiled WASM transform. The maximum size for this file is 10MiB.","format":"binary","type":"string"}},"type":"object"}}},"description":"Transform metadata as well as the WASM binary","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransformMetadata"}}},"description":"Created"}},"summary":"Deploy Transform","tags":["Wasm Transforms"]}},"/v1/transforms/{name}":{"delete":{"description":"Delete a Wasm transform with the requested name.","operationId":"TransformService_DeleteTransform","parameters":[{"description":"Name of transform.","example":{"name":"transform1"},"in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"example":{},"schema":{}}},"description":"Transform deleted successfully"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete transform","tags":["Wasm Transforms"]},"get":{"description":"Get a specific Wasm transform.","operationId":"TransformService_GetTransform","parameters":[{"description":"Name of transform.","example":{"name":"transform1"},"in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"example":{"transform":{"environment_variables":[],"input_topic_name":"topic1","name":"transform1","output_topic_names":["output-topic1","output-topic2"],"statuses":[{"broker_id":1,"lag":1,"partition_id":1,"status":"PARTITION_STATUS_RUNNING"}]}},"schema":{"$ref":"#/components/schemas/GetTransformResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Get transform","tags":["Wasm Transforms"]}},"/v1/users":{"get":{"description":"List users. Optional: filter based on username.","operationId":"UserService_ListUsers","parameters":[{"description":"Username.","in":"query","name":"filter.name","schema":{"type":"string"}},{"description":"Substring match on username. Case-sensitive.","in":"query","name":"filter.name_contains","schema":{"type":"string"}},{"description":"Limit the paginated response to a number of items. Defaults to 100. Use -1 to disable pagination.","in":"query","name":"page_size","schema":{"format":"int32","type":"integer"}},{"description":"Value of the next_page_token field returned by the previous response.\nIf not provided, the system assumes the first page is requested.","in":"query","name":"page_token","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"example":{"next_page_token":"","users":[{"name":"payment-service"},{"name":"jane"}]},"schema":{"$ref":"#/components/schemas/ListUsersResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"List users","tags":["Redpanda Users"]},"post":{"description":"Create a new user.","operationId":"UserService_CreateUser","requestBody":{"content":{"application/json":{"example":{"mechanism":"SASL_MECHANISM_SCRAM_SHA_256","name":"payment-service","password":"secure-password"},"schema":{"$ref":"#/components/schemas/CreateUserRequest.User"}}},"required":true,"x-originalParamName":"user"},"responses":{"201":{"content":{"application/json":{"example":{"user":{"mechanism":"SASL_MECHANISM_SCRAM_SHA_256","name":"payment-service"}},"schema":{"$ref":"#/components/schemas/CreateUserRequest.User"}}},"description":"User created"},"400":{"content":{"application/json":{"example":{"code":"INVALID_ARGUMENT","details":[{"@type":"type.googleapis.com/google.rpc.ErrorInfo","domain":"redpanda.com/dataplane","metadata":{},"reason":"REASON_INVALID_INPUT"},{"@type":"type.googleapis.com/google.rpc.BadRequest","field_violations":[{"description":"value length must be at least 3 characters","field":"user.password","localized_message":null,"reason":""},{"description":"value is required","field":"user.mechanism","localized_message":null,"reason":""}]}],"message":"provided parameters are invalid"},"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Bad request. Check API documentation and update request."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Create user","tags":["Redpanda Users"]}},"/v1/users/{name}":{"delete":{"description":"Delete the specified user","operationId":"UserService_DeleteUser","parameters":[{"description":"Username","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"204":{"content":{"application/json":{"example":{},"schema":{}}},"description":"User deleted successfully"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"404":{"content":{"application/json":{"example":{"code":"NOT_FOUND","details":[{"@type":"type.googleapis.com/google.rpc.ErrorInfo","domain":"redpanda.com/dataplane","metadata":{},"reason":"REASON_RESOURCE_NOT_FOUND"}],"message":"user not found"},"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Delete user","tags":["Redpanda Users"]}},"/v1/users/{user.name}":{"put":{"description":"Update a user's credentials.","operationId":"UserService_UpdateUser","parameters":[{"description":"Username.","in":"path","name":"user.name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"example":{"user":{"mechanism":"SASL_MECHANISM_SCRAM_SHA_256","password":"new-password"}},"schema":{"properties":{"mechanism":{"$ref":"#/components/schemas/SASLMechanism"},"password":{"description":"Password.","type":"string"}},"type":"object"}}},"required":true,"x-originalParamName":"user"},"responses":{"200":{"content":{"application/json":{"example":{"user":{"mechanism":"SASL_MECHANISM_SCRAM_SHA_256","name":"payment-service"}},"schema":{"$ref":"#/components/schemas/UpdateUserResponse.User"}}},"description":"OK"},"400":{"content":{"application/json":{"example":{"code":"INVALID_ARGUMENT","details":[{"@type":"type.googleapis.com/google.rpc.ErrorInfo","domain":"redpanda.com/dataplane","metadata":{},"reason":"REASON_INVALID_INPUT"},{"@type":"type.googleapis.com/google.rpc.BadRequest","field_violations":[{"description":"value length must be at least 3 characters","field":"user.password","localized_message":null,"reason":""},{"description":"value is required","field":"user.mechanism","localized_message":null,"reason":""}]}],"message":"provided parameters are invalid"},"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Bad request. Check API documentation and update request."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Unauthenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"Internal Server Error. Reach out to support."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpc.Status"}}},"description":"An unexpected error response."}},"summary":"Update user","tags":["Redpanda Users"]}}},"security":[{"auth0":[]}],"servers":[{"description":"Data Plane API","url":"{dataplane_api_url}","variables":{"dataplane_api_url":{"default":"https://{dataplane_api_url}","description":"Find the Data Plane API base URL of a cluster by calling the Get Cluster endpoint of the Control Plane API. The dataplane_api.url field is returned in the response body.\u003cbr\u003e\u003cbr\u003e\n\t\t\t\t\tExample (Dedicated): \"https://api-a4cb21.ck09mi9c4vs17hng9gig.fmc.prd.cloud.redpanda.com\"\u003cbr\u003e\n\t\t\t\t\tExample (BYOC): \"https://api-a4cb21.ck09mi9c4vs17hng9gig.byoc.prd.cloud.redpanda.com\""}}}],"tags":[{"description":"Manage Redpanda access control lists (ACLs). See [Redpanda Cloud Authorization](https://docs.redpanda.com/redpanda-cloud/security/authorization/cloud-authorization/) for more information.","name":"Redpanda ACLs"},{"description":"Manage Redpanda topics stored in object storage. See: [Mountable Topics](https://docs.redpanda.com/redpanda-cloud/manage/mountable-topics/)","name":"Cloud Storage"},{"description":"Manage Wasm transforms in Redpanda.","name":"Wasm Transforms"},{"description":"Manage [connectors](https://docs.redpanda.com/redpanda-cloud/develop/managed-connectors/) and interact with the Kafka Connect API.","name":"Kafka Connect"},{"description":"Create and manage [Redpanda Connect](https://docs.redpanda.com/redpanda-cloud/develop/connect/about) pipelines and their configurations.","name":"Redpanda Connect Pipelines"},{"description":"Create and manage MCP servers and their configurations.","name":"Remote MCP"},{"description":"Monitoring operations for Redpanda.","name":"Monitoring"},{"description":"Manage client throughput limits. See [Redpanda Client Throughput Limits](https://docs.redpanda.com/current/manage/cluster-maintenance/manage-throughput/#client-throughput-limits) for more information.","name":"Quotas"},{"description":"Manage [secrets](https://docs.redpanda.com/redpanda-cloud/security/secrets) for Redpanda Cloud.","name":"Secrets"},{"description":"Manage Redpanda roles.","name":"Security"},{"description":"Data plane operations for Redpanda shadow links.","name":"Shadow Links (Data Plane)"},{"description":"Manage Redpanda topics.","name":"Topics"},{"description":"Manage Redpanda users. For more information, see [Role-Based Access Control](https://docs.redpanda.com/redpanda-cloud/security/authorization/rbac/).","name":"Redpanda Users"}]} \ No newline at end of file diff --git a/proto/gen/openapi/openapi.yaml b/proto/gen/openapi/openapi.yaml index 9946e9b7d5..9b3eb8d69a 100644 --- a/proto/gen/openapi/openapi.yaml +++ b/proto/gen/openapi/openapi.yaml @@ -7833,7 +7833,7 @@ paths: content: multipart/form-data: schema: - example: '{"name":"redact-orders","input_topic_name":"orders","output_topic_names":["orders-redacted"],"environment_variables":[{"key":"LOGGER_LEVEL","value":"DEBUG"}]}' + example: '{"name":"redact-orders", "input_topic_name":"orders", "output_topic_names":["orders-redacted"], "environment_variables":[{"key":"LOGGER_LEVEL", "value":"DEBUG"}]}' properties: metadata: $ref: '#/components/schemas/DeployTransformRequest'