From 1df63724445980ab903b00e99834c476a1bf3cb3 Mon Sep 17 00:00:00 2001 From: Anita Ruangrotsakun <138700973+anitarua@users.noreply.github.com> Date: Fri, 22 Sep 2023 11:45:09 -0700 Subject: [PATCH] chore: copy over new protos (#358) * chore: copy over new protos * run linter --- internal/protos/auth.pb.go | 1361 ++------- internal/protos/auth.proto | 78 +- internal/protos/auth_grpc.pb.go | 2 +- internal/protos/cacheclient.pb.go | 3187 ++++++++++++---------- internal/protos/cacheclient.proto | 19 + internal/protos/cacheclient_grpc.pb.go | 39 +- internal/protos/cacheping.pb.go | 2 +- internal/protos/cacheping_grpc.pb.go | 2 +- internal/protos/cachepubsub.pb.go | 2 +- internal/protos/cachepubsub_grpc.pb.go | 2 +- internal/protos/controlclient.pb.go | 1015 +++++-- internal/protos/controlclient.proto | 48 + internal/protos/controlclient_grpc.pb.go | 113 +- internal/protos/extensions.pb.go | 2 +- internal/protos/permissionmessages.pb.go | 1266 +++++++++ internal/protos/permissionmessages.proto | 99 + internal/protos/token.pb.go | 342 +++ internal/protos/token.proto | 38 + internal/protos/token_grpc.pb.go | 110 + 19 files changed, 4811 insertions(+), 2916 deletions(-) create mode 100644 internal/protos/permissionmessages.pb.go create mode 100644 internal/protos/permissionmessages.proto create mode 100644 internal/protos/token.pb.go create mode 100644 internal/protos/token.proto create mode 100644 internal/protos/token_grpc.pb.go diff --git a/internal/protos/auth.pb.go b/internal/protos/auth.pb.go index 3f9ad4e4..6417667d 100644 --- a/internal/protos/auth.pb.go +++ b/internal/protos/auth.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.31.0 -// protoc v4.23.3 +// protoc v3.20.3 // source: auth.proto package client_sdk_go @@ -21,153 +21,6 @@ const ( _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) -// Aliases for categories of functionality. -type XGenerateApiTokenRequest_CacheRole int32 - -const ( - XGenerateApiTokenRequest_CachePermitNone XGenerateApiTokenRequest_CacheRole = 0 - // Restricts access to apis that read and write data from caches: No higher level resource description or modification. - XGenerateApiTokenRequest_CacheReadWrite XGenerateApiTokenRequest_CacheRole = 1 - // Restricts access to apis that read from caches: No higher level resource description or modification. - XGenerateApiTokenRequest_CacheReadOnly XGenerateApiTokenRequest_CacheRole = 2 -) - -// Enum value maps for XGenerateApiTokenRequest_CacheRole. -var ( - XGenerateApiTokenRequest_CacheRole_name = map[int32]string{ - 0: "CachePermitNone", - 1: "CacheReadWrite", - 2: "CacheReadOnly", - } - XGenerateApiTokenRequest_CacheRole_value = map[string]int32{ - "CachePermitNone": 0, - "CacheReadWrite": 1, - "CacheReadOnly": 2, - } -) - -func (x XGenerateApiTokenRequest_CacheRole) Enum() *XGenerateApiTokenRequest_CacheRole { - p := new(XGenerateApiTokenRequest_CacheRole) - *p = x - return p -} - -func (x XGenerateApiTokenRequest_CacheRole) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (XGenerateApiTokenRequest_CacheRole) Descriptor() protoreflect.EnumDescriptor { - return file_auth_proto_enumTypes[0].Descriptor() -} - -func (XGenerateApiTokenRequest_CacheRole) Type() protoreflect.EnumType { - return &file_auth_proto_enumTypes[0] -} - -func (x XGenerateApiTokenRequest_CacheRole) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use XGenerateApiTokenRequest_CacheRole.Descriptor instead. -func (XGenerateApiTokenRequest_CacheRole) EnumDescriptor() ([]byte, []int) { - return file_auth_proto_rawDescGZIP(), []int{2, 0} -} - -// Aliases for categories of functionality. -type XGenerateApiTokenRequest_TopicRole int32 - -const ( - XGenerateApiTokenRequest_TopicPermitNone XGenerateApiTokenRequest_TopicRole = 0 - // Restricts access to apis that read and write data from topics: No higher level resource description or modification. - XGenerateApiTokenRequest_TopicReadWrite XGenerateApiTokenRequest_TopicRole = 1 - // Restricts access to apis that read from topics: No higher level resource description or modification. - XGenerateApiTokenRequest_TopicReadOnly XGenerateApiTokenRequest_TopicRole = 2 -) - -// Enum value maps for XGenerateApiTokenRequest_TopicRole. -var ( - XGenerateApiTokenRequest_TopicRole_name = map[int32]string{ - 0: "TopicPermitNone", - 1: "TopicReadWrite", - 2: "TopicReadOnly", - } - XGenerateApiTokenRequest_TopicRole_value = map[string]int32{ - "TopicPermitNone": 0, - "TopicReadWrite": 1, - "TopicReadOnly": 2, - } -) - -func (x XGenerateApiTokenRequest_TopicRole) Enum() *XGenerateApiTokenRequest_TopicRole { - p := new(XGenerateApiTokenRequest_TopicRole) - *p = x - return p -} - -func (x XGenerateApiTokenRequest_TopicRole) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (XGenerateApiTokenRequest_TopicRole) Descriptor() protoreflect.EnumDescriptor { - return file_auth_proto_enumTypes[1].Descriptor() -} - -func (XGenerateApiTokenRequest_TopicRole) Type() protoreflect.EnumType { - return &file_auth_proto_enumTypes[1] -} - -func (x XGenerateApiTokenRequest_TopicRole) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use XGenerateApiTokenRequest_TopicRole.Descriptor instead. -func (XGenerateApiTokenRequest_TopicRole) EnumDescriptor() ([]byte, []int) { - return file_auth_proto_rawDescGZIP(), []int{2, 1} -} - -type XGenerateApiTokenRequest_SuperUserPermissions int32 - -const ( - XGenerateApiTokenRequest_SuperUser XGenerateApiTokenRequest_SuperUserPermissions = 0 -) - -// Enum value maps for XGenerateApiTokenRequest_SuperUserPermissions. -var ( - XGenerateApiTokenRequest_SuperUserPermissions_name = map[int32]string{ - 0: "SuperUser", - } - XGenerateApiTokenRequest_SuperUserPermissions_value = map[string]int32{ - "SuperUser": 0, - } -) - -func (x XGenerateApiTokenRequest_SuperUserPermissions) Enum() *XGenerateApiTokenRequest_SuperUserPermissions { - p := new(XGenerateApiTokenRequest_SuperUserPermissions) - *p = x - return p -} - -func (x XGenerateApiTokenRequest_SuperUserPermissions) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (XGenerateApiTokenRequest_SuperUserPermissions) Descriptor() protoreflect.EnumDescriptor { - return file_auth_proto_enumTypes[2].Descriptor() -} - -func (XGenerateApiTokenRequest_SuperUserPermissions) Type() protoreflect.EnumType { - return &file_auth_proto_enumTypes[2] -} - -func (x XGenerateApiTokenRequest_SuperUserPermissions) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use XGenerateApiTokenRequest_SuperUserPermissions.Descriptor instead. -func (XGenerateApiTokenRequest_SuperUserPermissions) EnumDescriptor() ([]byte, []int) { - return file_auth_proto_rawDescGZIP(), []int{2, 2} -} - type XLoginRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -324,9 +177,9 @@ type XGenerateApiTokenRequest struct { // // *XGenerateApiTokenRequest_Never_ // *XGenerateApiTokenRequest_Expires_ - Expiry isXGenerateApiTokenRequest_Expiry `protobuf_oneof:"expiry"` - AuthToken string `protobuf:"bytes,3,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"` - Permissions *XGenerateApiTokenRequest_Permissions `protobuf:"bytes,4,opt,name=permissions,proto3" json:"permissions,omitempty"` + Expiry isXGenerateApiTokenRequest_Expiry `protobuf_oneof:"expiry"` + AuthToken string `protobuf:"bytes,3,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"` + Permissions *Permissions `protobuf:"bytes,4,opt,name=permissions,proto3" json:"permissions,omitempty"` } func (x *XGenerateApiTokenRequest) Reset() { @@ -389,7 +242,7 @@ func (x *XGenerateApiTokenRequest) GetAuthToken() string { return "" } -func (x *XGenerateApiTokenRequest) GetPermissions() *XGenerateApiTokenRequest_Permissions { +func (x *XGenerateApiTokenRequest) GetPermissions() *Permissions { if x != nil { return x.Permissions } @@ -916,924 +769,189 @@ func (x *XGenerateApiTokenRequest_Expires) GetValidForSeconds() uint32 { return 0 } -type XGenerateApiTokenRequest_Permissions struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Kind: - // - // *XGenerateApiTokenRequest_Permissions_SuperUser - // *XGenerateApiTokenRequest_Permissions_Explicit - Kind isXGenerateApiTokenRequest_Permissions_Kind `protobuf_oneof:"kind"` -} - -func (x *XGenerateApiTokenRequest_Permissions) Reset() { - *x = XGenerateApiTokenRequest_Permissions{} - if protoimpl.UnsafeEnabled { - mi := &file_auth_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *XGenerateApiTokenRequest_Permissions) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*XGenerateApiTokenRequest_Permissions) ProtoMessage() {} - -func (x *XGenerateApiTokenRequest_Permissions) ProtoReflect() protoreflect.Message { - mi := &file_auth_proto_msgTypes[12] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use XGenerateApiTokenRequest_Permissions.ProtoReflect.Descriptor instead. -func (*XGenerateApiTokenRequest_Permissions) Descriptor() ([]byte, []int) { - return file_auth_proto_rawDescGZIP(), []int{2, 2} -} - -func (m *XGenerateApiTokenRequest_Permissions) GetKind() isXGenerateApiTokenRequest_Permissions_Kind { - if m != nil { - return m.Kind - } - return nil -} - -func (x *XGenerateApiTokenRequest_Permissions) GetSuperUser() XGenerateApiTokenRequest_SuperUserPermissions { - if x, ok := x.GetKind().(*XGenerateApiTokenRequest_Permissions_SuperUser); ok { - return x.SuperUser - } - return XGenerateApiTokenRequest_SuperUser -} - -func (x *XGenerateApiTokenRequest_Permissions) GetExplicit() *XGenerateApiTokenRequest_ExplicitPermissions { - if x, ok := x.GetKind().(*XGenerateApiTokenRequest_Permissions_Explicit); ok { - return x.Explicit - } - return nil -} - -type isXGenerateApiTokenRequest_Permissions_Kind interface { - isXGenerateApiTokenRequest_Permissions_Kind() -} - -type XGenerateApiTokenRequest_Permissions_SuperUser struct { - SuperUser XGenerateApiTokenRequest_SuperUserPermissions `protobuf:"varint,1,opt,name=super_user,json=superUser,proto3,enum=auth.XGenerateApiTokenRequest_SuperUserPermissions,oneof"` -} - -type XGenerateApiTokenRequest_Permissions_Explicit struct { - Explicit *XGenerateApiTokenRequest_ExplicitPermissions `protobuf:"bytes,2,opt,name=explicit,proto3,oneof"` -} - -func (*XGenerateApiTokenRequest_Permissions_SuperUser) isXGenerateApiTokenRequest_Permissions_Kind() { -} - -func (*XGenerateApiTokenRequest_Permissions_Explicit) isXGenerateApiTokenRequest_Permissions_Kind() {} - -type XGenerateApiTokenRequest_ExplicitPermissions struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Permissions []*XGenerateApiTokenRequest_PermissionsType `protobuf:"bytes,1,rep,name=permissions,proto3" json:"permissions,omitempty"` -} - -func (x *XGenerateApiTokenRequest_ExplicitPermissions) Reset() { - *x = XGenerateApiTokenRequest_ExplicitPermissions{} - if protoimpl.UnsafeEnabled { - mi := &file_auth_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} +var File_auth_proto protoreflect.FileDescriptor -func (x *XGenerateApiTokenRequest_ExplicitPermissions) String() string { - return protoimpl.X.MessageStringOf(x) +var file_auth_proto_rawDesc = []byte{ + 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x61, 0x75, + 0x74, 0x68, 0x1a, 0x18, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x0f, 0x0a, 0x0d, + 0x5f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xdc, 0x03, + 0x0a, 0x0e, 0x5f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x4b, 0x0a, 0x0e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x62, 0x72, 0x6f, 0x77, 0x73, + 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, + 0x5f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x44, + 0x69, 0x72, 0x65, 0x63, 0x74, 0x42, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0d, + 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x42, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x72, 0x12, 0x3c, 0x0a, + 0x09, 0x6c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1d, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x48, + 0x00, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x12, 0x38, 0x0a, 0x07, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x61, + 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x4c, 0x6f, 0x67, + 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x48, 0x00, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x1a, 0x5b, 0x0a, 0x08, 0x4c, 0x6f, 0x67, + 0x67, 0x65, 0x64, 0x49, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x2a, 0x0a, 0x11, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x46, 0x6f, 0x72, 0x53, + 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x1a, 0x29, 0x0a, 0x05, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, + 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x1a, 0x21, 0x0a, 0x0d, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x42, 0x72, 0x6f, 0x77, 0x73, + 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x75, 0x72, 0x6c, 0x1a, 0x1d, 0x0a, 0x07, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, + 0x65, 0x78, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0xc9, 0x02, 0x0a, + 0x18, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3c, 0x0a, 0x05, 0x6e, 0x65, 0x76, + 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, + 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4e, 0x65, 0x76, 0x65, 0x72, 0x48, 0x00, + 0x52, 0x05, 0x6e, 0x65, 0x76, 0x65, 0x72, 0x12, 0x42, 0x0a, 0x07, 0x65, 0x78, 0x70, 0x69, 0x72, + 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, + 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, + 0x48, 0x00, 0x52, 0x07, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, + 0x75, 0x74, 0x68, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x61, 0x75, 0x74, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x42, 0x0a, 0x0b, 0x70, 0x65, + 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x20, 0x2e, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x73, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x07, + 0x0a, 0x05, 0x4e, 0x65, 0x76, 0x65, 0x72, 0x1a, 0x35, 0x0a, 0x07, 0x45, 0x78, 0x70, 0x69, 0x72, + 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x66, 0x6f, 0x72, 0x5f, + 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x42, 0x08, + 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x22, 0x96, 0x01, 0x0a, 0x19, 0x5f, 0x47, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 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, 0x12, + 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x55, 0x6e, 0x74, 0x69, + 0x6c, 0x22, 0x57, 0x0a, 0x17, 0x5f, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x41, 0x70, 0x69, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, + 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, + 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x95, 0x01, 0x0a, 0x18, 0x5f, + 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 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, + 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, + 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x55, 0x6e, 0x74, + 0x69, 0x6c, 0x32, 0xe9, 0x01, 0x0a, 0x04, 0x41, 0x75, 0x74, 0x68, 0x12, 0x36, 0x0a, 0x05, 0x4c, + 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x13, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x4c, 0x6f, 0x67, + 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x61, 0x75, 0x74, 0x68, + 0x2e, 0x5f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x00, 0x30, 0x01, 0x12, 0x55, 0x0a, 0x10, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, + 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1e, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, + 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, + 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x52, 0x0a, 0x0f, 0x52, 0x65, + 0x66, 0x72, 0x65, 0x73, 0x68, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1d, 0x2e, + 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x41, 0x70, 0x69, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x61, + 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x41, 0x70, 0x69, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x42, + 0x0a, 0x0c, 0x6d, 0x6f, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x50, 0x01, + 0x5a, 0x30, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x6f, 0x6d, + 0x65, 0x6e, 0x74, 0x6f, 0x68, 0x71, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, 0x73, 0x64, + 0x6b, 0x2d, 0x67, 0x6f, 0x3b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x64, 0x6b, 0x5f, + 0x67, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } -func (*XGenerateApiTokenRequest_ExplicitPermissions) ProtoMessage() {} - -func (x *XGenerateApiTokenRequest_ExplicitPermissions) ProtoReflect() protoreflect.Message { - mi := &file_auth_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} +var ( + file_auth_proto_rawDescOnce sync.Once + file_auth_proto_rawDescData = file_auth_proto_rawDesc +) -// Deprecated: Use XGenerateApiTokenRequest_ExplicitPermissions.ProtoReflect.Descriptor instead. -func (*XGenerateApiTokenRequest_ExplicitPermissions) Descriptor() ([]byte, []int) { - return file_auth_proto_rawDescGZIP(), []int{2, 3} +func file_auth_proto_rawDescGZIP() []byte { + file_auth_proto_rawDescOnce.Do(func() { + file_auth_proto_rawDescData = protoimpl.X.CompressGZIP(file_auth_proto_rawDescData) + }) + return file_auth_proto_rawDescData } -func (x *XGenerateApiTokenRequest_ExplicitPermissions) GetPermissions() []*XGenerateApiTokenRequest_PermissionsType { - if x != nil { - return x.Permissions - } - return nil +var file_auth_proto_msgTypes = make([]protoimpl.MessageInfo, 12) +var file_auth_proto_goTypes = []interface{}{ + (*XLoginRequest)(nil), // 0: auth._LoginRequest + (*XLoginResponse)(nil), // 1: auth._LoginResponse + (*XGenerateApiTokenRequest)(nil), // 2: auth._GenerateApiTokenRequest + (*XGenerateApiTokenResponse)(nil), // 3: auth._GenerateApiTokenResponse + (*XRefreshApiTokenRequest)(nil), // 4: auth._RefreshApiTokenRequest + (*XRefreshApiTokenResponse)(nil), // 5: auth._RefreshApiTokenResponse + (*XLoginResponse_LoggedIn)(nil), // 6: auth._LoginResponse.LoggedIn + (*XLoginResponse_Error)(nil), // 7: auth._LoginResponse.Error + (*XLoginResponse_DirectBrowser)(nil), // 8: auth._LoginResponse.DirectBrowser + (*XLoginResponse_Message)(nil), // 9: auth._LoginResponse.Message + (*XGenerateApiTokenRequest_Never)(nil), // 10: auth._GenerateApiTokenRequest.Never + (*XGenerateApiTokenRequest_Expires)(nil), // 11: auth._GenerateApiTokenRequest.Expires + (*Permissions)(nil), // 12: permission_messages.Permissions } - -type XGenerateApiTokenRequest_PermissionsType struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Kind: - // - // *XGenerateApiTokenRequest_PermissionsType_CachePermissions_ - // *XGenerateApiTokenRequest_PermissionsType_TopicPermissions_ - Kind isXGenerateApiTokenRequest_PermissionsType_Kind `protobuf_oneof:"kind"` +var file_auth_proto_depIdxs = []int32{ + 8, // 0: auth._LoginResponse.direct_browser:type_name -> auth._LoginResponse.DirectBrowser + 6, // 1: auth._LoginResponse.logged_in:type_name -> auth._LoginResponse.LoggedIn + 9, // 2: auth._LoginResponse.message:type_name -> auth._LoginResponse.Message + 7, // 3: auth._LoginResponse.error:type_name -> auth._LoginResponse.Error + 10, // 4: auth._GenerateApiTokenRequest.never:type_name -> auth._GenerateApiTokenRequest.Never + 11, // 5: auth._GenerateApiTokenRequest.expires:type_name -> auth._GenerateApiTokenRequest.Expires + 12, // 6: auth._GenerateApiTokenRequest.permissions:type_name -> permission_messages.Permissions + 0, // 7: auth.Auth.Login:input_type -> auth._LoginRequest + 2, // 8: auth.Auth.GenerateApiToken:input_type -> auth._GenerateApiTokenRequest + 4, // 9: auth.Auth.RefreshApiToken:input_type -> auth._RefreshApiTokenRequest + 1, // 10: auth.Auth.Login:output_type -> auth._LoginResponse + 3, // 11: auth.Auth.GenerateApiToken:output_type -> auth._GenerateApiTokenResponse + 5, // 12: auth.Auth.RefreshApiToken:output_type -> auth._RefreshApiTokenResponse + 10, // [10:13] is the sub-list for method output_type + 7, // [7:10] is the sub-list for method input_type + 7, // [7:7] is the sub-list for extension type_name + 7, // [7:7] is the sub-list for extension extendee + 0, // [0:7] is the sub-list for field type_name } -func (x *XGenerateApiTokenRequest_PermissionsType) Reset() { - *x = XGenerateApiTokenRequest_PermissionsType{} - if protoimpl.UnsafeEnabled { - mi := &file_auth_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func init() { file_auth_proto_init() } +func file_auth_proto_init() { + if File_auth_proto != nil { + return } -} - -func (x *XGenerateApiTokenRequest_PermissionsType) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*XGenerateApiTokenRequest_PermissionsType) ProtoMessage() {} - -func (x *XGenerateApiTokenRequest_PermissionsType) ProtoReflect() protoreflect.Message { - mi := &file_auth_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) + file_permissionmessages_proto_init() + if !protoimpl.UnsafeEnabled { + file_auth_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XLoginRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use XGenerateApiTokenRequest_PermissionsType.ProtoReflect.Descriptor instead. -func (*XGenerateApiTokenRequest_PermissionsType) Descriptor() ([]byte, []int) { - return file_auth_proto_rawDescGZIP(), []int{2, 4} -} - -func (m *XGenerateApiTokenRequest_PermissionsType) GetKind() isXGenerateApiTokenRequest_PermissionsType_Kind { - if m != nil { - return m.Kind - } - return nil -} - -func (x *XGenerateApiTokenRequest_PermissionsType) GetCachePermissions() *XGenerateApiTokenRequest_PermissionsType_CachePermissions { - if x, ok := x.GetKind().(*XGenerateApiTokenRequest_PermissionsType_CachePermissions_); ok { - return x.CachePermissions - } - return nil -} - -func (x *XGenerateApiTokenRequest_PermissionsType) GetTopicPermissions() *XGenerateApiTokenRequest_PermissionsType_TopicPermissions { - if x, ok := x.GetKind().(*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_); ok { - return x.TopicPermissions - } - return nil -} - -type isXGenerateApiTokenRequest_PermissionsType_Kind interface { - isXGenerateApiTokenRequest_PermissionsType_Kind() -} - -type XGenerateApiTokenRequest_PermissionsType_CachePermissions_ struct { - CachePermissions *XGenerateApiTokenRequest_PermissionsType_CachePermissions `protobuf:"bytes,1,opt,name=cache_permissions,json=cachePermissions,proto3,oneof"` -} - -type XGenerateApiTokenRequest_PermissionsType_TopicPermissions_ struct { - TopicPermissions *XGenerateApiTokenRequest_PermissionsType_TopicPermissions `protobuf:"bytes,2,opt,name=topic_permissions,json=topicPermissions,proto3,oneof"` -} - -func (*XGenerateApiTokenRequest_PermissionsType_CachePermissions_) isXGenerateApiTokenRequest_PermissionsType_Kind() { -} - -func (*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_) isXGenerateApiTokenRequest_PermissionsType_Kind() { -} - -type XGenerateApiTokenRequest_PermissionsType_All struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *XGenerateApiTokenRequest_PermissionsType_All) Reset() { - *x = XGenerateApiTokenRequest_PermissionsType_All{} - if protoimpl.UnsafeEnabled { - mi := &file_auth_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *XGenerateApiTokenRequest_PermissionsType_All) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*XGenerateApiTokenRequest_PermissionsType_All) ProtoMessage() {} - -func (x *XGenerateApiTokenRequest_PermissionsType_All) ProtoReflect() protoreflect.Message { - mi := &file_auth_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use XGenerateApiTokenRequest_PermissionsType_All.ProtoReflect.Descriptor instead. -func (*XGenerateApiTokenRequest_PermissionsType_All) Descriptor() ([]byte, []int) { - return file_auth_proto_rawDescGZIP(), []int{2, 4, 0} -} - -type XGenerateApiTokenRequest_PermissionsType_CacheSelector struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Kind: - // - // *XGenerateApiTokenRequest_PermissionsType_CacheSelector_CacheName - Kind isXGenerateApiTokenRequest_PermissionsType_CacheSelector_Kind `protobuf_oneof:"kind"` -} - -func (x *XGenerateApiTokenRequest_PermissionsType_CacheSelector) Reset() { - *x = XGenerateApiTokenRequest_PermissionsType_CacheSelector{} - if protoimpl.UnsafeEnabled { - mi := &file_auth_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *XGenerateApiTokenRequest_PermissionsType_CacheSelector) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*XGenerateApiTokenRequest_PermissionsType_CacheSelector) ProtoMessage() {} - -func (x *XGenerateApiTokenRequest_PermissionsType_CacheSelector) ProtoReflect() protoreflect.Message { - mi := &file_auth_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use XGenerateApiTokenRequest_PermissionsType_CacheSelector.ProtoReflect.Descriptor instead. -func (*XGenerateApiTokenRequest_PermissionsType_CacheSelector) Descriptor() ([]byte, []int) { - return file_auth_proto_rawDescGZIP(), []int{2, 4, 1} -} - -func (m *XGenerateApiTokenRequest_PermissionsType_CacheSelector) GetKind() isXGenerateApiTokenRequest_PermissionsType_CacheSelector_Kind { - if m != nil { - return m.Kind - } - return nil -} - -func (x *XGenerateApiTokenRequest_PermissionsType_CacheSelector) GetCacheName() string { - if x, ok := x.GetKind().(*XGenerateApiTokenRequest_PermissionsType_CacheSelector_CacheName); ok { - return x.CacheName - } - return "" -} - -type isXGenerateApiTokenRequest_PermissionsType_CacheSelector_Kind interface { - isXGenerateApiTokenRequest_PermissionsType_CacheSelector_Kind() -} - -type XGenerateApiTokenRequest_PermissionsType_CacheSelector_CacheName struct { - CacheName string `protobuf:"bytes,1,opt,name=cache_name,json=cacheName,proto3,oneof"` -} - -func (*XGenerateApiTokenRequest_PermissionsType_CacheSelector_CacheName) isXGenerateApiTokenRequest_PermissionsType_CacheSelector_Kind() { -} - -type XGenerateApiTokenRequest_PermissionsType_CachePermissions struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Role XGenerateApiTokenRequest_CacheRole `protobuf:"varint,1,opt,name=role,proto3,enum=auth.XGenerateApiTokenRequest_CacheRole" json:"role,omitempty"` - // Types that are assignable to Cache: - // - // *XGenerateApiTokenRequest_PermissionsType_CachePermissions_AllCaches - // *XGenerateApiTokenRequest_PermissionsType_CachePermissions_CacheSelector - Cache isXGenerateApiTokenRequest_PermissionsType_CachePermissions_Cache `protobuf_oneof:"cache"` -} - -func (x *XGenerateApiTokenRequest_PermissionsType_CachePermissions) Reset() { - *x = XGenerateApiTokenRequest_PermissionsType_CachePermissions{} - if protoimpl.UnsafeEnabled { - mi := &file_auth_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *XGenerateApiTokenRequest_PermissionsType_CachePermissions) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*XGenerateApiTokenRequest_PermissionsType_CachePermissions) ProtoMessage() {} - -func (x *XGenerateApiTokenRequest_PermissionsType_CachePermissions) ProtoReflect() protoreflect.Message { - mi := &file_auth_proto_msgTypes[17] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use XGenerateApiTokenRequest_PermissionsType_CachePermissions.ProtoReflect.Descriptor instead. -func (*XGenerateApiTokenRequest_PermissionsType_CachePermissions) Descriptor() ([]byte, []int) { - return file_auth_proto_rawDescGZIP(), []int{2, 4, 2} -} - -func (x *XGenerateApiTokenRequest_PermissionsType_CachePermissions) GetRole() XGenerateApiTokenRequest_CacheRole { - if x != nil { - return x.Role - } - return XGenerateApiTokenRequest_CachePermitNone -} - -func (m *XGenerateApiTokenRequest_PermissionsType_CachePermissions) GetCache() isXGenerateApiTokenRequest_PermissionsType_CachePermissions_Cache { - if m != nil { - return m.Cache - } - return nil -} - -func (x *XGenerateApiTokenRequest_PermissionsType_CachePermissions) GetAllCaches() *XGenerateApiTokenRequest_PermissionsType_All { - if x, ok := x.GetCache().(*XGenerateApiTokenRequest_PermissionsType_CachePermissions_AllCaches); ok { - return x.AllCaches - } - return nil -} - -func (x *XGenerateApiTokenRequest_PermissionsType_CachePermissions) GetCacheSelector() *XGenerateApiTokenRequest_PermissionsType_CacheSelector { - if x, ok := x.GetCache().(*XGenerateApiTokenRequest_PermissionsType_CachePermissions_CacheSelector); ok { - return x.CacheSelector - } - return nil -} - -type isXGenerateApiTokenRequest_PermissionsType_CachePermissions_Cache interface { - isXGenerateApiTokenRequest_PermissionsType_CachePermissions_Cache() -} - -type XGenerateApiTokenRequest_PermissionsType_CachePermissions_AllCaches struct { - AllCaches *XGenerateApiTokenRequest_PermissionsType_All `protobuf:"bytes,2,opt,name=all_caches,json=allCaches,proto3,oneof"` -} - -type XGenerateApiTokenRequest_PermissionsType_CachePermissions_CacheSelector struct { - CacheSelector *XGenerateApiTokenRequest_PermissionsType_CacheSelector `protobuf:"bytes,3,opt,name=cache_selector,json=cacheSelector,proto3,oneof"` -} - -func (*XGenerateApiTokenRequest_PermissionsType_CachePermissions_AllCaches) isXGenerateApiTokenRequest_PermissionsType_CachePermissions_Cache() { -} - -func (*XGenerateApiTokenRequest_PermissionsType_CachePermissions_CacheSelector) isXGenerateApiTokenRequest_PermissionsType_CachePermissions_Cache() { -} - -type XGenerateApiTokenRequest_PermissionsType_TopicSelector struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Kind: - // - // *XGenerateApiTokenRequest_PermissionsType_TopicSelector_TopicName - Kind isXGenerateApiTokenRequest_PermissionsType_TopicSelector_Kind `protobuf_oneof:"kind"` -} - -func (x *XGenerateApiTokenRequest_PermissionsType_TopicSelector) Reset() { - *x = XGenerateApiTokenRequest_PermissionsType_TopicSelector{} - if protoimpl.UnsafeEnabled { - mi := &file_auth_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *XGenerateApiTokenRequest_PermissionsType_TopicSelector) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*XGenerateApiTokenRequest_PermissionsType_TopicSelector) ProtoMessage() {} - -func (x *XGenerateApiTokenRequest_PermissionsType_TopicSelector) ProtoReflect() protoreflect.Message { - mi := &file_auth_proto_msgTypes[18] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use XGenerateApiTokenRequest_PermissionsType_TopicSelector.ProtoReflect.Descriptor instead. -func (*XGenerateApiTokenRequest_PermissionsType_TopicSelector) Descriptor() ([]byte, []int) { - return file_auth_proto_rawDescGZIP(), []int{2, 4, 3} -} - -func (m *XGenerateApiTokenRequest_PermissionsType_TopicSelector) GetKind() isXGenerateApiTokenRequest_PermissionsType_TopicSelector_Kind { - if m != nil { - return m.Kind - } - return nil -} - -func (x *XGenerateApiTokenRequest_PermissionsType_TopicSelector) GetTopicName() string { - if x, ok := x.GetKind().(*XGenerateApiTokenRequest_PermissionsType_TopicSelector_TopicName); ok { - return x.TopicName - } - return "" -} - -type isXGenerateApiTokenRequest_PermissionsType_TopicSelector_Kind interface { - isXGenerateApiTokenRequest_PermissionsType_TopicSelector_Kind() -} - -type XGenerateApiTokenRequest_PermissionsType_TopicSelector_TopicName struct { - TopicName string `protobuf:"bytes,1,opt,name=topic_name,json=topicName,proto3,oneof"` -} - -func (*XGenerateApiTokenRequest_PermissionsType_TopicSelector_TopicName) isXGenerateApiTokenRequest_PermissionsType_TopicSelector_Kind() { -} - -type XGenerateApiTokenRequest_PermissionsType_TopicPermissions struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Role XGenerateApiTokenRequest_TopicRole `protobuf:"varint,1,opt,name=role,proto3,enum=auth.XGenerateApiTokenRequest_TopicRole" json:"role,omitempty"` - // Types that are assignable to Cache: - // - // *XGenerateApiTokenRequest_PermissionsType_TopicPermissions_AllCaches - // *XGenerateApiTokenRequest_PermissionsType_TopicPermissions_CacheSelector - Cache isXGenerateApiTokenRequest_PermissionsType_TopicPermissions_Cache `protobuf_oneof:"cache"` - // Types that are assignable to Topic: - // - // *XGenerateApiTokenRequest_PermissionsType_TopicPermissions_AllTopics - // *XGenerateApiTokenRequest_PermissionsType_TopicPermissions_TopicSelector - Topic isXGenerateApiTokenRequest_PermissionsType_TopicPermissions_Topic `protobuf_oneof:"topic"` -} - -func (x *XGenerateApiTokenRequest_PermissionsType_TopicPermissions) Reset() { - *x = XGenerateApiTokenRequest_PermissionsType_TopicPermissions{} - if protoimpl.UnsafeEnabled { - mi := &file_auth_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *XGenerateApiTokenRequest_PermissionsType_TopicPermissions) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*XGenerateApiTokenRequest_PermissionsType_TopicPermissions) ProtoMessage() {} - -func (x *XGenerateApiTokenRequest_PermissionsType_TopicPermissions) ProtoReflect() protoreflect.Message { - mi := &file_auth_proto_msgTypes[19] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use XGenerateApiTokenRequest_PermissionsType_TopicPermissions.ProtoReflect.Descriptor instead. -func (*XGenerateApiTokenRequest_PermissionsType_TopicPermissions) Descriptor() ([]byte, []int) { - return file_auth_proto_rawDescGZIP(), []int{2, 4, 4} -} - -func (x *XGenerateApiTokenRequest_PermissionsType_TopicPermissions) GetRole() XGenerateApiTokenRequest_TopicRole { - if x != nil { - return x.Role - } - return XGenerateApiTokenRequest_TopicPermitNone -} - -func (m *XGenerateApiTokenRequest_PermissionsType_TopicPermissions) GetCache() isXGenerateApiTokenRequest_PermissionsType_TopicPermissions_Cache { - if m != nil { - return m.Cache - } - return nil -} - -func (x *XGenerateApiTokenRequest_PermissionsType_TopicPermissions) GetAllCaches() *XGenerateApiTokenRequest_PermissionsType_All { - if x, ok := x.GetCache().(*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_AllCaches); ok { - return x.AllCaches - } - return nil -} - -func (x *XGenerateApiTokenRequest_PermissionsType_TopicPermissions) GetCacheSelector() *XGenerateApiTokenRequest_PermissionsType_CacheSelector { - if x, ok := x.GetCache().(*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_CacheSelector); ok { - return x.CacheSelector - } - return nil -} - -func (m *XGenerateApiTokenRequest_PermissionsType_TopicPermissions) GetTopic() isXGenerateApiTokenRequest_PermissionsType_TopicPermissions_Topic { - if m != nil { - return m.Topic - } - return nil -} - -func (x *XGenerateApiTokenRequest_PermissionsType_TopicPermissions) GetAllTopics() *XGenerateApiTokenRequest_PermissionsType_All { - if x, ok := x.GetTopic().(*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_AllTopics); ok { - return x.AllTopics - } - return nil -} - -func (x *XGenerateApiTokenRequest_PermissionsType_TopicPermissions) GetTopicSelector() *XGenerateApiTokenRequest_PermissionsType_TopicSelector { - if x, ok := x.GetTopic().(*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_TopicSelector); ok { - return x.TopicSelector - } - return nil -} - -type isXGenerateApiTokenRequest_PermissionsType_TopicPermissions_Cache interface { - isXGenerateApiTokenRequest_PermissionsType_TopicPermissions_Cache() -} - -type XGenerateApiTokenRequest_PermissionsType_TopicPermissions_AllCaches struct { - AllCaches *XGenerateApiTokenRequest_PermissionsType_All `protobuf:"bytes,2,opt,name=all_caches,json=allCaches,proto3,oneof"` -} - -type XGenerateApiTokenRequest_PermissionsType_TopicPermissions_CacheSelector struct { - CacheSelector *XGenerateApiTokenRequest_PermissionsType_CacheSelector `protobuf:"bytes,3,opt,name=cache_selector,json=cacheSelector,proto3,oneof"` -} - -func (*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_AllCaches) isXGenerateApiTokenRequest_PermissionsType_TopicPermissions_Cache() { -} - -func (*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_CacheSelector) isXGenerateApiTokenRequest_PermissionsType_TopicPermissions_Cache() { -} - -type isXGenerateApiTokenRequest_PermissionsType_TopicPermissions_Topic interface { - isXGenerateApiTokenRequest_PermissionsType_TopicPermissions_Topic() -} - -type XGenerateApiTokenRequest_PermissionsType_TopicPermissions_AllTopics struct { - AllTopics *XGenerateApiTokenRequest_PermissionsType_All `protobuf:"bytes,4,opt,name=all_topics,json=allTopics,proto3,oneof"` -} - -type XGenerateApiTokenRequest_PermissionsType_TopicPermissions_TopicSelector struct { - TopicSelector *XGenerateApiTokenRequest_PermissionsType_TopicSelector `protobuf:"bytes,5,opt,name=topic_selector,json=topicSelector,proto3,oneof"` -} - -func (*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_AllTopics) isXGenerateApiTokenRequest_PermissionsType_TopicPermissions_Topic() { -} - -func (*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_TopicSelector) isXGenerateApiTokenRequest_PermissionsType_TopicPermissions_Topic() { -} - -var File_auth_proto protoreflect.FileDescriptor - -var file_auth_proto_rawDesc = []byte{ - 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x61, 0x75, - 0x74, 0x68, 0x22, 0x0f, 0x0a, 0x0d, 0x5f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x22, 0xdc, 0x03, 0x0a, 0x0e, 0x5f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x0e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, - 0x5f, 0x62, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, - 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x42, 0x72, 0x6f, 0x77, 0x73, - 0x65, 0x72, 0x48, 0x00, 0x52, 0x0d, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x42, 0x72, 0x6f, 0x77, - 0x73, 0x65, 0x72, 0x12, 0x3c, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x5f, 0x69, 0x6e, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x4c, - 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4c, 0x6f, 0x67, - 0x67, 0x65, 0x64, 0x49, 0x6e, 0x48, 0x00, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, - 0x6e, 0x12, 0x38, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x48, 0x00, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x65, - 0x72, 0x72, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x61, 0x75, 0x74, - 0x68, 0x2e, 0x5f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x1a, - 0x5b, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, - 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x12, 0x2a, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x73, 0x65, - 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x1a, 0x29, 0x0a, 0x05, - 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x21, 0x0a, 0x0d, 0x44, 0x69, 0x72, 0x65, 0x63, - 0x74, 0x42, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x1a, 0x1d, 0x0a, 0x07, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x73, 0x74, 0x61, - 0x74, 0x65, 0x22, 0xa1, 0x0f, 0x0a, 0x18, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, - 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x3c, 0x0a, 0x05, 0x6e, 0x65, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, - 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, - 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4e, - 0x65, 0x76, 0x65, 0x72, 0x48, 0x00, 0x52, 0x05, 0x6e, 0x65, 0x76, 0x65, 0x72, 0x12, 0x42, 0x0a, - 0x07, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, - 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, - 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x45, - 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x48, 0x00, 0x52, 0x07, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, - 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x12, 0x4c, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x73, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x07, - 0x0a, 0x05, 0x4e, 0x65, 0x76, 0x65, 0x72, 0x1a, 0x35, 0x0a, 0x07, 0x45, 0x78, 0x70, 0x69, 0x72, - 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x66, 0x6f, 0x72, 0x5f, - 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x1a, 0xbd, - 0x01, 0x0a, 0x0b, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x54, - 0x0a, 0x0a, 0x73, 0x75, 0x70, 0x65, 0x72, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, - 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x2e, 0x53, 0x75, 0x70, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x09, 0x73, 0x75, 0x70, 0x65, 0x72, - 0x55, 0x73, 0x65, 0x72, 0x12, 0x50, 0x0a, 0x08, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x50, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x08, 0x65, 0x78, - 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x42, 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x1a, 0x67, - 0x0a, 0x13, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x50, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x61, 0x75, 0x74, - 0x68, 0x2e, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xe9, 0x08, 0x0a, 0x0f, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x6e, 0x0a, 0x11, 0x63, - 0x61, 0x63, 0x68, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x10, 0x63, 0x61, 0x63, 0x68, 0x65, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x6e, 0x0a, 0x11, 0x74, - 0x6f, 0x70, 0x69, 0x63, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x10, 0x74, 0x6f, 0x70, 0x69, 0x63, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x05, 0x0a, 0x03, 0x41, - 0x6c, 0x6c, 0x1a, 0x38, 0x0a, 0x0d, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x09, 0x63, 0x61, 0x63, 0x68, 0x65, - 0x4e, 0x61, 0x6d, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x1a, 0x95, 0x02, 0x0a, - 0x10, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x73, 0x12, 0x3c, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x28, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, - 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, - 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, - 0x53, 0x0a, 0x0a, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x54, - 0x79, 0x70, 0x65, 0x2e, 0x41, 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x09, 0x61, 0x6c, 0x6c, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x73, 0x12, 0x65, 0x0a, 0x0e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x73, 0x65, - 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x61, - 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x65, 0x72, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x43, 0x61, 0x63, - 0x68, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x0d, 0x63, 0x61, - 0x63, 0x68, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x07, 0x0a, 0x05, 0x63, - 0x61, 0x63, 0x68, 0x65, 0x1a, 0x38, 0x0a, 0x0d, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x53, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0a, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x09, 0x74, 0x6f, 0x70, - 0x69, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x1a, 0xda, - 0x03, 0x0a, 0x10, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x73, 0x12, 0x3c, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x28, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, - 0x65, 0x12, 0x53, 0x0a, 0x0a, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x73, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x41, 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x09, 0x61, 0x6c, 0x6c, - 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x12, 0x65, 0x0a, 0x0e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, - 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, - 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, - 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x43, - 0x61, 0x63, 0x68, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x0d, - 0x63, 0x61, 0x63, 0x68, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x53, 0x0a, - 0x0a, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, - 0x65, 0x2e, 0x41, 0x6c, 0x6c, 0x48, 0x01, 0x52, 0x09, 0x61, 0x6c, 0x6c, 0x54, 0x6f, 0x70, 0x69, - 0x63, 0x73, 0x12, 0x65, 0x0a, 0x0e, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x5f, 0x73, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x61, 0x75, 0x74, - 0x68, 0x2e, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, - 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x48, 0x01, 0x52, 0x0d, 0x74, 0x6f, 0x70, 0x69, - 0x63, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x07, 0x0a, 0x05, 0x63, 0x61, 0x63, - 0x68, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x42, 0x06, 0x0a, 0x04, 0x6b, - 0x69, 0x6e, 0x64, 0x22, 0x47, 0x0a, 0x09, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x6f, 0x6c, 0x65, - 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x4e, - 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, - 0x61, 0x64, 0x57, 0x72, 0x69, 0x74, 0x65, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x43, 0x61, 0x63, - 0x68, 0x65, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x6e, 0x6c, 0x79, 0x10, 0x02, 0x22, 0x47, 0x0a, 0x09, - 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x6f, 0x70, - 0x69, 0x63, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x12, - 0x0a, 0x0e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x65, 0x61, 0x64, 0x57, 0x72, 0x69, 0x74, 0x65, - 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x65, 0x61, 0x64, 0x4f, - 0x6e, 0x6c, 0x79, 0x10, 0x02, 0x22, 0x25, 0x0a, 0x14, 0x53, 0x75, 0x70, 0x65, 0x72, 0x55, 0x73, - 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x0d, 0x0a, - 0x09, 0x53, 0x75, 0x70, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x10, 0x00, 0x42, 0x08, 0x0a, 0x06, - 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x22, 0x96, 0x01, 0x0a, 0x19, 0x5f, 0x47, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 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, 0x12, 0x23, 0x0a, - 0x0d, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1f, - 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x22, - 0x57, 0x0a, 0x17, 0x5f, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x41, 0x70, 0x69, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x74, - 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x72, - 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x95, 0x01, 0x0a, 0x18, 0x5f, 0x52, 0x65, - 0x66, 0x72, 0x65, 0x73, 0x68, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 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, 0x12, 0x23, - 0x0a, 0x0d, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, - 0x1f, 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x55, 0x6e, 0x74, 0x69, 0x6c, - 0x32, 0xe9, 0x01, 0x0a, 0x04, 0x41, 0x75, 0x74, 0x68, 0x12, 0x36, 0x0a, 0x05, 0x4c, 0x6f, 0x67, - 0x69, 0x6e, 0x12, 0x13, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, - 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x30, - 0x01, 0x12, 0x55, 0x0a, 0x10, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1e, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x5f, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x52, 0x0a, 0x0f, 0x52, 0x65, 0x66, 0x72, - 0x65, 0x73, 0x68, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1d, 0x2e, 0x61, 0x75, - 0x74, 0x68, 0x2e, 0x5f, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x41, 0x70, 0x69, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x61, 0x75, 0x74, - 0x68, 0x2e, 0x5f, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x41, 0x70, 0x69, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x42, 0x0a, 0x0c, - 0x6d, 0x6f, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x50, 0x01, 0x5a, 0x30, - 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x6f, 0x6d, 0x65, 0x6e, - 0x74, 0x6f, 0x68, 0x71, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, 0x73, 0x64, 0x6b, 0x2d, - 0x67, 0x6f, 0x3b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x64, 0x6b, 0x5f, 0x67, 0x6f, - 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_auth_proto_rawDescOnce sync.Once - file_auth_proto_rawDescData = file_auth_proto_rawDesc -) - -func file_auth_proto_rawDescGZIP() []byte { - file_auth_proto_rawDescOnce.Do(func() { - file_auth_proto_rawDescData = protoimpl.X.CompressGZIP(file_auth_proto_rawDescData) - }) - return file_auth_proto_rawDescData -} - -var file_auth_proto_enumTypes = make([]protoimpl.EnumInfo, 3) -var file_auth_proto_msgTypes = make([]protoimpl.MessageInfo, 20) -var file_auth_proto_goTypes = []interface{}{ - (XGenerateApiTokenRequest_CacheRole)(0), // 0: auth._GenerateApiTokenRequest.CacheRole - (XGenerateApiTokenRequest_TopicRole)(0), // 1: auth._GenerateApiTokenRequest.TopicRole - (XGenerateApiTokenRequest_SuperUserPermissions)(0), // 2: auth._GenerateApiTokenRequest.SuperUserPermissions - (*XLoginRequest)(nil), // 3: auth._LoginRequest - (*XLoginResponse)(nil), // 4: auth._LoginResponse - (*XGenerateApiTokenRequest)(nil), // 5: auth._GenerateApiTokenRequest - (*XGenerateApiTokenResponse)(nil), // 6: auth._GenerateApiTokenResponse - (*XRefreshApiTokenRequest)(nil), // 7: auth._RefreshApiTokenRequest - (*XRefreshApiTokenResponse)(nil), // 8: auth._RefreshApiTokenResponse - (*XLoginResponse_LoggedIn)(nil), // 9: auth._LoginResponse.LoggedIn - (*XLoginResponse_Error)(nil), // 10: auth._LoginResponse.Error - (*XLoginResponse_DirectBrowser)(nil), // 11: auth._LoginResponse.DirectBrowser - (*XLoginResponse_Message)(nil), // 12: auth._LoginResponse.Message - (*XGenerateApiTokenRequest_Never)(nil), // 13: auth._GenerateApiTokenRequest.Never - (*XGenerateApiTokenRequest_Expires)(nil), // 14: auth._GenerateApiTokenRequest.Expires - (*XGenerateApiTokenRequest_Permissions)(nil), // 15: auth._GenerateApiTokenRequest.Permissions - (*XGenerateApiTokenRequest_ExplicitPermissions)(nil), // 16: auth._GenerateApiTokenRequest.ExplicitPermissions - (*XGenerateApiTokenRequest_PermissionsType)(nil), // 17: auth._GenerateApiTokenRequest.PermissionsType - (*XGenerateApiTokenRequest_PermissionsType_All)(nil), // 18: auth._GenerateApiTokenRequest.PermissionsType.All - (*XGenerateApiTokenRequest_PermissionsType_CacheSelector)(nil), // 19: auth._GenerateApiTokenRequest.PermissionsType.CacheSelector - (*XGenerateApiTokenRequest_PermissionsType_CachePermissions)(nil), // 20: auth._GenerateApiTokenRequest.PermissionsType.CachePermissions - (*XGenerateApiTokenRequest_PermissionsType_TopicSelector)(nil), // 21: auth._GenerateApiTokenRequest.PermissionsType.TopicSelector - (*XGenerateApiTokenRequest_PermissionsType_TopicPermissions)(nil), // 22: auth._GenerateApiTokenRequest.PermissionsType.TopicPermissions -} -var file_auth_proto_depIdxs = []int32{ - 11, // 0: auth._LoginResponse.direct_browser:type_name -> auth._LoginResponse.DirectBrowser - 9, // 1: auth._LoginResponse.logged_in:type_name -> auth._LoginResponse.LoggedIn - 12, // 2: auth._LoginResponse.message:type_name -> auth._LoginResponse.Message - 10, // 3: auth._LoginResponse.error:type_name -> auth._LoginResponse.Error - 13, // 4: auth._GenerateApiTokenRequest.never:type_name -> auth._GenerateApiTokenRequest.Never - 14, // 5: auth._GenerateApiTokenRequest.expires:type_name -> auth._GenerateApiTokenRequest.Expires - 15, // 6: auth._GenerateApiTokenRequest.permissions:type_name -> auth._GenerateApiTokenRequest.Permissions - 2, // 7: auth._GenerateApiTokenRequest.Permissions.super_user:type_name -> auth._GenerateApiTokenRequest.SuperUserPermissions - 16, // 8: auth._GenerateApiTokenRequest.Permissions.explicit:type_name -> auth._GenerateApiTokenRequest.ExplicitPermissions - 17, // 9: auth._GenerateApiTokenRequest.ExplicitPermissions.permissions:type_name -> auth._GenerateApiTokenRequest.PermissionsType - 20, // 10: auth._GenerateApiTokenRequest.PermissionsType.cache_permissions:type_name -> auth._GenerateApiTokenRequest.PermissionsType.CachePermissions - 22, // 11: auth._GenerateApiTokenRequest.PermissionsType.topic_permissions:type_name -> auth._GenerateApiTokenRequest.PermissionsType.TopicPermissions - 0, // 12: auth._GenerateApiTokenRequest.PermissionsType.CachePermissions.role:type_name -> auth._GenerateApiTokenRequest.CacheRole - 18, // 13: auth._GenerateApiTokenRequest.PermissionsType.CachePermissions.all_caches:type_name -> auth._GenerateApiTokenRequest.PermissionsType.All - 19, // 14: auth._GenerateApiTokenRequest.PermissionsType.CachePermissions.cache_selector:type_name -> auth._GenerateApiTokenRequest.PermissionsType.CacheSelector - 1, // 15: auth._GenerateApiTokenRequest.PermissionsType.TopicPermissions.role:type_name -> auth._GenerateApiTokenRequest.TopicRole - 18, // 16: auth._GenerateApiTokenRequest.PermissionsType.TopicPermissions.all_caches:type_name -> auth._GenerateApiTokenRequest.PermissionsType.All - 19, // 17: auth._GenerateApiTokenRequest.PermissionsType.TopicPermissions.cache_selector:type_name -> auth._GenerateApiTokenRequest.PermissionsType.CacheSelector - 18, // 18: auth._GenerateApiTokenRequest.PermissionsType.TopicPermissions.all_topics:type_name -> auth._GenerateApiTokenRequest.PermissionsType.All - 21, // 19: auth._GenerateApiTokenRequest.PermissionsType.TopicPermissions.topic_selector:type_name -> auth._GenerateApiTokenRequest.PermissionsType.TopicSelector - 3, // 20: auth.Auth.Login:input_type -> auth._LoginRequest - 5, // 21: auth.Auth.GenerateApiToken:input_type -> auth._GenerateApiTokenRequest - 7, // 22: auth.Auth.RefreshApiToken:input_type -> auth._RefreshApiTokenRequest - 4, // 23: auth.Auth.Login:output_type -> auth._LoginResponse - 6, // 24: auth.Auth.GenerateApiToken:output_type -> auth._GenerateApiTokenResponse - 8, // 25: auth.Auth.RefreshApiToken:output_type -> auth._RefreshApiTokenResponse - 23, // [23:26] is the sub-list for method output_type - 20, // [20:23] is the sub-list for method input_type - 20, // [20:20] is the sub-list for extension type_name - 20, // [20:20] is the sub-list for extension extendee - 0, // [0:20] is the sub-list for field type_name -} - -func init() { file_auth_proto_init() } -func file_auth_proto_init() { - if File_auth_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_auth_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XLoginRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_auth_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XLoginResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } + file_auth_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XLoginResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } } file_auth_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*XGenerateApiTokenRequest); i { @@ -1955,102 +1073,6 @@ func file_auth_proto_init() { return nil } } - file_auth_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XGenerateApiTokenRequest_Permissions); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_auth_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XGenerateApiTokenRequest_ExplicitPermissions); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_auth_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XGenerateApiTokenRequest_PermissionsType); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_auth_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XGenerateApiTokenRequest_PermissionsType_All); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_auth_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XGenerateApiTokenRequest_PermissionsType_CacheSelector); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_auth_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XGenerateApiTokenRequest_PermissionsType_CachePermissions); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_auth_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XGenerateApiTokenRequest_PermissionsType_TopicSelector); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_auth_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XGenerateApiTokenRequest_PermissionsType_TopicPermissions); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } } file_auth_proto_msgTypes[1].OneofWrappers = []interface{}{ (*XLoginResponse_DirectBrowser_)(nil), @@ -2062,43 +1084,18 @@ func file_auth_proto_init() { (*XGenerateApiTokenRequest_Never_)(nil), (*XGenerateApiTokenRequest_Expires_)(nil), } - file_auth_proto_msgTypes[12].OneofWrappers = []interface{}{ - (*XGenerateApiTokenRequest_Permissions_SuperUser)(nil), - (*XGenerateApiTokenRequest_Permissions_Explicit)(nil), - } - file_auth_proto_msgTypes[14].OneofWrappers = []interface{}{ - (*XGenerateApiTokenRequest_PermissionsType_CachePermissions_)(nil), - (*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_)(nil), - } - file_auth_proto_msgTypes[16].OneofWrappers = []interface{}{ - (*XGenerateApiTokenRequest_PermissionsType_CacheSelector_CacheName)(nil), - } - file_auth_proto_msgTypes[17].OneofWrappers = []interface{}{ - (*XGenerateApiTokenRequest_PermissionsType_CachePermissions_AllCaches)(nil), - (*XGenerateApiTokenRequest_PermissionsType_CachePermissions_CacheSelector)(nil), - } - file_auth_proto_msgTypes[18].OneofWrappers = []interface{}{ - (*XGenerateApiTokenRequest_PermissionsType_TopicSelector_TopicName)(nil), - } - file_auth_proto_msgTypes[19].OneofWrappers = []interface{}{ - (*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_AllCaches)(nil), - (*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_CacheSelector)(nil), - (*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_AllTopics)(nil), - (*XGenerateApiTokenRequest_PermissionsType_TopicPermissions_TopicSelector)(nil), - } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_auth_proto_rawDesc, - NumEnums: 3, - NumMessages: 20, + NumEnums: 0, + NumMessages: 12, NumExtensions: 0, NumServices: 1, }, GoTypes: file_auth_proto_goTypes, DependencyIndexes: file_auth_proto_depIdxs, - EnumInfos: file_auth_proto_enumTypes, MessageInfos: file_auth_proto_msgTypes, }.Build() File_auth_proto = out.File diff --git a/internal/protos/auth.proto b/internal/protos/auth.proto index f629f294..a162a267 100644 --- a/internal/protos/auth.proto +++ b/internal/protos/auth.proto @@ -1,5 +1,7 @@ syntax = "proto3"; +import "permissionmessages.proto"; + option go_package = "github.com/momentohq/client-sdk-go;client_sdk_go"; option java_multiple_files = true; option java_package = "momento.auth"; @@ -69,83 +71,9 @@ message _GenerateApiTokenRequest { Expires expires = 2; } - // Aliases for categories of functionality. - enum CacheRole { - CachePermitNone = 0; - // Restricts access to apis that read and write data from caches: No higher level resource description or modification. - CacheReadWrite = 1; - // Restricts access to apis that read from caches: No higher level resource description or modification. - CacheReadOnly = 2; - } - - // Aliases for categories of functionality. - enum TopicRole { - TopicPermitNone = 0; - // Restricts access to apis that read and write data from topics: No higher level resource description or modification. - TopicReadWrite = 1; - // Restricts access to apis that read from topics: No higher level resource description or modification. - TopicReadOnly = 2; - } - string auth_token = 3; - enum SuperUserPermissions { - SuperUser = 0; - } - - message Permissions { - oneof kind { - SuperUserPermissions super_user = 1; - ExplicitPermissions explicit = 2; - } - } - - message ExplicitPermissions { - repeated PermissionsType permissions = 1; - } - - message PermissionsType { - oneof kind { - CachePermissions cache_permissions = 1; - TopicPermissions topic_permissions = 2; - } - - message All {} - - message CacheSelector { - oneof kind { - string cache_name = 1; - } - } - - message CachePermissions { - CacheRole role = 1; - oneof cache { - All all_caches = 2; - CacheSelector cache_selector = 3; - } - } - - message TopicSelector { - oneof kind { - string topic_name = 1; - } - } - - message TopicPermissions { - TopicRole role = 1; - oneof cache { - All all_caches = 2; - CacheSelector cache_selector = 3; - } - oneof topic { - All all_topics = 4; - TopicSelector topic_selector = 5; - } - } - } - - Permissions permissions = 4; + permission_messages.Permissions permissions = 4; } message _GenerateApiTokenResponse { diff --git a/internal/protos/auth_grpc.pb.go b/internal/protos/auth_grpc.pb.go index 5c778e45..6438d5aa 100644 --- a/internal/protos/auth_grpc.pb.go +++ b/internal/protos/auth_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.3.0 -// - protoc v4.23.3 +// - protoc v3.20.3 // source: auth.proto package client_sdk_go diff --git a/internal/protos/cacheclient.pb.go b/internal/protos/cacheclient.pb.go index ca514235..84304f48 100644 --- a/internal/protos/cacheclient.pb.go +++ b/internal/protos/cacheclient.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.31.0 -// protoc v4.23.3 +// protoc v3.20.3 // source: cacheclient.proto package client_sdk_go @@ -171,7 +171,7 @@ func (x XSortedSetFetchRequest_Order) Number() protoreflect.EnumNumber { // Deprecated: Use XSortedSetFetchRequest_Order.Descriptor instead. func (XSortedSetFetchRequest_Order) EnumDescriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{68, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{70, 0} } type XSortedSetGetRankRequest_Order int32 @@ -217,7 +217,7 @@ func (x XSortedSetGetRankRequest_Order) Number() protoreflect.EnumNumber { // Deprecated: Use XSortedSetGetRankRequest_Order.Descriptor instead. func (XSortedSetGetRankRequest_Order) EnumDescriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{76, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{78, 0} } type XGetRequest struct { @@ -2821,6 +2821,142 @@ func (*XSetLengthResponse_Found) isXSetLengthResponse_Set() {} func (*XSetLengthResponse_Missing) isXSetLengthResponse_Set() {} +type XSetPopRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + SetName []byte `protobuf:"bytes,1,opt,name=set_name,json=setName,proto3" json:"set_name,omitempty"` + Count uint32 `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"` +} + +func (x *XSetPopRequest) Reset() { + *x = XSetPopRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_cacheclient_proto_msgTypes[41] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XSetPopRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XSetPopRequest) ProtoMessage() {} + +func (x *XSetPopRequest) ProtoReflect() protoreflect.Message { + mi := &file_cacheclient_proto_msgTypes[41] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XSetPopRequest.ProtoReflect.Descriptor instead. +func (*XSetPopRequest) Descriptor() ([]byte, []int) { + return file_cacheclient_proto_rawDescGZIP(), []int{41} +} + +func (x *XSetPopRequest) GetSetName() []byte { + if x != nil { + return x.SetName + } + return nil +} + +func (x *XSetPopRequest) GetCount() uint32 { + if x != nil { + return x.Count + } + return 0 +} + +type XSetPopResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Set: + // + // *XSetPopResponse_Found + // *XSetPopResponse_Missing + Set isXSetPopResponse_Set `protobuf_oneof:"set"` +} + +func (x *XSetPopResponse) Reset() { + *x = XSetPopResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_cacheclient_proto_msgTypes[42] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XSetPopResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XSetPopResponse) ProtoMessage() {} + +func (x *XSetPopResponse) ProtoReflect() protoreflect.Message { + mi := &file_cacheclient_proto_msgTypes[42] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XSetPopResponse.ProtoReflect.Descriptor instead. +func (*XSetPopResponse) Descriptor() ([]byte, []int) { + return file_cacheclient_proto_rawDescGZIP(), []int{42} +} + +func (m *XSetPopResponse) GetSet() isXSetPopResponse_Set { + if m != nil { + return m.Set + } + return nil +} + +func (x *XSetPopResponse) GetFound() *XSetPopResponse_XFound { + if x, ok := x.GetSet().(*XSetPopResponse_Found); ok { + return x.Found + } + return nil +} + +func (x *XSetPopResponse) GetMissing() *XSetPopResponse_XMissing { + if x, ok := x.GetSet().(*XSetPopResponse_Missing); ok { + return x.Missing + } + return nil +} + +type isXSetPopResponse_Set interface { + isXSetPopResponse_Set() +} + +type XSetPopResponse_Found struct { + Found *XSetPopResponse_XFound `protobuf:"bytes,1,opt,name=found,proto3,oneof"` +} + +type XSetPopResponse_Missing struct { + Missing *XSetPopResponse_XMissing `protobuf:"bytes,2,opt,name=missing,proto3,oneof"` +} + +func (*XSetPopResponse_Found) isXSetPopResponse_Set() {} + +func (*XSetPopResponse_Missing) isXSetPopResponse_Set() {} + type XListConcatenateFrontRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2837,7 +2973,7 @@ type XListConcatenateFrontRequest struct { func (x *XListConcatenateFrontRequest) Reset() { *x = XListConcatenateFrontRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[41] + mi := &file_cacheclient_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2850,7 +2986,7 @@ func (x *XListConcatenateFrontRequest) String() string { func (*XListConcatenateFrontRequest) ProtoMessage() {} func (x *XListConcatenateFrontRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[41] + mi := &file_cacheclient_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2863,7 +2999,7 @@ func (x *XListConcatenateFrontRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XListConcatenateFrontRequest.ProtoReflect.Descriptor instead. func (*XListConcatenateFrontRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{41} + return file_cacheclient_proto_rawDescGZIP(), []int{43} } func (x *XListConcatenateFrontRequest) GetListName() []byte { @@ -2913,7 +3049,7 @@ type XListConcatenateFrontResponse struct { func (x *XListConcatenateFrontResponse) Reset() { *x = XListConcatenateFrontResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[42] + mi := &file_cacheclient_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2926,7 +3062,7 @@ func (x *XListConcatenateFrontResponse) String() string { func (*XListConcatenateFrontResponse) ProtoMessage() {} func (x *XListConcatenateFrontResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[42] + mi := &file_cacheclient_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2939,7 +3075,7 @@ func (x *XListConcatenateFrontResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XListConcatenateFrontResponse.ProtoReflect.Descriptor instead. func (*XListConcatenateFrontResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{42} + return file_cacheclient_proto_rawDescGZIP(), []int{44} } func (x *XListConcatenateFrontResponse) GetListLength() uint32 { @@ -2965,7 +3101,7 @@ type XListConcatenateBackRequest struct { func (x *XListConcatenateBackRequest) Reset() { *x = XListConcatenateBackRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[43] + mi := &file_cacheclient_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2978,7 +3114,7 @@ func (x *XListConcatenateBackRequest) String() string { func (*XListConcatenateBackRequest) ProtoMessage() {} func (x *XListConcatenateBackRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[43] + mi := &file_cacheclient_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2991,7 +3127,7 @@ func (x *XListConcatenateBackRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XListConcatenateBackRequest.ProtoReflect.Descriptor instead. func (*XListConcatenateBackRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{43} + return file_cacheclient_proto_rawDescGZIP(), []int{45} } func (x *XListConcatenateBackRequest) GetListName() []byte { @@ -3041,7 +3177,7 @@ type XListConcatenateBackResponse struct { func (x *XListConcatenateBackResponse) Reset() { *x = XListConcatenateBackResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[44] + mi := &file_cacheclient_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3054,7 +3190,7 @@ func (x *XListConcatenateBackResponse) String() string { func (*XListConcatenateBackResponse) ProtoMessage() {} func (x *XListConcatenateBackResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[44] + mi := &file_cacheclient_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3067,7 +3203,7 @@ func (x *XListConcatenateBackResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XListConcatenateBackResponse.ProtoReflect.Descriptor instead. func (*XListConcatenateBackResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{44} + return file_cacheclient_proto_rawDescGZIP(), []int{46} } func (x *XListConcatenateBackResponse) GetListLength() uint32 { @@ -3094,7 +3230,7 @@ type XListPushFrontRequest struct { func (x *XListPushFrontRequest) Reset() { *x = XListPushFrontRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[45] + mi := &file_cacheclient_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3107,7 +3243,7 @@ func (x *XListPushFrontRequest) String() string { func (*XListPushFrontRequest) ProtoMessage() {} func (x *XListPushFrontRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[45] + mi := &file_cacheclient_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3120,7 +3256,7 @@ func (x *XListPushFrontRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XListPushFrontRequest.ProtoReflect.Descriptor instead. func (*XListPushFrontRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{45} + return file_cacheclient_proto_rawDescGZIP(), []int{47} } func (x *XListPushFrontRequest) GetListName() []byte { @@ -3170,7 +3306,7 @@ type XListPushFrontResponse struct { func (x *XListPushFrontResponse) Reset() { *x = XListPushFrontResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[46] + mi := &file_cacheclient_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3183,7 +3319,7 @@ func (x *XListPushFrontResponse) String() string { func (*XListPushFrontResponse) ProtoMessage() {} func (x *XListPushFrontResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[46] + mi := &file_cacheclient_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3196,7 +3332,7 @@ func (x *XListPushFrontResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XListPushFrontResponse.ProtoReflect.Descriptor instead. func (*XListPushFrontResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{46} + return file_cacheclient_proto_rawDescGZIP(), []int{48} } func (x *XListPushFrontResponse) GetListLength() uint32 { @@ -3223,7 +3359,7 @@ type XListPushBackRequest struct { func (x *XListPushBackRequest) Reset() { *x = XListPushBackRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[47] + mi := &file_cacheclient_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3236,7 +3372,7 @@ func (x *XListPushBackRequest) String() string { func (*XListPushBackRequest) ProtoMessage() {} func (x *XListPushBackRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[47] + mi := &file_cacheclient_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3249,7 +3385,7 @@ func (x *XListPushBackRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XListPushBackRequest.ProtoReflect.Descriptor instead. func (*XListPushBackRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{47} + return file_cacheclient_proto_rawDescGZIP(), []int{49} } func (x *XListPushBackRequest) GetListName() []byte { @@ -3299,7 +3435,7 @@ type XListPushBackResponse struct { func (x *XListPushBackResponse) Reset() { *x = XListPushBackResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[48] + mi := &file_cacheclient_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3312,7 +3448,7 @@ func (x *XListPushBackResponse) String() string { func (*XListPushBackResponse) ProtoMessage() {} func (x *XListPushBackResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[48] + mi := &file_cacheclient_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3325,7 +3461,7 @@ func (x *XListPushBackResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XListPushBackResponse.ProtoReflect.Descriptor instead. func (*XListPushBackResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{48} + return file_cacheclient_proto_rawDescGZIP(), []int{50} } func (x *XListPushBackResponse) GetListLength() uint32 { @@ -3346,7 +3482,7 @@ type XListPopFrontRequest struct { func (x *XListPopFrontRequest) Reset() { *x = XListPopFrontRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[49] + mi := &file_cacheclient_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3359,7 +3495,7 @@ func (x *XListPopFrontRequest) String() string { func (*XListPopFrontRequest) ProtoMessage() {} func (x *XListPopFrontRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[49] + mi := &file_cacheclient_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3372,7 +3508,7 @@ func (x *XListPopFrontRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XListPopFrontRequest.ProtoReflect.Descriptor instead. func (*XListPopFrontRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{49} + return file_cacheclient_proto_rawDescGZIP(), []int{51} } func (x *XListPopFrontRequest) GetListName() []byte { @@ -3397,7 +3533,7 @@ type XListPopFrontResponse struct { func (x *XListPopFrontResponse) Reset() { *x = XListPopFrontResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[50] + mi := &file_cacheclient_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3410,7 +3546,7 @@ func (x *XListPopFrontResponse) String() string { func (*XListPopFrontResponse) ProtoMessage() {} func (x *XListPopFrontResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[50] + mi := &file_cacheclient_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3423,7 +3559,7 @@ func (x *XListPopFrontResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XListPopFrontResponse.ProtoReflect.Descriptor instead. func (*XListPopFrontResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{50} + return file_cacheclient_proto_rawDescGZIP(), []int{52} } func (m *XListPopFrontResponse) GetList() isXListPopFrontResponse_List { @@ -3474,7 +3610,7 @@ type XListPopBackRequest struct { func (x *XListPopBackRequest) Reset() { *x = XListPopBackRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[51] + mi := &file_cacheclient_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3487,7 +3623,7 @@ func (x *XListPopBackRequest) String() string { func (*XListPopBackRequest) ProtoMessage() {} func (x *XListPopBackRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[51] + mi := &file_cacheclient_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3500,7 +3636,7 @@ func (x *XListPopBackRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XListPopBackRequest.ProtoReflect.Descriptor instead. func (*XListPopBackRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{51} + return file_cacheclient_proto_rawDescGZIP(), []int{53} } func (x *XListPopBackRequest) GetListName() []byte { @@ -3525,7 +3661,7 @@ type XListPopBackResponse struct { func (x *XListPopBackResponse) Reset() { *x = XListPopBackResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[52] + mi := &file_cacheclient_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3538,7 +3674,7 @@ func (x *XListPopBackResponse) String() string { func (*XListPopBackResponse) ProtoMessage() {} func (x *XListPopBackResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[52] + mi := &file_cacheclient_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3551,7 +3687,7 @@ func (x *XListPopBackResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XListPopBackResponse.ProtoReflect.Descriptor instead. func (*XListPopBackResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{52} + return file_cacheclient_proto_rawDescGZIP(), []int{54} } func (m *XListPopBackResponse) GetList() isXListPopBackResponse_List { @@ -3603,7 +3739,7 @@ type XListRange struct { func (x *XListRange) Reset() { *x = XListRange{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[53] + mi := &file_cacheclient_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3616,7 +3752,7 @@ func (x *XListRange) String() string { func (*XListRange) ProtoMessage() {} func (x *XListRange) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[53] + mi := &file_cacheclient_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3629,7 +3765,7 @@ func (x *XListRange) ProtoReflect() protoreflect.Message { // Deprecated: Use XListRange.ProtoReflect.Descriptor instead. func (*XListRange) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{53} + return file_cacheclient_proto_rawDescGZIP(), []int{55} } func (x *XListRange) GetBeginIndex() uint32 { @@ -3662,7 +3798,7 @@ type XListEraseRequest struct { func (x *XListEraseRequest) Reset() { *x = XListEraseRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[54] + mi := &file_cacheclient_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3675,7 +3811,7 @@ func (x *XListEraseRequest) String() string { func (*XListEraseRequest) ProtoMessage() {} func (x *XListEraseRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[54] + mi := &file_cacheclient_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3688,7 +3824,7 @@ func (x *XListEraseRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XListEraseRequest.ProtoReflect.Descriptor instead. func (*XListEraseRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{54} + return file_cacheclient_proto_rawDescGZIP(), []int{56} } func (x *XListEraseRequest) GetListName() []byte { @@ -3750,7 +3886,7 @@ type XListEraseResponse struct { func (x *XListEraseResponse) Reset() { *x = XListEraseResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[55] + mi := &file_cacheclient_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3763,7 +3899,7 @@ func (x *XListEraseResponse) String() string { func (*XListEraseResponse) ProtoMessage() {} func (x *XListEraseResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[55] + mi := &file_cacheclient_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3776,7 +3912,7 @@ func (x *XListEraseResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XListEraseResponse.ProtoReflect.Descriptor instead. func (*XListEraseResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{55} + return file_cacheclient_proto_rawDescGZIP(), []int{57} } func (m *XListEraseResponse) GetList() isXListEraseResponse_List { @@ -3831,7 +3967,7 @@ type XListRemoveRequest struct { func (x *XListRemoveRequest) Reset() { *x = XListRemoveRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[56] + mi := &file_cacheclient_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3844,7 +3980,7 @@ func (x *XListRemoveRequest) String() string { func (*XListRemoveRequest) ProtoMessage() {} func (x *XListRemoveRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[56] + mi := &file_cacheclient_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3857,7 +3993,7 @@ func (x *XListRemoveRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XListRemoveRequest.ProtoReflect.Descriptor instead. func (*XListRemoveRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{56} + return file_cacheclient_proto_rawDescGZIP(), []int{58} } func (x *XListRemoveRequest) GetListName() []byte { @@ -3907,7 +4043,7 @@ type XListRemoveResponse struct { func (x *XListRemoveResponse) Reset() { *x = XListRemoveResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[57] + mi := &file_cacheclient_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3920,7 +4056,7 @@ func (x *XListRemoveResponse) String() string { func (*XListRemoveResponse) ProtoMessage() {} func (x *XListRemoveResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[57] + mi := &file_cacheclient_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3933,7 +4069,7 @@ func (x *XListRemoveResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XListRemoveResponse.ProtoReflect.Descriptor instead. func (*XListRemoveResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{57} + return file_cacheclient_proto_rawDescGZIP(), []int{59} } func (m *XListRemoveResponse) GetList() isXListRemoveResponse_List { @@ -3982,7 +4118,7 @@ type XUnbounded struct { func (x *XUnbounded) Reset() { *x = XUnbounded{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[58] + mi := &file_cacheclient_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3995,7 +4131,7 @@ func (x *XUnbounded) String() string { func (*XUnbounded) ProtoMessage() {} func (x *XUnbounded) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[58] + mi := &file_cacheclient_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4008,7 +4144,7 @@ func (x *XUnbounded) ProtoReflect() protoreflect.Message { // Deprecated: Use XUnbounded.ProtoReflect.Descriptor instead. func (*XUnbounded) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{58} + return file_cacheclient_proto_rawDescGZIP(), []int{60} } type XListFetchRequest struct { @@ -4041,7 +4177,7 @@ type XListFetchRequest struct { func (x *XListFetchRequest) Reset() { *x = XListFetchRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[59] + mi := &file_cacheclient_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4054,7 +4190,7 @@ func (x *XListFetchRequest) String() string { func (*XListFetchRequest) ProtoMessage() {} func (x *XListFetchRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[59] + mi := &file_cacheclient_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4067,7 +4203,7 @@ func (x *XListFetchRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XListFetchRequest.ProtoReflect.Descriptor instead. func (*XListFetchRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{59} + return file_cacheclient_proto_rawDescGZIP(), []int{61} } func (x *XListFetchRequest) GetListName() []byte { @@ -4174,7 +4310,7 @@ type XListRetainRequest struct { func (x *XListRetainRequest) Reset() { *x = XListRetainRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[60] + mi := &file_cacheclient_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4187,7 +4323,7 @@ func (x *XListRetainRequest) String() string { func (*XListRetainRequest) ProtoMessage() {} func (x *XListRetainRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[60] + mi := &file_cacheclient_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4200,7 +4336,7 @@ func (x *XListRetainRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XListRetainRequest.ProtoReflect.Descriptor instead. func (*XListRetainRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{60} + return file_cacheclient_proto_rawDescGZIP(), []int{62} } func (x *XListRetainRequest) GetListName() []byte { @@ -4313,7 +4449,7 @@ type XListRetainResponse struct { func (x *XListRetainResponse) Reset() { *x = XListRetainResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[61] + mi := &file_cacheclient_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4326,7 +4462,7 @@ func (x *XListRetainResponse) String() string { func (*XListRetainResponse) ProtoMessage() {} func (x *XListRetainResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[61] + mi := &file_cacheclient_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4339,7 +4475,7 @@ func (x *XListRetainResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XListRetainResponse.ProtoReflect.Descriptor instead. func (*XListRetainResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{61} + return file_cacheclient_proto_rawDescGZIP(), []int{63} } func (m *XListRetainResponse) GetList() isXListRetainResponse_List { @@ -4394,7 +4530,7 @@ type XListFetchResponse struct { func (x *XListFetchResponse) Reset() { *x = XListFetchResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[62] + mi := &file_cacheclient_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4407,7 +4543,7 @@ func (x *XListFetchResponse) String() string { func (*XListFetchResponse) ProtoMessage() {} func (x *XListFetchResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[62] + mi := &file_cacheclient_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4420,7 +4556,7 @@ func (x *XListFetchResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XListFetchResponse.ProtoReflect.Descriptor instead. func (*XListFetchResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{62} + return file_cacheclient_proto_rawDescGZIP(), []int{64} } func (m *XListFetchResponse) GetList() isXListFetchResponse_List { @@ -4471,7 +4607,7 @@ type XListLengthRequest struct { func (x *XListLengthRequest) Reset() { *x = XListLengthRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[63] + mi := &file_cacheclient_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4484,7 +4620,7 @@ func (x *XListLengthRequest) String() string { func (*XListLengthRequest) ProtoMessage() {} func (x *XListLengthRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[63] + mi := &file_cacheclient_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4497,7 +4633,7 @@ func (x *XListLengthRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XListLengthRequest.ProtoReflect.Descriptor instead. func (*XListLengthRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{63} + return file_cacheclient_proto_rawDescGZIP(), []int{65} } func (x *XListLengthRequest) GetListName() []byte { @@ -4522,7 +4658,7 @@ type XListLengthResponse struct { func (x *XListLengthResponse) Reset() { *x = XListLengthResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[64] + mi := &file_cacheclient_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4535,7 +4671,7 @@ func (x *XListLengthResponse) String() string { func (*XListLengthResponse) ProtoMessage() {} func (x *XListLengthResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[64] + mi := &file_cacheclient_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4548,7 +4684,7 @@ func (x *XListLengthResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XListLengthResponse.ProtoReflect.Descriptor instead. func (*XListLengthResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{64} + return file_cacheclient_proto_rawDescGZIP(), []int{66} } func (m *XListLengthResponse) GetList() isXListLengthResponse_List { @@ -4600,7 +4736,7 @@ type XSortedSetElement struct { func (x *XSortedSetElement) Reset() { *x = XSortedSetElement{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[65] + mi := &file_cacheclient_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4613,7 +4749,7 @@ func (x *XSortedSetElement) String() string { func (*XSortedSetElement) ProtoMessage() {} func (x *XSortedSetElement) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[65] + mi := &file_cacheclient_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4626,7 +4762,7 @@ func (x *XSortedSetElement) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetElement.ProtoReflect.Descriptor instead. func (*XSortedSetElement) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{65} + return file_cacheclient_proto_rawDescGZIP(), []int{67} } func (x *XSortedSetElement) GetValue() []byte { @@ -4657,7 +4793,7 @@ type XSortedSetPutRequest struct { func (x *XSortedSetPutRequest) Reset() { *x = XSortedSetPutRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[66] + mi := &file_cacheclient_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4670,7 +4806,7 @@ func (x *XSortedSetPutRequest) String() string { func (*XSortedSetPutRequest) ProtoMessage() {} func (x *XSortedSetPutRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[66] + mi := &file_cacheclient_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4683,7 +4819,7 @@ func (x *XSortedSetPutRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetPutRequest.ProtoReflect.Descriptor instead. func (*XSortedSetPutRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{66} + return file_cacheclient_proto_rawDescGZIP(), []int{68} } func (x *XSortedSetPutRequest) GetSetName() []byte { @@ -4723,7 +4859,7 @@ type XSortedSetPutResponse struct { func (x *XSortedSetPutResponse) Reset() { *x = XSortedSetPutResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[67] + mi := &file_cacheclient_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4736,7 +4872,7 @@ func (x *XSortedSetPutResponse) String() string { func (*XSortedSetPutResponse) ProtoMessage() {} func (x *XSortedSetPutResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[67] + mi := &file_cacheclient_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4749,7 +4885,7 @@ func (x *XSortedSetPutResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetPutResponse.ProtoReflect.Descriptor instead. func (*XSortedSetPutResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{67} + return file_cacheclient_proto_rawDescGZIP(), []int{69} } type XSortedSetFetchRequest struct { @@ -4770,7 +4906,7 @@ type XSortedSetFetchRequest struct { func (x *XSortedSetFetchRequest) Reset() { *x = XSortedSetFetchRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[68] + mi := &file_cacheclient_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4783,7 +4919,7 @@ func (x *XSortedSetFetchRequest) String() string { func (*XSortedSetFetchRequest) ProtoMessage() {} func (x *XSortedSetFetchRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[68] + mi := &file_cacheclient_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4796,7 +4932,7 @@ func (x *XSortedSetFetchRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetFetchRequest.ProtoReflect.Descriptor instead. func (*XSortedSetFetchRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{68} + return file_cacheclient_proto_rawDescGZIP(), []int{70} } func (x *XSortedSetFetchRequest) GetSetName() []byte { @@ -4872,7 +5008,7 @@ type XSortedSetFetchResponse struct { func (x *XSortedSetFetchResponse) Reset() { *x = XSortedSetFetchResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[69] + mi := &file_cacheclient_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4885,7 +5021,7 @@ func (x *XSortedSetFetchResponse) String() string { func (*XSortedSetFetchResponse) ProtoMessage() {} func (x *XSortedSetFetchResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[69] + mi := &file_cacheclient_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4898,7 +5034,7 @@ func (x *XSortedSetFetchResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetFetchResponse.ProtoReflect.Descriptor instead. func (*XSortedSetFetchResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{69} + return file_cacheclient_proto_rawDescGZIP(), []int{71} } func (m *XSortedSetFetchResponse) GetSortedSet() isXSortedSetFetchResponse_SortedSet { @@ -4950,7 +5086,7 @@ type XSortedSetGetScoreRequest struct { func (x *XSortedSetGetScoreRequest) Reset() { *x = XSortedSetGetScoreRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[70] + mi := &file_cacheclient_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4963,7 +5099,7 @@ func (x *XSortedSetGetScoreRequest) String() string { func (*XSortedSetGetScoreRequest) ProtoMessage() {} func (x *XSortedSetGetScoreRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[70] + mi := &file_cacheclient_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4976,7 +5112,7 @@ func (x *XSortedSetGetScoreRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetGetScoreRequest.ProtoReflect.Descriptor instead. func (*XSortedSetGetScoreRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{70} + return file_cacheclient_proto_rawDescGZIP(), []int{72} } func (x *XSortedSetGetScoreRequest) GetSetName() []byte { @@ -5008,7 +5144,7 @@ type XSortedSetGetScoreResponse struct { func (x *XSortedSetGetScoreResponse) Reset() { *x = XSortedSetGetScoreResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[71] + mi := &file_cacheclient_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5021,7 +5157,7 @@ func (x *XSortedSetGetScoreResponse) String() string { func (*XSortedSetGetScoreResponse) ProtoMessage() {} func (x *XSortedSetGetScoreResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[71] + mi := &file_cacheclient_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5034,7 +5170,7 @@ func (x *XSortedSetGetScoreResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetGetScoreResponse.ProtoReflect.Descriptor instead. func (*XSortedSetGetScoreResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{71} + return file_cacheclient_proto_rawDescGZIP(), []int{73} } func (m *XSortedSetGetScoreResponse) GetSortedSet() isXSortedSetGetScoreResponse_SortedSet { @@ -5090,7 +5226,7 @@ type XSortedSetRemoveRequest struct { func (x *XSortedSetRemoveRequest) Reset() { *x = XSortedSetRemoveRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[72] + mi := &file_cacheclient_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5103,7 +5239,7 @@ func (x *XSortedSetRemoveRequest) String() string { func (*XSortedSetRemoveRequest) ProtoMessage() {} func (x *XSortedSetRemoveRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[72] + mi := &file_cacheclient_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5116,7 +5252,7 @@ func (x *XSortedSetRemoveRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetRemoveRequest.ProtoReflect.Descriptor instead. func (*XSortedSetRemoveRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{72} + return file_cacheclient_proto_rawDescGZIP(), []int{74} } func (x *XSortedSetRemoveRequest) GetSetName() []byte { @@ -5172,7 +5308,7 @@ type XSortedSetRemoveResponse struct { func (x *XSortedSetRemoveResponse) Reset() { *x = XSortedSetRemoveResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[73] + mi := &file_cacheclient_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5185,7 +5321,7 @@ func (x *XSortedSetRemoveResponse) String() string { func (*XSortedSetRemoveResponse) ProtoMessage() {} func (x *XSortedSetRemoveResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[73] + mi := &file_cacheclient_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5198,7 +5334,7 @@ func (x *XSortedSetRemoveResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetRemoveResponse.ProtoReflect.Descriptor instead. func (*XSortedSetRemoveResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{73} + return file_cacheclient_proto_rawDescGZIP(), []int{75} } type XSortedSetIncrementRequest struct { @@ -5216,7 +5352,7 @@ type XSortedSetIncrementRequest struct { func (x *XSortedSetIncrementRequest) Reset() { *x = XSortedSetIncrementRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[74] + mi := &file_cacheclient_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5229,7 +5365,7 @@ func (x *XSortedSetIncrementRequest) String() string { func (*XSortedSetIncrementRequest) ProtoMessage() {} func (x *XSortedSetIncrementRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[74] + mi := &file_cacheclient_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5242,7 +5378,7 @@ func (x *XSortedSetIncrementRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetIncrementRequest.ProtoReflect.Descriptor instead. func (*XSortedSetIncrementRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{74} + return file_cacheclient_proto_rawDescGZIP(), []int{76} } func (x *XSortedSetIncrementRequest) GetSetName() []byte { @@ -5292,7 +5428,7 @@ type XSortedSetIncrementResponse struct { func (x *XSortedSetIncrementResponse) Reset() { *x = XSortedSetIncrementResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[75] + mi := &file_cacheclient_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5305,7 +5441,7 @@ func (x *XSortedSetIncrementResponse) String() string { func (*XSortedSetIncrementResponse) ProtoMessage() {} func (x *XSortedSetIncrementResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[75] + mi := &file_cacheclient_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5318,7 +5454,7 @@ func (x *XSortedSetIncrementResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetIncrementResponse.ProtoReflect.Descriptor instead. func (*XSortedSetIncrementResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{75} + return file_cacheclient_proto_rawDescGZIP(), []int{77} } func (x *XSortedSetIncrementResponse) GetScore() float64 { @@ -5349,7 +5485,7 @@ type XSortedSetGetRankRequest struct { func (x *XSortedSetGetRankRequest) Reset() { *x = XSortedSetGetRankRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[76] + mi := &file_cacheclient_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5362,7 +5498,7 @@ func (x *XSortedSetGetRankRequest) String() string { func (*XSortedSetGetRankRequest) ProtoMessage() {} func (x *XSortedSetGetRankRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[76] + mi := &file_cacheclient_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5375,7 +5511,7 @@ func (x *XSortedSetGetRankRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetGetRankRequest.ProtoReflect.Descriptor instead. func (*XSortedSetGetRankRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{76} + return file_cacheclient_proto_rawDescGZIP(), []int{78} } func (x *XSortedSetGetRankRequest) GetSetName() []byte { @@ -5414,7 +5550,7 @@ type XSortedSetGetRankResponse struct { func (x *XSortedSetGetRankResponse) Reset() { *x = XSortedSetGetRankResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[77] + mi := &file_cacheclient_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5427,7 +5563,7 @@ func (x *XSortedSetGetRankResponse) String() string { func (*XSortedSetGetRankResponse) ProtoMessage() {} func (x *XSortedSetGetRankResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[77] + mi := &file_cacheclient_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5440,7 +5576,7 @@ func (x *XSortedSetGetRankResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetGetRankResponse.ProtoReflect.Descriptor instead. func (*XSortedSetGetRankResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{77} + return file_cacheclient_proto_rawDescGZIP(), []int{79} } func (m *XSortedSetGetRankResponse) GetRank() isXSortedSetGetRankResponse_Rank { @@ -5491,7 +5627,7 @@ type XSortedSetLengthRequest struct { func (x *XSortedSetLengthRequest) Reset() { *x = XSortedSetLengthRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[78] + mi := &file_cacheclient_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5504,7 +5640,7 @@ func (x *XSortedSetLengthRequest) String() string { func (*XSortedSetLengthRequest) ProtoMessage() {} func (x *XSortedSetLengthRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[78] + mi := &file_cacheclient_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5517,7 +5653,7 @@ func (x *XSortedSetLengthRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetLengthRequest.ProtoReflect.Descriptor instead. func (*XSortedSetLengthRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{78} + return file_cacheclient_proto_rawDescGZIP(), []int{80} } func (x *XSortedSetLengthRequest) GetSetName() []byte { @@ -5542,7 +5678,7 @@ type XSortedSetLengthResponse struct { func (x *XSortedSetLengthResponse) Reset() { *x = XSortedSetLengthResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[79] + mi := &file_cacheclient_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5555,7 +5691,7 @@ func (x *XSortedSetLengthResponse) String() string { func (*XSortedSetLengthResponse) ProtoMessage() {} func (x *XSortedSetLengthResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[79] + mi := &file_cacheclient_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5568,7 +5704,7 @@ func (x *XSortedSetLengthResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetLengthResponse.ProtoReflect.Descriptor instead. func (*XSortedSetLengthResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{79} + return file_cacheclient_proto_rawDescGZIP(), []int{81} } func (m *XSortedSetLengthResponse) GetSortedSet() isXSortedSetLengthResponse_SortedSet { @@ -5631,7 +5767,7 @@ type XSortedSetLengthByScoreRequest struct { func (x *XSortedSetLengthByScoreRequest) Reset() { *x = XSortedSetLengthByScoreRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[80] + mi := &file_cacheclient_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5644,7 +5780,7 @@ func (x *XSortedSetLengthByScoreRequest) String() string { func (*XSortedSetLengthByScoreRequest) ProtoMessage() {} func (x *XSortedSetLengthByScoreRequest) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[80] + mi := &file_cacheclient_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5657,7 +5793,7 @@ func (x *XSortedSetLengthByScoreRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetLengthByScoreRequest.ProtoReflect.Descriptor instead. func (*XSortedSetLengthByScoreRequest) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{80} + return file_cacheclient_proto_rawDescGZIP(), []int{82} } func (x *XSortedSetLengthByScoreRequest) GetSetName() []byte { @@ -5782,7 +5918,7 @@ type XSortedSetLengthByScoreResponse struct { func (x *XSortedSetLengthByScoreResponse) Reset() { *x = XSortedSetLengthByScoreResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[81] + mi := &file_cacheclient_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5795,7 +5931,7 @@ func (x *XSortedSetLengthByScoreResponse) String() string { func (*XSortedSetLengthByScoreResponse) ProtoMessage() {} func (x *XSortedSetLengthByScoreResponse) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[81] + mi := &file_cacheclient_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5808,7 +5944,7 @@ func (x *XSortedSetLengthByScoreResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetLengthByScoreResponse.ProtoReflect.Descriptor instead. func (*XSortedSetLengthByScoreResponse) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{81} + return file_cacheclient_proto_rawDescGZIP(), []int{83} } func (m *XSortedSetLengthByScoreResponse) GetSortedSet() isXSortedSetLengthByScoreResponse_SortedSet { @@ -5857,7 +5993,7 @@ type XSetIfNotExistsResponse_XStored struct { func (x *XSetIfNotExistsResponse_XStored) Reset() { *x = XSetIfNotExistsResponse_XStored{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[82] + mi := &file_cacheclient_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5870,7 +6006,7 @@ func (x *XSetIfNotExistsResponse_XStored) String() string { func (*XSetIfNotExistsResponse_XStored) ProtoMessage() {} func (x *XSetIfNotExistsResponse_XStored) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[82] + mi := &file_cacheclient_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5895,7 +6031,7 @@ type XSetIfNotExistsResponse_XNotStored struct { func (x *XSetIfNotExistsResponse_XNotStored) Reset() { *x = XSetIfNotExistsResponse_XNotStored{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[83] + mi := &file_cacheclient_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5908,7 +6044,7 @@ func (x *XSetIfNotExistsResponse_XNotStored) String() string { func (*XSetIfNotExistsResponse_XNotStored) ProtoMessage() {} func (x *XSetIfNotExistsResponse_XNotStored) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[83] + mi := &file_cacheclient_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5934,7 +6070,7 @@ type XUpdateTtlResponse_XSet struct { func (x *XUpdateTtlResponse_XSet) Reset() { *x = XUpdateTtlResponse_XSet{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[84] + mi := &file_cacheclient_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5947,7 +6083,7 @@ func (x *XUpdateTtlResponse_XSet) String() string { func (*XUpdateTtlResponse_XSet) ProtoMessage() {} func (x *XUpdateTtlResponse_XSet) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[84] + mi := &file_cacheclient_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5973,7 +6109,7 @@ type XUpdateTtlResponse_XNotSet struct { func (x *XUpdateTtlResponse_XNotSet) Reset() { *x = XUpdateTtlResponse_XNotSet{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[85] + mi := &file_cacheclient_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5986,7 +6122,7 @@ func (x *XUpdateTtlResponse_XNotSet) String() string { func (*XUpdateTtlResponse_XNotSet) ProtoMessage() {} func (x *XUpdateTtlResponse_XNotSet) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[85] + mi := &file_cacheclient_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6012,7 +6148,7 @@ type XUpdateTtlResponse_XMissing struct { func (x *XUpdateTtlResponse_XMissing) Reset() { *x = XUpdateTtlResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[86] + mi := &file_cacheclient_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6025,7 +6161,7 @@ func (x *XUpdateTtlResponse_XMissing) String() string { func (*XUpdateTtlResponse_XMissing) ProtoMessage() {} func (x *XUpdateTtlResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[86] + mi := &file_cacheclient_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6052,7 +6188,7 @@ type XItemGetTtlResponse_XFound struct { func (x *XItemGetTtlResponse_XFound) Reset() { *x = XItemGetTtlResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[87] + mi := &file_cacheclient_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6065,7 +6201,7 @@ func (x *XItemGetTtlResponse_XFound) String() string { func (*XItemGetTtlResponse_XFound) ProtoMessage() {} func (x *XItemGetTtlResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[87] + mi := &file_cacheclient_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6097,7 +6233,7 @@ type XItemGetTtlResponse_XMissing struct { func (x *XItemGetTtlResponse_XMissing) Reset() { *x = XItemGetTtlResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[88] + mi := &file_cacheclient_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6110,7 +6246,7 @@ func (x *XItemGetTtlResponse_XMissing) String() string { func (*XItemGetTtlResponse_XMissing) ProtoMessage() {} func (x *XItemGetTtlResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[88] + mi := &file_cacheclient_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6137,7 +6273,7 @@ type XItemGetTypeResponse_XFound struct { func (x *XItemGetTypeResponse_XFound) Reset() { *x = XItemGetTypeResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[89] + mi := &file_cacheclient_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6150,7 +6286,7 @@ func (x *XItemGetTypeResponse_XFound) String() string { func (*XItemGetTypeResponse_XFound) ProtoMessage() {} func (x *XItemGetTypeResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[89] + mi := &file_cacheclient_proto_msgTypes[91] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6182,7 +6318,7 @@ type XItemGetTypeResponse_XMissing struct { func (x *XItemGetTypeResponse_XMissing) Reset() { *x = XItemGetTypeResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[90] + mi := &file_cacheclient_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6195,7 +6331,7 @@ func (x *XItemGetTypeResponse_XMissing) String() string { func (*XItemGetTypeResponse_XMissing) ProtoMessage() {} func (x *XItemGetTypeResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[90] + mi := &file_cacheclient_proto_msgTypes[92] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6223,7 +6359,7 @@ type XDictionaryGetResponse_XDictionaryGetResponsePart struct { func (x *XDictionaryGetResponse_XDictionaryGetResponsePart) Reset() { *x = XDictionaryGetResponse_XDictionaryGetResponsePart{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[91] + mi := &file_cacheclient_proto_msgTypes[93] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6236,7 +6372,7 @@ func (x *XDictionaryGetResponse_XDictionaryGetResponsePart) String() string { func (*XDictionaryGetResponse_XDictionaryGetResponsePart) ProtoMessage() {} func (x *XDictionaryGetResponse_XDictionaryGetResponsePart) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[91] + mi := &file_cacheclient_proto_msgTypes[93] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6277,7 +6413,7 @@ type XDictionaryGetResponse_XFound struct { func (x *XDictionaryGetResponse_XFound) Reset() { *x = XDictionaryGetResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[92] + mi := &file_cacheclient_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6290,7 +6426,7 @@ func (x *XDictionaryGetResponse_XFound) String() string { func (*XDictionaryGetResponse_XFound) ProtoMessage() {} func (x *XDictionaryGetResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[92] + mi := &file_cacheclient_proto_msgTypes[94] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6322,7 +6458,7 @@ type XDictionaryGetResponse_XMissing struct { func (x *XDictionaryGetResponse_XMissing) Reset() { *x = XDictionaryGetResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[93] + mi := &file_cacheclient_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6335,7 +6471,7 @@ func (x *XDictionaryGetResponse_XMissing) String() string { func (*XDictionaryGetResponse_XMissing) ProtoMessage() {} func (x *XDictionaryGetResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[93] + mi := &file_cacheclient_proto_msgTypes[95] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6362,7 +6498,7 @@ type XDictionaryFetchResponse_XFound struct { func (x *XDictionaryFetchResponse_XFound) Reset() { *x = XDictionaryFetchResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[94] + mi := &file_cacheclient_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6375,7 +6511,7 @@ func (x *XDictionaryFetchResponse_XFound) String() string { func (*XDictionaryFetchResponse_XFound) ProtoMessage() {} func (x *XDictionaryFetchResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[94] + mi := &file_cacheclient_proto_msgTypes[96] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6407,7 +6543,7 @@ type XDictionaryFetchResponse_XMissing struct { func (x *XDictionaryFetchResponse_XMissing) Reset() { *x = XDictionaryFetchResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[95] + mi := &file_cacheclient_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6420,7 +6556,7 @@ func (x *XDictionaryFetchResponse_XMissing) String() string { func (*XDictionaryFetchResponse_XMissing) ProtoMessage() {} func (x *XDictionaryFetchResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[95] + mi := &file_cacheclient_proto_msgTypes[97] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6447,7 +6583,7 @@ type XDictionaryDeleteRequest_Some struct { func (x *XDictionaryDeleteRequest_Some) Reset() { *x = XDictionaryDeleteRequest_Some{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[96] + mi := &file_cacheclient_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6460,7 +6596,7 @@ func (x *XDictionaryDeleteRequest_Some) String() string { func (*XDictionaryDeleteRequest_Some) ProtoMessage() {} func (x *XDictionaryDeleteRequest_Some) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[96] + mi := &file_cacheclient_proto_msgTypes[98] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6492,7 +6628,7 @@ type XDictionaryDeleteRequest_All struct { func (x *XDictionaryDeleteRequest_All) Reset() { *x = XDictionaryDeleteRequest_All{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[97] + mi := &file_cacheclient_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6505,7 +6641,7 @@ func (x *XDictionaryDeleteRequest_All) String() string { func (*XDictionaryDeleteRequest_All) ProtoMessage() {} func (x *XDictionaryDeleteRequest_All) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[97] + mi := &file_cacheclient_proto_msgTypes[99] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6532,7 +6668,7 @@ type XDictionaryLengthResponse_XFound struct { func (x *XDictionaryLengthResponse_XFound) Reset() { *x = XDictionaryLengthResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[98] + mi := &file_cacheclient_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6545,7 +6681,7 @@ func (x *XDictionaryLengthResponse_XFound) String() string { func (*XDictionaryLengthResponse_XFound) ProtoMessage() {} func (x *XDictionaryLengthResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[98] + mi := &file_cacheclient_proto_msgTypes[100] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6577,7 +6713,7 @@ type XDictionaryLengthResponse_XMissing struct { func (x *XDictionaryLengthResponse_XMissing) Reset() { *x = XDictionaryLengthResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[99] + mi := &file_cacheclient_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6590,7 +6726,7 @@ func (x *XDictionaryLengthResponse_XMissing) String() string { func (*XDictionaryLengthResponse_XMissing) ProtoMessage() {} func (x *XDictionaryLengthResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[99] + mi := &file_cacheclient_proto_msgTypes[101] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6617,7 +6753,7 @@ type XSetFetchResponse_XFound struct { func (x *XSetFetchResponse_XFound) Reset() { *x = XSetFetchResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[100] + mi := &file_cacheclient_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6630,7 +6766,7 @@ func (x *XSetFetchResponse_XFound) String() string { func (*XSetFetchResponse_XFound) ProtoMessage() {} func (x *XSetFetchResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[100] + mi := &file_cacheclient_proto_msgTypes[102] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6662,7 +6798,7 @@ type XSetFetchResponse_XMissing struct { func (x *XSetFetchResponse_XMissing) Reset() { *x = XSetFetchResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[101] + mi := &file_cacheclient_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6675,7 +6811,7 @@ func (x *XSetFetchResponse_XMissing) String() string { func (*XSetFetchResponse_XMissing) ProtoMessage() {} func (x *XSetFetchResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[101] + mi := &file_cacheclient_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6703,7 +6839,7 @@ type XSetDifferenceRequest_XMinuend struct { func (x *XSetDifferenceRequest_XMinuend) Reset() { *x = XSetDifferenceRequest_XMinuend{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[102] + mi := &file_cacheclient_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6716,7 +6852,7 @@ func (x *XSetDifferenceRequest_XMinuend) String() string { func (*XSetDifferenceRequest_XMinuend) ProtoMessage() {} func (x *XSetDifferenceRequest_XMinuend) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[102] + mi := &file_cacheclient_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6755,7 +6891,7 @@ type XSetDifferenceRequest_XSubtrahend struct { func (x *XSetDifferenceRequest_XSubtrahend) Reset() { *x = XSetDifferenceRequest_XSubtrahend{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[103] + mi := &file_cacheclient_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6768,7 +6904,7 @@ func (x *XSetDifferenceRequest_XSubtrahend) String() string { func (*XSetDifferenceRequest_XSubtrahend) ProtoMessage() {} func (x *XSetDifferenceRequest_XSubtrahend) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[103] + mi := &file_cacheclient_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6834,7 +6970,7 @@ type XSetDifferenceRequest_XSubtrahend_XSet struct { func (x *XSetDifferenceRequest_XSubtrahend_XSet) Reset() { *x = XSetDifferenceRequest_XSubtrahend_XSet{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[104] + mi := &file_cacheclient_proto_msgTypes[106] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6847,7 +6983,7 @@ func (x *XSetDifferenceRequest_XSubtrahend_XSet) String() string { func (*XSetDifferenceRequest_XSubtrahend_XSet) ProtoMessage() {} func (x *XSetDifferenceRequest_XSubtrahend_XSet) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[104] + mi := &file_cacheclient_proto_msgTypes[106] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6880,7 +7016,7 @@ type XSetDifferenceRequest_XSubtrahend_XIdentity struct { func (x *XSetDifferenceRequest_XSubtrahend_XIdentity) Reset() { *x = XSetDifferenceRequest_XSubtrahend_XIdentity{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[105] + mi := &file_cacheclient_proto_msgTypes[107] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6893,7 +7029,7 @@ func (x *XSetDifferenceRequest_XSubtrahend_XIdentity) String() string { func (*XSetDifferenceRequest_XSubtrahend_XIdentity) ProtoMessage() {} func (x *XSetDifferenceRequest_XSubtrahend_XIdentity) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[105] + mi := &file_cacheclient_proto_msgTypes[107] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6918,7 +7054,7 @@ type XSetDifferenceResponse_XFound struct { func (x *XSetDifferenceResponse_XFound) Reset() { *x = XSetDifferenceResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[106] + mi := &file_cacheclient_proto_msgTypes[108] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6931,7 +7067,7 @@ func (x *XSetDifferenceResponse_XFound) String() string { func (*XSetDifferenceResponse_XFound) ProtoMessage() {} func (x *XSetDifferenceResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[106] + mi := &file_cacheclient_proto_msgTypes[108] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6956,7 +7092,7 @@ type XSetDifferenceResponse_XMissing struct { func (x *XSetDifferenceResponse_XMissing) Reset() { *x = XSetDifferenceResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[107] + mi := &file_cacheclient_proto_msgTypes[109] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6969,7 +7105,7 @@ func (x *XSetDifferenceResponse_XMissing) String() string { func (*XSetDifferenceResponse_XMissing) ProtoMessage() {} func (x *XSetDifferenceResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[107] + mi := &file_cacheclient_proto_msgTypes[109] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6998,7 +7134,7 @@ type XSetContainsResponse_XFound struct { func (x *XSetContainsResponse_XFound) Reset() { *x = XSetContainsResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[108] + mi := &file_cacheclient_proto_msgTypes[110] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7011,7 +7147,7 @@ func (x *XSetContainsResponse_XFound) String() string { func (*XSetContainsResponse_XFound) ProtoMessage() {} func (x *XSetContainsResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[108] + mi := &file_cacheclient_proto_msgTypes[110] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7043,7 +7179,7 @@ type XSetContainsResponse_XMissing struct { func (x *XSetContainsResponse_XMissing) Reset() { *x = XSetContainsResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[109] + mi := &file_cacheclient_proto_msgTypes[111] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7056,7 +7192,7 @@ func (x *XSetContainsResponse_XMissing) String() string { func (*XSetContainsResponse_XMissing) ProtoMessage() {} func (x *XSetContainsResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[109] + mi := &file_cacheclient_proto_msgTypes[111] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7083,7 +7219,7 @@ type XSetLengthResponse_XFound struct { func (x *XSetLengthResponse_XFound) Reset() { *x = XSetLengthResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[110] + mi := &file_cacheclient_proto_msgTypes[112] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7096,7 +7232,7 @@ func (x *XSetLengthResponse_XFound) String() string { func (*XSetLengthResponse_XFound) ProtoMessage() {} func (x *XSetLengthResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[110] + mi := &file_cacheclient_proto_msgTypes[112] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7128,7 +7264,7 @@ type XSetLengthResponse_XMissing struct { func (x *XSetLengthResponse_XMissing) Reset() { *x = XSetLengthResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[111] + mi := &file_cacheclient_proto_msgTypes[113] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7141,7 +7277,7 @@ func (x *XSetLengthResponse_XMissing) String() string { func (*XSetLengthResponse_XMissing) ProtoMessage() {} func (x *XSetLengthResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[111] + mi := &file_cacheclient_proto_msgTypes[113] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7157,33 +7293,31 @@ func (*XSetLengthResponse_XMissing) Descriptor() ([]byte, []int) { return file_cacheclient_proto_rawDescGZIP(), []int{40, 1} } -type XListPopFrontResponse_XFound struct { +type XSetPopResponse_XFound struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Front []byte `protobuf:"bytes,1,opt,name=front,proto3" json:"front,omitempty"` - // length of the list after the pop - ListLength uint32 `protobuf:"varint,2,opt,name=list_length,json=listLength,proto3" json:"list_length,omitempty"` + Elements [][]byte `protobuf:"bytes,1,rep,name=elements,proto3" json:"elements,omitempty"` } -func (x *XListPopFrontResponse_XFound) Reset() { - *x = XListPopFrontResponse_XFound{} +func (x *XSetPopResponse_XFound) Reset() { + *x = XSetPopResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[112] + mi := &file_cacheclient_proto_msgTypes[114] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *XListPopFrontResponse_XFound) String() string { +func (x *XSetPopResponse_XFound) String() string { return protoimpl.X.MessageStringOf(x) } -func (*XListPopFrontResponse_XFound) ProtoMessage() {} +func (*XSetPopResponse_XFound) ProtoMessage() {} -func (x *XListPopFrontResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[112] +func (x *XSetPopResponse_XFound) ProtoReflect() protoreflect.Message { + mi := &file_cacheclient_proto_msgTypes[114] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7194,48 +7328,41 @@ func (x *XListPopFrontResponse_XFound) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use XListPopFrontResponse_XFound.ProtoReflect.Descriptor instead. -func (*XListPopFrontResponse_XFound) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{50, 0} +// Deprecated: Use XSetPopResponse_XFound.ProtoReflect.Descriptor instead. +func (*XSetPopResponse_XFound) Descriptor() ([]byte, []int) { + return file_cacheclient_proto_rawDescGZIP(), []int{42, 0} } -func (x *XListPopFrontResponse_XFound) GetFront() []byte { +func (x *XSetPopResponse_XFound) GetElements() [][]byte { if x != nil { - return x.Front + return x.Elements } return nil } -func (x *XListPopFrontResponse_XFound) GetListLength() uint32 { - if x != nil { - return x.ListLength - } - return 0 -} - -type XListPopFrontResponse_XMissing struct { +type XSetPopResponse_XMissing struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } -func (x *XListPopFrontResponse_XMissing) Reset() { - *x = XListPopFrontResponse_XMissing{} +func (x *XSetPopResponse_XMissing) Reset() { + *x = XSetPopResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[113] + mi := &file_cacheclient_proto_msgTypes[115] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *XListPopFrontResponse_XMissing) String() string { +func (x *XSetPopResponse_XMissing) String() string { return protoimpl.X.MessageStringOf(x) } -func (*XListPopFrontResponse_XMissing) ProtoMessage() {} +func (*XSetPopResponse_XMissing) ProtoMessage() {} -func (x *XListPopFrontResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[113] +func (x *XSetPopResponse_XMissing) ProtoReflect() protoreflect.Message { + mi := &file_cacheclient_proto_msgTypes[115] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7246,25 +7373,119 @@ func (x *XListPopFrontResponse_XMissing) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use XListPopFrontResponse_XMissing.ProtoReflect.Descriptor instead. -func (*XListPopFrontResponse_XMissing) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{50, 1} +// Deprecated: Use XSetPopResponse_XMissing.ProtoReflect.Descriptor instead. +func (*XSetPopResponse_XMissing) Descriptor() ([]byte, []int) { + return file_cacheclient_proto_rawDescGZIP(), []int{42, 1} } -type XListPopBackResponse_XFound struct { +type XListPopFrontResponse_XFound struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Back []byte `protobuf:"bytes,1,opt,name=back,proto3" json:"back,omitempty"` + Front []byte `protobuf:"bytes,1,opt,name=front,proto3" json:"front,omitempty"` // length of the list after the pop ListLength uint32 `protobuf:"varint,2,opt,name=list_length,json=listLength,proto3" json:"list_length,omitempty"` } -func (x *XListPopBackResponse_XFound) Reset() { - *x = XListPopBackResponse_XFound{} +func (x *XListPopFrontResponse_XFound) Reset() { + *x = XListPopFrontResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[114] + mi := &file_cacheclient_proto_msgTypes[116] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XListPopFrontResponse_XFound) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XListPopFrontResponse_XFound) ProtoMessage() {} + +func (x *XListPopFrontResponse_XFound) ProtoReflect() protoreflect.Message { + mi := &file_cacheclient_proto_msgTypes[116] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XListPopFrontResponse_XFound.ProtoReflect.Descriptor instead. +func (*XListPopFrontResponse_XFound) Descriptor() ([]byte, []int) { + return file_cacheclient_proto_rawDescGZIP(), []int{52, 0} +} + +func (x *XListPopFrontResponse_XFound) GetFront() []byte { + if x != nil { + return x.Front + } + return nil +} + +func (x *XListPopFrontResponse_XFound) GetListLength() uint32 { + if x != nil { + return x.ListLength + } + return 0 +} + +type XListPopFrontResponse_XMissing struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *XListPopFrontResponse_XMissing) Reset() { + *x = XListPopFrontResponse_XMissing{} + if protoimpl.UnsafeEnabled { + mi := &file_cacheclient_proto_msgTypes[117] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XListPopFrontResponse_XMissing) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XListPopFrontResponse_XMissing) ProtoMessage() {} + +func (x *XListPopFrontResponse_XMissing) ProtoReflect() protoreflect.Message { + mi := &file_cacheclient_proto_msgTypes[117] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XListPopFrontResponse_XMissing.ProtoReflect.Descriptor instead. +func (*XListPopFrontResponse_XMissing) Descriptor() ([]byte, []int) { + return file_cacheclient_proto_rawDescGZIP(), []int{52, 1} +} + +type XListPopBackResponse_XFound struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Back []byte `protobuf:"bytes,1,opt,name=back,proto3" json:"back,omitempty"` + // length of the list after the pop + ListLength uint32 `protobuf:"varint,2,opt,name=list_length,json=listLength,proto3" json:"list_length,omitempty"` +} + +func (x *XListPopBackResponse_XFound) Reset() { + *x = XListPopBackResponse_XFound{} + if protoimpl.UnsafeEnabled { + mi := &file_cacheclient_proto_msgTypes[118] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7277,7 +7498,7 @@ func (x *XListPopBackResponse_XFound) String() string { func (*XListPopBackResponse_XFound) ProtoMessage() {} func (x *XListPopBackResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[114] + mi := &file_cacheclient_proto_msgTypes[118] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7290,7 +7511,7 @@ func (x *XListPopBackResponse_XFound) ProtoReflect() protoreflect.Message { // Deprecated: Use XListPopBackResponse_XFound.ProtoReflect.Descriptor instead. func (*XListPopBackResponse_XFound) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{52, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{54, 0} } func (x *XListPopBackResponse_XFound) GetBack() []byte { @@ -7316,7 +7537,7 @@ type XListPopBackResponse_XMissing struct { func (x *XListPopBackResponse_XMissing) Reset() { *x = XListPopBackResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[115] + mi := &file_cacheclient_proto_msgTypes[119] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7329,7 +7550,7 @@ func (x *XListPopBackResponse_XMissing) String() string { func (*XListPopBackResponse_XMissing) ProtoMessage() {} func (x *XListPopBackResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[115] + mi := &file_cacheclient_proto_msgTypes[119] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7342,7 +7563,7 @@ func (x *XListPopBackResponse_XMissing) ProtoReflect() protoreflect.Message { // Deprecated: Use XListPopBackResponse_XMissing.ProtoReflect.Descriptor instead. func (*XListPopBackResponse_XMissing) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{52, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{54, 1} } type XListEraseRequest_XAll struct { @@ -7354,7 +7575,7 @@ type XListEraseRequest_XAll struct { func (x *XListEraseRequest_XAll) Reset() { *x = XListEraseRequest_XAll{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[116] + mi := &file_cacheclient_proto_msgTypes[120] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7367,7 +7588,7 @@ func (x *XListEraseRequest_XAll) String() string { func (*XListEraseRequest_XAll) ProtoMessage() {} func (x *XListEraseRequest_XAll) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[116] + mi := &file_cacheclient_proto_msgTypes[120] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7380,7 +7601,7 @@ func (x *XListEraseRequest_XAll) ProtoReflect() protoreflect.Message { // Deprecated: Use XListEraseRequest_XAll.ProtoReflect.Descriptor instead. func (*XListEraseRequest_XAll) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{54, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{56, 0} } type XListEraseRequest_XListRanges struct { @@ -7394,7 +7615,7 @@ type XListEraseRequest_XListRanges struct { func (x *XListEraseRequest_XListRanges) Reset() { *x = XListEraseRequest_XListRanges{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[117] + mi := &file_cacheclient_proto_msgTypes[121] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7407,7 +7628,7 @@ func (x *XListEraseRequest_XListRanges) String() string { func (*XListEraseRequest_XListRanges) ProtoMessage() {} func (x *XListEraseRequest_XListRanges) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[117] + mi := &file_cacheclient_proto_msgTypes[121] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7420,7 +7641,7 @@ func (x *XListEraseRequest_XListRanges) ProtoReflect() protoreflect.Message { // Deprecated: Use XListEraseRequest_XListRanges.ProtoReflect.Descriptor instead. func (*XListEraseRequest_XListRanges) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{54, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{56, 1} } func (x *XListEraseRequest_XListRanges) GetRanges() []*XListRange { @@ -7441,7 +7662,7 @@ type XListEraseResponse_XFound struct { func (x *XListEraseResponse_XFound) Reset() { *x = XListEraseResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[118] + mi := &file_cacheclient_proto_msgTypes[122] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7454,7 +7675,7 @@ func (x *XListEraseResponse_XFound) String() string { func (*XListEraseResponse_XFound) ProtoMessage() {} func (x *XListEraseResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[118] + mi := &file_cacheclient_proto_msgTypes[122] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7467,7 +7688,7 @@ func (x *XListEraseResponse_XFound) ProtoReflect() protoreflect.Message { // Deprecated: Use XListEraseResponse_XFound.ProtoReflect.Descriptor instead. func (*XListEraseResponse_XFound) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{55, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{57, 0} } func (x *XListEraseResponse_XFound) GetListLength() uint32 { @@ -7486,7 +7707,7 @@ type XListEraseResponse_XMissing struct { func (x *XListEraseResponse_XMissing) Reset() { *x = XListEraseResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[119] + mi := &file_cacheclient_proto_msgTypes[123] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7499,7 +7720,7 @@ func (x *XListEraseResponse_XMissing) String() string { func (*XListEraseResponse_XMissing) ProtoMessage() {} func (x *XListEraseResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[119] + mi := &file_cacheclient_proto_msgTypes[123] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7512,7 +7733,7 @@ func (x *XListEraseResponse_XMissing) ProtoReflect() protoreflect.Message { // Deprecated: Use XListEraseResponse_XMissing.ProtoReflect.Descriptor instead. func (*XListEraseResponse_XMissing) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{55, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{57, 1} } type XListRemoveResponse_XFound struct { @@ -7526,7 +7747,7 @@ type XListRemoveResponse_XFound struct { func (x *XListRemoveResponse_XFound) Reset() { *x = XListRemoveResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[120] + mi := &file_cacheclient_proto_msgTypes[124] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7539,7 +7760,7 @@ func (x *XListRemoveResponse_XFound) String() string { func (*XListRemoveResponse_XFound) ProtoMessage() {} func (x *XListRemoveResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[120] + mi := &file_cacheclient_proto_msgTypes[124] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7552,7 +7773,7 @@ func (x *XListRemoveResponse_XFound) ProtoReflect() protoreflect.Message { // Deprecated: Use XListRemoveResponse_XFound.ProtoReflect.Descriptor instead. func (*XListRemoveResponse_XFound) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{57, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{59, 0} } func (x *XListRemoveResponse_XFound) GetListLength() uint32 { @@ -7571,7 +7792,7 @@ type XListRemoveResponse_XMissing struct { func (x *XListRemoveResponse_XMissing) Reset() { *x = XListRemoveResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[121] + mi := &file_cacheclient_proto_msgTypes[125] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7584,7 +7805,7 @@ func (x *XListRemoveResponse_XMissing) String() string { func (*XListRemoveResponse_XMissing) ProtoMessage() {} func (x *XListRemoveResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[121] + mi := &file_cacheclient_proto_msgTypes[125] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7597,7 +7818,7 @@ func (x *XListRemoveResponse_XMissing) ProtoReflect() protoreflect.Message { // Deprecated: Use XListRemoveResponse_XMissing.ProtoReflect.Descriptor instead. func (*XListRemoveResponse_XMissing) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{57, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{59, 1} } type XListRetainResponse_XFound struct { @@ -7611,7 +7832,7 @@ type XListRetainResponse_XFound struct { func (x *XListRetainResponse_XFound) Reset() { *x = XListRetainResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[122] + mi := &file_cacheclient_proto_msgTypes[126] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7624,7 +7845,7 @@ func (x *XListRetainResponse_XFound) String() string { func (*XListRetainResponse_XFound) ProtoMessage() {} func (x *XListRetainResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[122] + mi := &file_cacheclient_proto_msgTypes[126] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7637,7 +7858,7 @@ func (x *XListRetainResponse_XFound) ProtoReflect() protoreflect.Message { // Deprecated: Use XListRetainResponse_XFound.ProtoReflect.Descriptor instead. func (*XListRetainResponse_XFound) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{61, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{63, 0} } func (x *XListRetainResponse_XFound) GetListLength() uint32 { @@ -7656,7 +7877,7 @@ type XListRetainResponse_XMissing struct { func (x *XListRetainResponse_XMissing) Reset() { *x = XListRetainResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[123] + mi := &file_cacheclient_proto_msgTypes[127] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7669,7 +7890,7 @@ func (x *XListRetainResponse_XMissing) String() string { func (*XListRetainResponse_XMissing) ProtoMessage() {} func (x *XListRetainResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[123] + mi := &file_cacheclient_proto_msgTypes[127] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7682,7 +7903,7 @@ func (x *XListRetainResponse_XMissing) ProtoReflect() protoreflect.Message { // Deprecated: Use XListRetainResponse_XMissing.ProtoReflect.Descriptor instead. func (*XListRetainResponse_XMissing) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{61, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{63, 1} } type XListFetchResponse_XFound struct { @@ -7696,7 +7917,7 @@ type XListFetchResponse_XFound struct { func (x *XListFetchResponse_XFound) Reset() { *x = XListFetchResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[124] + mi := &file_cacheclient_proto_msgTypes[128] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7709,7 +7930,7 @@ func (x *XListFetchResponse_XFound) String() string { func (*XListFetchResponse_XFound) ProtoMessage() {} func (x *XListFetchResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[124] + mi := &file_cacheclient_proto_msgTypes[128] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7722,7 +7943,7 @@ func (x *XListFetchResponse_XFound) ProtoReflect() protoreflect.Message { // Deprecated: Use XListFetchResponse_XFound.ProtoReflect.Descriptor instead. func (*XListFetchResponse_XFound) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{62, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{64, 0} } func (x *XListFetchResponse_XFound) GetValues() [][]byte { @@ -7741,7 +7962,7 @@ type XListFetchResponse_XMissing struct { func (x *XListFetchResponse_XMissing) Reset() { *x = XListFetchResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[125] + mi := &file_cacheclient_proto_msgTypes[129] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7754,7 +7975,7 @@ func (x *XListFetchResponse_XMissing) String() string { func (*XListFetchResponse_XMissing) ProtoMessage() {} func (x *XListFetchResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[125] + mi := &file_cacheclient_proto_msgTypes[129] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7767,7 +7988,7 @@ func (x *XListFetchResponse_XMissing) ProtoReflect() protoreflect.Message { // Deprecated: Use XListFetchResponse_XMissing.ProtoReflect.Descriptor instead. func (*XListFetchResponse_XMissing) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{62, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{64, 1} } type XListLengthResponse_XFound struct { @@ -7781,7 +8002,7 @@ type XListLengthResponse_XFound struct { func (x *XListLengthResponse_XFound) Reset() { *x = XListLengthResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[126] + mi := &file_cacheclient_proto_msgTypes[130] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7794,7 +8015,7 @@ func (x *XListLengthResponse_XFound) String() string { func (*XListLengthResponse_XFound) ProtoMessage() {} func (x *XListLengthResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[126] + mi := &file_cacheclient_proto_msgTypes[130] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7807,7 +8028,7 @@ func (x *XListLengthResponse_XFound) ProtoReflect() protoreflect.Message { // Deprecated: Use XListLengthResponse_XFound.ProtoReflect.Descriptor instead. func (*XListLengthResponse_XFound) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{64, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{66, 0} } func (x *XListLengthResponse_XFound) GetLength() uint32 { @@ -7826,7 +8047,7 @@ type XListLengthResponse_XMissing struct { func (x *XListLengthResponse_XMissing) Reset() { *x = XListLengthResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[127] + mi := &file_cacheclient_proto_msgTypes[131] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7839,7 +8060,7 @@ func (x *XListLengthResponse_XMissing) String() string { func (*XListLengthResponse_XMissing) ProtoMessage() {} func (x *XListLengthResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[127] + mi := &file_cacheclient_proto_msgTypes[131] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7852,7 +8073,7 @@ func (x *XListLengthResponse_XMissing) ProtoReflect() protoreflect.Message { // Deprecated: Use XListLengthResponse_XMissing.ProtoReflect.Descriptor instead. func (*XListLengthResponse_XMissing) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{64, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{66, 1} } type XSortedSetFetchRequest_XByIndex struct { @@ -7881,7 +8102,7 @@ type XSortedSetFetchRequest_XByIndex struct { func (x *XSortedSetFetchRequest_XByIndex) Reset() { *x = XSortedSetFetchRequest_XByIndex{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[128] + mi := &file_cacheclient_proto_msgTypes[132] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7894,7 +8115,7 @@ func (x *XSortedSetFetchRequest_XByIndex) String() string { func (*XSortedSetFetchRequest_XByIndex) ProtoMessage() {} func (x *XSortedSetFetchRequest_XByIndex) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[128] + mi := &file_cacheclient_proto_msgTypes[132] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7907,7 +8128,7 @@ func (x *XSortedSetFetchRequest_XByIndex) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetFetchRequest_XByIndex.ProtoReflect.Descriptor instead. func (*XSortedSetFetchRequest_XByIndex) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{68, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{70, 0} } func (m *XSortedSetFetchRequest_XByIndex) GetStart() isXSortedSetFetchRequest_XByIndex_Start { @@ -8011,7 +8232,7 @@ type XSortedSetFetchRequest_XByScore struct { func (x *XSortedSetFetchRequest_XByScore) Reset() { *x = XSortedSetFetchRequest_XByScore{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[129] + mi := &file_cacheclient_proto_msgTypes[133] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8024,7 +8245,7 @@ func (x *XSortedSetFetchRequest_XByScore) String() string { func (*XSortedSetFetchRequest_XByScore) ProtoMessage() {} func (x *XSortedSetFetchRequest_XByScore) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[129] + mi := &file_cacheclient_proto_msgTypes[133] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8037,7 +8258,7 @@ func (x *XSortedSetFetchRequest_XByScore) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetFetchRequest_XByScore.ProtoReflect.Descriptor instead. func (*XSortedSetFetchRequest_XByScore) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{68, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{70, 1} } func (m *XSortedSetFetchRequest_XByScore) GetMin() isXSortedSetFetchRequest_XByScore_Min { @@ -8140,7 +8361,7 @@ type XSortedSetFetchRequest_XByScore_XScore struct { func (x *XSortedSetFetchRequest_XByScore_XScore) Reset() { *x = XSortedSetFetchRequest_XByScore_XScore{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[130] + mi := &file_cacheclient_proto_msgTypes[134] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8153,7 +8374,7 @@ func (x *XSortedSetFetchRequest_XByScore_XScore) String() string { func (*XSortedSetFetchRequest_XByScore_XScore) ProtoMessage() {} func (x *XSortedSetFetchRequest_XByScore_XScore) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[130] + mi := &file_cacheclient_proto_msgTypes[134] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8166,7 +8387,7 @@ func (x *XSortedSetFetchRequest_XByScore_XScore) ProtoReflect() protoreflect.Mes // Deprecated: Use XSortedSetFetchRequest_XByScore_XScore.ProtoReflect.Descriptor instead. func (*XSortedSetFetchRequest_XByScore_XScore) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{68, 1, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{70, 1, 0} } func (x *XSortedSetFetchRequest_XByScore_XScore) GetScore() float64 { @@ -8198,7 +8419,7 @@ type XSortedSetFetchResponse_XFound struct { func (x *XSortedSetFetchResponse_XFound) Reset() { *x = XSortedSetFetchResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[131] + mi := &file_cacheclient_proto_msgTypes[135] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8211,7 +8432,7 @@ func (x *XSortedSetFetchResponse_XFound) String() string { func (*XSortedSetFetchResponse_XFound) ProtoMessage() {} func (x *XSortedSetFetchResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[131] + mi := &file_cacheclient_proto_msgTypes[135] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8224,7 +8445,7 @@ func (x *XSortedSetFetchResponse_XFound) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetFetchResponse_XFound.ProtoReflect.Descriptor instead. func (*XSortedSetFetchResponse_XFound) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{69, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{71, 0} } func (m *XSortedSetFetchResponse_XFound) GetElements() isXSortedSetFetchResponse_XFound_Elements { @@ -8273,7 +8494,7 @@ type XSortedSetFetchResponse_XMissing struct { func (x *XSortedSetFetchResponse_XMissing) Reset() { *x = XSortedSetFetchResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[132] + mi := &file_cacheclient_proto_msgTypes[136] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8286,7 +8507,7 @@ func (x *XSortedSetFetchResponse_XMissing) String() string { func (*XSortedSetFetchResponse_XMissing) ProtoMessage() {} func (x *XSortedSetFetchResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[132] + mi := &file_cacheclient_proto_msgTypes[136] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8299,7 +8520,7 @@ func (x *XSortedSetFetchResponse_XMissing) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetFetchResponse_XMissing.ProtoReflect.Descriptor instead. func (*XSortedSetFetchResponse_XMissing) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{69, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{71, 1} } type XSortedSetFetchResponse_XFound_XValuesWithScores struct { @@ -8313,7 +8534,7 @@ type XSortedSetFetchResponse_XFound_XValuesWithScores struct { func (x *XSortedSetFetchResponse_XFound_XValuesWithScores) Reset() { *x = XSortedSetFetchResponse_XFound_XValuesWithScores{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[133] + mi := &file_cacheclient_proto_msgTypes[137] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8326,7 +8547,7 @@ func (x *XSortedSetFetchResponse_XFound_XValuesWithScores) String() string { func (*XSortedSetFetchResponse_XFound_XValuesWithScores) ProtoMessage() {} func (x *XSortedSetFetchResponse_XFound_XValuesWithScores) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[133] + mi := &file_cacheclient_proto_msgTypes[137] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8339,7 +8560,7 @@ func (x *XSortedSetFetchResponse_XFound_XValuesWithScores) ProtoReflect() protor // Deprecated: Use XSortedSetFetchResponse_XFound_XValuesWithScores.ProtoReflect.Descriptor instead. func (*XSortedSetFetchResponse_XFound_XValuesWithScores) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{69, 0, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{71, 0, 0} } func (x *XSortedSetFetchResponse_XFound_XValuesWithScores) GetElements() []*XSortedSetElement { @@ -8360,7 +8581,7 @@ type XSortedSetFetchResponse_XFound_XValues struct { func (x *XSortedSetFetchResponse_XFound_XValues) Reset() { *x = XSortedSetFetchResponse_XFound_XValues{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[134] + mi := &file_cacheclient_proto_msgTypes[138] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8373,7 +8594,7 @@ func (x *XSortedSetFetchResponse_XFound_XValues) String() string { func (*XSortedSetFetchResponse_XFound_XValues) ProtoMessage() {} func (x *XSortedSetFetchResponse_XFound_XValues) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[134] + mi := &file_cacheclient_proto_msgTypes[138] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8386,7 +8607,7 @@ func (x *XSortedSetFetchResponse_XFound_XValues) ProtoReflect() protoreflect.Mes // Deprecated: Use XSortedSetFetchResponse_XFound_XValues.ProtoReflect.Descriptor instead. func (*XSortedSetFetchResponse_XFound_XValues) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{69, 0, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{71, 0, 1} } func (x *XSortedSetFetchResponse_XFound_XValues) GetValues() [][]byte { @@ -8408,7 +8629,7 @@ type XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart struct { func (x *XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart) Reset() { *x = XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[135] + mi := &file_cacheclient_proto_msgTypes[139] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8421,7 +8642,7 @@ func (x *XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart) String() str func (*XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart) ProtoMessage() {} func (x *XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[135] + mi := &file_cacheclient_proto_msgTypes[139] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8434,7 +8655,7 @@ func (x *XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart) ProtoReflect // Deprecated: Use XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart.ProtoReflect.Descriptor instead. func (*XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{71, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{73, 0} } func (x *XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart) GetResult() ECacheResult { @@ -8462,7 +8683,7 @@ type XSortedSetGetScoreResponse_XSortedSetFound struct { func (x *XSortedSetGetScoreResponse_XSortedSetFound) Reset() { *x = XSortedSetGetScoreResponse_XSortedSetFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[136] + mi := &file_cacheclient_proto_msgTypes[140] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8475,7 +8696,7 @@ func (x *XSortedSetGetScoreResponse_XSortedSetFound) String() string { func (*XSortedSetGetScoreResponse_XSortedSetFound) ProtoMessage() {} func (x *XSortedSetGetScoreResponse_XSortedSetFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[136] + mi := &file_cacheclient_proto_msgTypes[140] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8488,7 +8709,7 @@ func (x *XSortedSetGetScoreResponse_XSortedSetFound) ProtoReflect() protoreflect // Deprecated: Use XSortedSetGetScoreResponse_XSortedSetFound.ProtoReflect.Descriptor instead. func (*XSortedSetGetScoreResponse_XSortedSetFound) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{71, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{73, 1} } func (x *XSortedSetGetScoreResponse_XSortedSetFound) GetElements() []*XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart { @@ -8507,7 +8728,7 @@ type XSortedSetGetScoreResponse_XSortedSetMissing struct { func (x *XSortedSetGetScoreResponse_XSortedSetMissing) Reset() { *x = XSortedSetGetScoreResponse_XSortedSetMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[137] + mi := &file_cacheclient_proto_msgTypes[141] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8520,7 +8741,7 @@ func (x *XSortedSetGetScoreResponse_XSortedSetMissing) String() string { func (*XSortedSetGetScoreResponse_XSortedSetMissing) ProtoMessage() {} func (x *XSortedSetGetScoreResponse_XSortedSetMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[137] + mi := &file_cacheclient_proto_msgTypes[141] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8533,7 +8754,7 @@ func (x *XSortedSetGetScoreResponse_XSortedSetMissing) ProtoReflect() protorefle // Deprecated: Use XSortedSetGetScoreResponse_XSortedSetMissing.ProtoReflect.Descriptor instead. func (*XSortedSetGetScoreResponse_XSortedSetMissing) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{71, 2} + return file_cacheclient_proto_rawDescGZIP(), []int{73, 2} } type XSortedSetRemoveRequest_XAll struct { @@ -8545,7 +8766,7 @@ type XSortedSetRemoveRequest_XAll struct { func (x *XSortedSetRemoveRequest_XAll) Reset() { *x = XSortedSetRemoveRequest_XAll{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[138] + mi := &file_cacheclient_proto_msgTypes[142] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8558,7 +8779,7 @@ func (x *XSortedSetRemoveRequest_XAll) String() string { func (*XSortedSetRemoveRequest_XAll) ProtoMessage() {} func (x *XSortedSetRemoveRequest_XAll) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[138] + mi := &file_cacheclient_proto_msgTypes[142] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8571,7 +8792,7 @@ func (x *XSortedSetRemoveRequest_XAll) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetRemoveRequest_XAll.ProtoReflect.Descriptor instead. func (*XSortedSetRemoveRequest_XAll) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{72, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{74, 0} } type XSortedSetRemoveRequest_XSome struct { @@ -8585,7 +8806,7 @@ type XSortedSetRemoveRequest_XSome struct { func (x *XSortedSetRemoveRequest_XSome) Reset() { *x = XSortedSetRemoveRequest_XSome{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[139] + mi := &file_cacheclient_proto_msgTypes[143] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8598,7 +8819,7 @@ func (x *XSortedSetRemoveRequest_XSome) String() string { func (*XSortedSetRemoveRequest_XSome) ProtoMessage() {} func (x *XSortedSetRemoveRequest_XSome) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[139] + mi := &file_cacheclient_proto_msgTypes[143] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8611,7 +8832,7 @@ func (x *XSortedSetRemoveRequest_XSome) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetRemoveRequest_XSome.ProtoReflect.Descriptor instead. func (*XSortedSetRemoveRequest_XSome) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{72, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{74, 1} } func (x *XSortedSetRemoveRequest_XSome) GetValues() [][]byte { @@ -8636,7 +8857,7 @@ type XSortedSetGetRankResponse_XRankResponsePart struct { func (x *XSortedSetGetRankResponse_XRankResponsePart) Reset() { *x = XSortedSetGetRankResponse_XRankResponsePart{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[140] + mi := &file_cacheclient_proto_msgTypes[144] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8649,7 +8870,7 @@ func (x *XSortedSetGetRankResponse_XRankResponsePart) String() string { func (*XSortedSetGetRankResponse_XRankResponsePart) ProtoMessage() {} func (x *XSortedSetGetRankResponse_XRankResponsePart) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[140] + mi := &file_cacheclient_proto_msgTypes[144] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8662,7 +8883,7 @@ func (x *XSortedSetGetRankResponse_XRankResponsePart) ProtoReflect() protoreflec // Deprecated: Use XSortedSetGetRankResponse_XRankResponsePart.ProtoReflect.Descriptor instead. func (*XSortedSetGetRankResponse_XRankResponsePart) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{77, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{79, 0} } func (x *XSortedSetGetRankResponse_XRankResponsePart) GetResult() ECacheResult { @@ -8688,7 +8909,7 @@ type XSortedSetGetRankResponse_XSortedSetMissing struct { func (x *XSortedSetGetRankResponse_XSortedSetMissing) Reset() { *x = XSortedSetGetRankResponse_XSortedSetMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[141] + mi := &file_cacheclient_proto_msgTypes[145] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8701,7 +8922,7 @@ func (x *XSortedSetGetRankResponse_XSortedSetMissing) String() string { func (*XSortedSetGetRankResponse_XSortedSetMissing) ProtoMessage() {} func (x *XSortedSetGetRankResponse_XSortedSetMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[141] + mi := &file_cacheclient_proto_msgTypes[145] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8714,7 +8935,7 @@ func (x *XSortedSetGetRankResponse_XSortedSetMissing) ProtoReflect() protoreflec // Deprecated: Use XSortedSetGetRankResponse_XSortedSetMissing.ProtoReflect.Descriptor instead. func (*XSortedSetGetRankResponse_XSortedSetMissing) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{77, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{79, 1} } type XSortedSetLengthResponse_XFound struct { @@ -8728,7 +8949,7 @@ type XSortedSetLengthResponse_XFound struct { func (x *XSortedSetLengthResponse_XFound) Reset() { *x = XSortedSetLengthResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[142] + mi := &file_cacheclient_proto_msgTypes[146] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8741,7 +8962,7 @@ func (x *XSortedSetLengthResponse_XFound) String() string { func (*XSortedSetLengthResponse_XFound) ProtoMessage() {} func (x *XSortedSetLengthResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[142] + mi := &file_cacheclient_proto_msgTypes[146] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8754,7 +8975,7 @@ func (x *XSortedSetLengthResponse_XFound) ProtoReflect() protoreflect.Message { // Deprecated: Use XSortedSetLengthResponse_XFound.ProtoReflect.Descriptor instead. func (*XSortedSetLengthResponse_XFound) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{79, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{81, 0} } func (x *XSortedSetLengthResponse_XFound) GetLength() uint32 { @@ -8773,7 +8994,7 @@ type XSortedSetLengthResponse_XMissing struct { func (x *XSortedSetLengthResponse_XMissing) Reset() { *x = XSortedSetLengthResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[143] + mi := &file_cacheclient_proto_msgTypes[147] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8786,7 +9007,7 @@ func (x *XSortedSetLengthResponse_XMissing) String() string { func (*XSortedSetLengthResponse_XMissing) ProtoMessage() {} func (x *XSortedSetLengthResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[143] + mi := &file_cacheclient_proto_msgTypes[147] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8799,7 +9020,7 @@ func (x *XSortedSetLengthResponse_XMissing) ProtoReflect() protoreflect.Message // Deprecated: Use XSortedSetLengthResponse_XMissing.ProtoReflect.Descriptor instead. func (*XSortedSetLengthResponse_XMissing) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{79, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{81, 1} } type XSortedSetLengthByScoreResponse_XFound struct { @@ -8813,7 +9034,7 @@ type XSortedSetLengthByScoreResponse_XFound struct { func (x *XSortedSetLengthByScoreResponse_XFound) Reset() { *x = XSortedSetLengthByScoreResponse_XFound{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[144] + mi := &file_cacheclient_proto_msgTypes[148] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8826,7 +9047,7 @@ func (x *XSortedSetLengthByScoreResponse_XFound) String() string { func (*XSortedSetLengthByScoreResponse_XFound) ProtoMessage() {} func (x *XSortedSetLengthByScoreResponse_XFound) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[144] + mi := &file_cacheclient_proto_msgTypes[148] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8839,7 +9060,7 @@ func (x *XSortedSetLengthByScoreResponse_XFound) ProtoReflect() protoreflect.Mes // Deprecated: Use XSortedSetLengthByScoreResponse_XFound.ProtoReflect.Descriptor instead. func (*XSortedSetLengthByScoreResponse_XFound) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{81, 0} + return file_cacheclient_proto_rawDescGZIP(), []int{83, 0} } func (x *XSortedSetLengthByScoreResponse_XFound) GetLength() uint32 { @@ -8858,7 +9079,7 @@ type XSortedSetLengthByScoreResponse_XMissing struct { func (x *XSortedSetLengthByScoreResponse_XMissing) Reset() { *x = XSortedSetLengthByScoreResponse_XMissing{} if protoimpl.UnsafeEnabled { - mi := &file_cacheclient_proto_msgTypes[145] + mi := &file_cacheclient_proto_msgTypes[149] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8871,7 +9092,7 @@ func (x *XSortedSetLengthByScoreResponse_XMissing) String() string { func (*XSortedSetLengthByScoreResponse_XMissing) ProtoMessage() {} func (x *XSortedSetLengthByScoreResponse_XMissing) ProtoReflect() protoreflect.Message { - mi := &file_cacheclient_proto_msgTypes[145] + mi := &file_cacheclient_proto_msgTypes[149] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8884,7 +9105,7 @@ func (x *XSortedSetLengthByScoreResponse_XMissing) ProtoReflect() protoreflect.M // Deprecated: Use XSortedSetLengthByScoreResponse_XMissing.ProtoReflect.Descriptor instead. func (*XSortedSetLengthByScoreResponse_XMissing) Descriptor() ([]byte, []int) { - return file_cacheclient_proto_rawDescGZIP(), []int{81, 1} + return file_cacheclient_proto_rawDescGZIP(), []int{83, 1} } var File_cacheclient_proto protoreflect.FileDescriptor @@ -9263,762 +9484,784 @@ var file_cacheclient_proto_rawDesc = []byte{ 0x69, 0x6e, 0x67, 0x1a, 0x20, 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, - 0x67, 0x42, 0x05, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x22, 0xd2, 0x01, 0x0a, 0x1c, 0x5f, 0x4c, 0x69, - 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x74, 0x65, 0x46, 0x72, 0x6f, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x73, - 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, - 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x29, - 0x0a, 0x10, 0x74, 0x74, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, - 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, 0x74, 0x6c, 0x4d, 0x69, 0x6c, - 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x66, - 0x72, 0x65, 0x73, 0x68, 0x5f, 0x74, 0x74, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, - 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x74, 0x6c, 0x12, 0x31, 0x0a, 0x15, 0x74, 0x72, - 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x74, 0x6f, 0x5f, 0x73, - 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x74, 0x72, 0x75, 0x6e, 0x63, - 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x54, 0x6f, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x40, 0x0a, - 0x1d, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x74, - 0x65, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, + 0x67, 0x42, 0x05, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x22, 0x41, 0x0a, 0x0e, 0x5f, 0x53, 0x65, 0x74, + 0x50, 0x6f, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x65, + 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x73, 0x65, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xcc, 0x01, 0x0a, 0x0f, + 0x5f, 0x53, 0x65, 0x74, 0x50, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x3c, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, + 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, + 0x65, 0x74, 0x50, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, + 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x42, 0x0a, + 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, + 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, + 0x65, 0x74, 0x50, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, + 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, + 0x67, 0x1a, 0x24, 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x08, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, + 0x69, 0x6e, 0x67, 0x42, 0x05, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x22, 0xd2, 0x01, 0x0a, 0x1c, 0x5f, + 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x74, 0x65, 0x46, + 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, + 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, + 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, + 0x12, 0x29, 0x0a, 0x10, 0x74, 0x74, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, + 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, 0x74, 0x6c, 0x4d, + 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x72, + 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x74, 0x74, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x74, 0x6c, 0x12, 0x31, 0x0a, 0x15, + 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x74, 0x6f, + 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x74, 0x72, 0x75, + 0x6e, 0x63, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x54, 0x6f, 0x53, 0x69, 0x7a, 0x65, 0x22, + 0x40, 0x0a, 0x1d, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x6e, + 0x61, 0x74, 0x65, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x22, 0xd3, 0x01, 0x0a, 0x1b, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x63, 0x61, + 0x74, 0x65, 0x6e, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, + 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x74, 0x6c, 0x5f, 0x6d, 0x69, + 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x0f, 0x74, 0x74, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, + 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x74, 0x74, 0x6c, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, + 0x74, 0x6c, 0x12, 0x33, 0x0a, 0x16, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x66, + 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x13, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x46, 0x72, 0x6f, 0x6e, + 0x74, 0x54, 0x6f, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x3f, 0x0a, 0x1c, 0x5f, 0x4c, 0x69, 0x73, 0x74, + 0x43, 0x6f, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x5f, + 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, + 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0xc9, 0x01, 0x0a, 0x15, 0x5f, 0x4c, 0x69, + 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x74, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, + 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x0f, 0x74, 0x74, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, + 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x74, 0x74, 0x6c, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x74, + 0x6c, 0x12, 0x31, 0x0a, 0x15, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x61, + 0x63, 0x6b, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x12, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x54, 0x6f, + 0x53, 0x69, 0x7a, 0x65, 0x22, 0x39, 0x0a, 0x16, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, + 0x68, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, - 0xd3, 0x01, 0x0a, 0x1b, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x63, 0x61, 0x74, 0x65, - 0x6e, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x74, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, - 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, - 0x74, 0x74, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, - 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x74, 0x74, 0x6c, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x74, 0x6c, - 0x12, 0x33, 0x0a, 0x16, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x72, 0x6f, - 0x6e, 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x13, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x54, - 0x6f, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x3f, 0x0a, 0x1c, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, - 0x6e, 0x63, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, + 0xca, 0x01, 0x0a, 0x14, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x42, 0x61, 0x63, + 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x73, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x74, + 0x74, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, 0x74, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x73, + 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, + 0x68, 0x5f, 0x74, 0x74, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, 0x65, 0x66, + 0x72, 0x65, 0x73, 0x68, 0x54, 0x74, 0x6c, 0x12, 0x33, 0x0a, 0x16, 0x74, 0x72, 0x75, 0x6e, 0x63, + 0x61, 0x74, 0x65, 0x5f, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x69, 0x7a, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, + 0x65, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x54, 0x6f, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x38, 0x0a, 0x15, + 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, - 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0xc9, 0x01, 0x0a, 0x15, 0x5f, 0x4c, 0x69, 0x73, 0x74, - 0x50, 0x75, 0x73, 0x68, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x74, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, - 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, - 0x74, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1f, - 0x0a, 0x0b, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x74, 0x74, 0x6c, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x74, 0x6c, 0x12, - 0x31, 0x0a, 0x15, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x63, 0x6b, - 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, - 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x54, 0x6f, 0x53, 0x69, - 0x7a, 0x65, 0x22, 0x39, 0x0a, 0x16, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x46, - 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, - 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0xca, 0x01, - 0x0a, 0x14, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x42, 0x61, 0x63, 0x6b, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x74, 0x6c, - 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, 0x74, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, - 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, - 0x74, 0x74, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, - 0x73, 0x68, 0x54, 0x74, 0x6c, 0x12, 0x33, 0x0a, 0x16, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, - 0x65, 0x5f, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x46, - 0x72, 0x6f, 0x6e, 0x74, 0x54, 0x6f, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x38, 0x0a, 0x15, 0x5f, 0x4c, - 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, - 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x4c, 0x65, - 0x6e, 0x67, 0x74, 0x68, 0x22, 0x33, 0x0a, 0x14, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, - 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, - 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xfa, 0x01, 0x0a, 0x15, 0x5f, 0x4c, - 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, - 0x52, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x48, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, - 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, - 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, - 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, - 0x67, 0x1a, 0x3f, 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x66, - 0x72, 0x6f, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x66, 0x72, 0x6f, 0x6e, - 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, - 0x74, 0x68, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x06, - 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x32, 0x0a, 0x13, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, - 0x6f, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, - 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xf5, 0x01, 0x0a, 0x14, 0x5f, - 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, - 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x47, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, - 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x42, - 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, 0x69, 0x73, - 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, - 0x3d, 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x61, 0x63, - 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x1f, 0x0a, - 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x1a, 0x0a, - 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x06, 0x0a, 0x04, 0x6c, 0x69, - 0x73, 0x74, 0x22, 0x43, 0x0a, 0x0a, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, - 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x49, 0x6e, 0x64, 0x65, - 0x78, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xff, 0x01, 0x0a, 0x11, 0x5f, 0x4c, 0x69, 0x73, - 0x74, 0x45, 0x72, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, - 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x41, 0x0a, 0x04, 0x73, 0x6f, - 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, - 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x72, 0x61, - 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x61, 0x6e, 0x67, 0x65, 0x73, 0x48, 0x00, 0x52, 0x04, 0x73, 0x6f, 0x6d, 0x65, 0x12, 0x38, 0x0a, - 0x03, 0x61, 0x6c, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x61, 0x63, + 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x33, 0x0a, 0x14, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, + 0x6f, 0x70, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, + 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xfa, 0x01, 0x0a, 0x15, + 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x46, 0x72, 0x6f, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, + 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x48, 0x0a, 0x07, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, + 0x6f, 0x70, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, + 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6e, 0x67, 0x1a, 0x3f, 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x14, 0x0a, + 0x05, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x66, 0x72, + 0x6f, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, + 0x42, 0x06, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x32, 0x0a, 0x13, 0x5f, 0x4c, 0x69, 0x73, + 0x74, 0x50, 0x6f, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xf5, 0x01, 0x0a, + 0x14, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x42, 0x61, 0x63, 0x6b, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, + 0x00, 0x52, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x47, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x61, 0x63, 0x68, + 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, + 0x70, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, + 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, + 0x67, 0x1a, 0x3d, 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x62, + 0x61, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x62, 0x61, 0x63, 0x6b, 0x12, + 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, + 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x06, 0x0a, 0x04, + 0x6c, 0x69, 0x73, 0x74, 0x22, 0x43, 0x0a, 0x0a, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x49, 0x6e, + 0x64, 0x65, 0x78, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xff, 0x01, 0x0a, 0x11, 0x5f, 0x4c, + 0x69, 0x73, 0x74, 0x45, 0x72, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x41, 0x0a, 0x04, + 0x73, 0x6f, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x45, - 0x72, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x5f, 0x41, 0x6c, 0x6c, - 0x48, 0x00, 0x52, 0x03, 0x61, 0x6c, 0x6c, 0x1a, 0x06, 0x0a, 0x04, 0x5f, 0x41, 0x6c, 0x6c, 0x1a, - 0x3f, 0x0a, 0x0b, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x30, - 0x0a, 0x06, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, - 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, - 0x69, 0x73, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x06, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, - 0x42, 0x07, 0x0a, 0x05, 0x65, 0x72, 0x61, 0x73, 0x65, 0x22, 0xdb, 0x01, 0x0a, 0x12, 0x5f, 0x4c, - 0x69, 0x73, 0x74, 0x45, 0x72, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x3f, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x27, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, - 0x4c, 0x69, 0x73, 0x74, 0x45, 0x72, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, 0x75, 0x6e, - 0x64, 0x12, 0x45, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x72, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, - 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, 0x29, 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, - 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, - 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, - 0x67, 0x74, 0x68, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, - 0x06, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x74, 0x0a, 0x12, 0x5f, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, - 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x37, 0x0a, 0x17, 0x61, 0x6c, - 0x6c, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x14, 0x61, - 0x6c, 0x6c, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x22, 0xde, 0x01, - 0x0a, 0x13, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, - 0x52, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x46, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, - 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6d, - 0x6f, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, 0x69, 0x73, - 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, - 0x29, 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, - 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x6c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, - 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x06, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x0c, - 0x0a, 0x0a, 0x5f, 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0xa4, 0x02, 0x0a, - 0x11, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x43, 0x0a, 0x0f, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, - 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, + 0x72, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x48, 0x00, 0x52, 0x04, 0x73, 0x6f, 0x6d, 0x65, 0x12, + 0x38, 0x0a, 0x03, 0x61, 0x6c, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, + 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, + 0x74, 0x45, 0x72, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x5f, 0x41, + 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x03, 0x61, 0x6c, 0x6c, 0x1a, 0x06, 0x0a, 0x04, 0x5f, 0x41, 0x6c, + 0x6c, 0x1a, 0x3f, 0x0a, 0x0b, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, + 0x12, 0x30, 0x0a, 0x06, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, + 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x06, 0x72, 0x61, 0x6e, 0x67, + 0x65, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x72, 0x61, 0x73, 0x65, 0x22, 0xdb, 0x01, 0x0a, 0x12, + 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x72, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x72, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, + 0x75, 0x6e, 0x64, 0x12, 0x45, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x72, 0x61, 0x73, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x48, + 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, 0x29, 0x0a, 0x06, 0x5f, 0x46, + 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x6e, + 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x4c, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, + 0x67, 0x42, 0x06, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x74, 0x0a, 0x12, 0x5f, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x37, 0x0a, 0x17, + 0x61, 0x6c, 0x6c, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x77, 0x69, 0x74, + 0x68, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, + 0x14, 0x61, 0x6c, 0x6c, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x22, + 0xde, 0x01, 0x0a, 0x13, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, + 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x46, 0x0a, 0x07, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, + 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, + 0x67, 0x1a, 0x29, 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, + 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x1a, 0x0a, 0x0a, 0x08, + 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x06, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, + 0x22, 0x0c, 0x0a, 0x0a, 0x5f, 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0xa4, + 0x02, 0x0a, 0x11, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x43, 0x0a, 0x0f, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x73, + 0x74, 0x61, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0e, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, + 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x29, 0x0a, 0x0f, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, + 0x69, 0x76, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x48, + 0x00, 0x52, 0x0e, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x12, 0x3f, 0x0a, 0x0d, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x65, + 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, - 0x65, 0x64, 0x48, 0x00, 0x52, 0x0e, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x12, 0x29, 0x0a, 0x0f, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, - 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x48, 0x00, 0x52, - 0x0e, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, - 0x3f, 0x0a, 0x0d, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x64, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, - 0x48, 0x01, 0x52, 0x0c, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x45, 0x6e, 0x64, - 0x12, 0x25, 0x0a, 0x0d, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x6e, - 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x11, 0x48, 0x01, 0x52, 0x0c, 0x65, 0x78, 0x63, 0x6c, 0x75, - 0x73, 0x69, 0x76, 0x65, 0x45, 0x6e, 0x64, 0x42, 0x0d, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, - 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0b, 0x0a, 0x09, 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x6e, - 0x64, 0x65, 0x78, 0x22, 0xf1, 0x02, 0x0a, 0x12, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x74, - 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x69, - 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x6c, - 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x43, 0x0a, 0x0f, 0x75, 0x6e, 0x62, 0x6f, 0x75, - 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x65, 0x64, 0x48, 0x01, 0x52, 0x0c, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x45, + 0x6e, 0x64, 0x12, 0x25, 0x0a, 0x0d, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, + 0x65, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x11, 0x48, 0x01, 0x52, 0x0c, 0x65, 0x78, 0x63, + 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x45, 0x6e, 0x64, 0x42, 0x0d, 0x0a, 0x0b, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0b, 0x0a, 0x09, 0x65, 0x6e, 0x64, 0x5f, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xf1, 0x02, 0x0a, 0x12, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, + 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x43, 0x0a, 0x0f, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x2e, 0x5f, 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0e, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x29, + 0x0a, 0x0f, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x48, 0x00, 0x52, 0x0e, 0x69, 0x6e, 0x63, 0x6c, 0x75, + 0x73, 0x69, 0x76, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x3f, 0x0a, 0x0d, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, - 0x5f, 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0e, 0x75, 0x6e, - 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x29, 0x0a, 0x0f, - 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x11, 0x48, 0x00, 0x52, 0x0e, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, - 0x76, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x3f, 0x0a, 0x0d, 0x75, 0x6e, 0x62, 0x6f, 0x75, - 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, - 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, - 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x48, 0x01, 0x52, 0x0c, 0x75, 0x6e, 0x62, 0x6f, - 0x75, 0x6e, 0x64, 0x65, 0x64, 0x45, 0x6e, 0x64, 0x12, 0x25, 0x0a, 0x0d, 0x65, 0x78, 0x63, 0x6c, - 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x11, 0x48, - 0x01, 0x52, 0x0c, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x45, 0x6e, 0x64, 0x12, - 0x29, 0x0a, 0x10, 0x74, 0x74, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, - 0x6e, 0x64, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, 0x74, 0x6c, 0x4d, 0x69, - 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, - 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x74, 0x74, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x74, 0x6c, 0x42, 0x0d, 0x0a, 0x0b, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0b, 0x0a, 0x09, 0x65, 0x6e, - 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xde, 0x01, 0x0a, 0x13, 0x5f, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x40, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, - 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, + 0x5f, 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x48, 0x01, 0x52, 0x0c, 0x75, 0x6e, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x45, 0x6e, 0x64, 0x12, 0x25, 0x0a, 0x0d, 0x65, 0x78, + 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x11, 0x48, 0x01, 0x52, 0x0c, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x45, 0x6e, + 0x64, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x74, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, + 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, 0x74, 0x6c, + 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, + 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x74, 0x74, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x74, 0x6c, 0x42, 0x0d, 0x0a, + 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0b, 0x0a, 0x09, + 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xde, 0x01, 0x0a, 0x13, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, 0x75, 0x6e, - 0x64, 0x12, 0x46, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, + 0x65, 0x12, 0x40, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x28, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, + 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, + 0x75, 0x6e, 0x64, 0x12, 0x46, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x74, 0x61, 0x69, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, + 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, 0x29, 0x0a, 0x06, 0x5f, + 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, + 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, + 0x6e, 0x67, 0x42, 0x06, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0xd2, 0x01, 0x0a, 0x12, 0x5f, + 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x3f, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x27, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, + 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, 0x75, + 0x6e, 0x64, 0x12, 0x45, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, - 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, 0x29, 0x0a, 0x06, 0x5f, 0x46, 0x6f, - 0x75, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, - 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x4c, 0x65, - 0x6e, 0x67, 0x74, 0x68, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, - 0x42, 0x06, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0xd2, 0x01, 0x0a, 0x12, 0x5f, 0x4c, 0x69, - 0x73, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x3f, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, - 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, - 0x69, 0x73, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, - 0x12, 0x45, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, 0x20, 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, - 0x64, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0c, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, - 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x06, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x31, 0x0a, - 0x12, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, - 0x22, 0xd5, 0x01, 0x0a, 0x13, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, - 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, - 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x46, 0x0a, 0x07, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x61, - 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, - 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, - 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6e, 0x67, 0x1a, 0x20, 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, - 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x65, - 0x6e, 0x67, 0x74, 0x68, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, - 0x42, 0x06, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x3f, 0x0a, 0x11, 0x5f, 0x53, 0x6f, 0x72, - 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x01, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x22, 0xba, 0x01, 0x0a, 0x14, 0x5f, 0x53, - 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x50, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3b, 0x0a, - 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, - 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x52, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x74, - 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, 0x74, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, - 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, - 0x5f, 0x74, 0x74, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x72, - 0x65, 0x73, 0x68, 0x54, 0x74, 0x6c, 0x22, 0x17, 0x0a, 0x15, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, - 0x64, 0x53, 0x65, 0x74, 0x50, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x9d, 0x08, 0x0a, 0x16, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x65, - 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x73, 0x65, - 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, - 0x52, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x5f, - 0x73, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x77, 0x69, - 0x74, 0x68, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x12, 0x4a, 0x0a, 0x08, 0x62, 0x79, 0x5f, 0x69, - 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x61, 0x63, - 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, - 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x2e, 0x5f, 0x42, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x48, 0x00, 0x52, 0x07, 0x62, 0x79, 0x49, - 0x6e, 0x64, 0x65, 0x78, 0x12, 0x4a, 0x0a, 0x08, 0x62, 0x79, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, + 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, 0x20, 0x0a, 0x06, 0x5f, 0x46, 0x6f, + 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0c, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, + 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x06, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, + 0x31, 0x0a, 0x12, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x61, + 0x6d, 0x65, 0x22, 0xd5, 0x01, 0x0a, 0x13, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x05, 0x66, 0x6f, + 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63, 0x61, 0x63, 0x68, + 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, + 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x46, 0x0a, 0x07, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, + 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, + 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x2e, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6e, 0x67, 0x1a, 0x20, 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, + 0x0a, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, + 0x6e, 0x67, 0x42, 0x06, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x3f, 0x0a, 0x11, 0x5f, 0x53, + 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, + 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x22, 0xba, 0x01, 0x0a, 0x14, + 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x50, 0x75, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x3b, 0x0a, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x10, + 0x74, 0x74, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, 0x74, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, + 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x66, 0x72, 0x65, + 0x73, 0x68, 0x5f, 0x74, 0x74, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, 0x65, + 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x74, 0x6c, 0x22, 0x17, 0x0a, 0x15, 0x5f, 0x53, 0x6f, 0x72, + 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x50, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x9d, 0x08, 0x0a, 0x16, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, + 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, + 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, + 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, - 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x5f, 0x42, 0x79, - 0x53, 0x63, 0x6f, 0x72, 0x65, 0x48, 0x00, 0x52, 0x07, 0x62, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, - 0x1a, 0x88, 0x02, 0x0a, 0x08, 0x5f, 0x42, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x43, 0x0a, - 0x0f, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, - 0x48, 0x00, 0x52, 0x0e, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x53, 0x74, 0x61, - 0x72, 0x74, 0x12, 0x34, 0x0a, 0x15, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, - 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x11, 0x48, 0x00, 0x52, 0x13, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x53, 0x74, - 0x61, 0x72, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x3f, 0x0a, 0x0d, 0x75, 0x6e, 0x62, 0x6f, - 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, - 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x48, 0x01, 0x52, 0x0c, 0x75, 0x6e, 0x62, - 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x45, 0x6e, 0x64, 0x12, 0x30, 0x0a, 0x13, 0x65, 0x78, 0x63, - 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x48, 0x01, 0x52, 0x11, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, - 0x69, 0x76, 0x65, 0x45, 0x6e, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x07, 0x0a, 0x05, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x42, 0x05, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x1a, 0xb0, 0x03, 0x0a, 0x08, - 0x5f, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x3f, 0x0a, 0x0d, 0x75, 0x6e, 0x62, 0x6f, - 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, - 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0c, 0x75, 0x6e, 0x62, - 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x4d, 0x69, 0x6e, 0x12, 0x53, 0x0a, 0x09, 0x6d, 0x69, 0x6e, - 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, + 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, + 0x65, 0x72, 0x52, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x69, 0x74, + 0x68, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, + 0x77, 0x69, 0x74, 0x68, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x12, 0x4a, 0x0a, 0x08, 0x62, 0x79, + 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x2e, 0x5f, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x5f, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x3f, - 0x0a, 0x0d, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x78, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x48, - 0x01, 0x52, 0x0c, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x4d, 0x61, 0x78, 0x12, - 0x53, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, - 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x5f, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, - 0x65, 0x2e, 0x5f, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x48, 0x01, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x53, - 0x63, 0x6f, 0x72, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x14, 0x0a, 0x05, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x1a, 0x3c, 0x0a, 0x06, 0x5f, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, - 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x73, 0x63, 0x6f, - 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, - 0x42, 0x05, 0x0a, 0x03, 0x6d, 0x69, 0x6e, 0x42, 0x05, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x22, 0x26, - 0x0a, 0x05, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x53, 0x43, 0x45, 0x4e, - 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x45, 0x53, 0x43, 0x45, 0x4e, - 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x22, - 0x91, 0x04, 0x0a, 0x17, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x05, 0x66, - 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x61, 0x63, - 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, - 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, 0x75, 0x6e, - 0x64, 0x12, 0x4a, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, - 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, - 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, 0xc9, 0x02, - 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x6e, 0x0a, 0x12, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x73, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, - 0x6e, 0x64, 0x2e, 0x5f, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, 0x53, 0x63, - 0x6f, 0x72, 0x65, 0x73, 0x48, 0x00, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x57, 0x69, - 0x74, 0x68, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x12, 0x4e, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, - 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, - 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, - 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x2e, 0x5f, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x48, 0x00, - 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x1a, 0x50, 0x0a, 0x11, 0x5f, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x12, 0x3b, 0x0a, - 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, - 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x52, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x21, 0x0a, 0x07, 0x5f, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x42, 0x0a, 0x0a, - 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, - 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x0c, 0x0a, 0x0a, 0x73, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, - 0x73, 0x65, 0x74, 0x22, 0x4e, 0x0a, 0x19, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, - 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x19, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x07, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x73, 0x22, 0xcd, 0x03, 0x0a, 0x1a, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, - 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x50, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x38, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, - 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x53, 0x6f, 0x72, - 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, - 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x56, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, - 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, - 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, - 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, 0x6a, 0x0a, 0x1e, - 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, 0x12, 0x32, - 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, - 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x43, - 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x01, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x76, 0x0a, 0x0f, 0x5f, 0x53, 0x6f, 0x72, - 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x63, 0x0a, 0x08, 0x65, - 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x47, 0x2e, - 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, - 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, - 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, 0x52, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, - 0x1a, 0x13, 0x0a, 0x11, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4d, 0x69, - 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x0c, 0x0a, 0x0a, 0x73, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, - 0x73, 0x65, 0x74, 0x22, 0xf3, 0x01, 0x0a, 0x17, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, - 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x19, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0c, 0x52, 0x07, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x03, 0x61, 0x6c, - 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, - 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x5f, - 0x41, 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x03, 0x61, 0x6c, 0x6c, 0x12, 0x41, 0x0a, 0x04, 0x73, 0x6f, - 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, + 0x73, 0x74, 0x2e, 0x5f, 0x42, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x48, 0x00, 0x52, 0x07, 0x62, + 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x4a, 0x0a, 0x08, 0x62, 0x79, 0x5f, 0x73, 0x63, 0x6f, + 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, - 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, - 0x5f, 0x53, 0x6f, 0x6d, 0x65, 0x48, 0x00, 0x52, 0x04, 0x73, 0x6f, 0x6d, 0x65, 0x1a, 0x06, 0x0a, - 0x04, 0x5f, 0x41, 0x6c, 0x6c, 0x1a, 0x1f, 0x0a, 0x05, 0x5f, 0x53, 0x6f, 0x6d, 0x65, 0x12, 0x16, - 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x42, 0x11, 0x0a, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, - 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x1a, 0x0a, 0x18, 0x5f, 0x53, 0x6f, - 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb1, 0x01, 0x0a, 0x1a, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, - 0x64, 0x53, 0x65, 0x74, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x29, 0x0a, - 0x10, 0x74, 0x74, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, 0x74, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, - 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x66, 0x72, - 0x65, 0x73, 0x68, 0x5f, 0x74, 0x74, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, - 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x74, 0x6c, 0x22, 0x33, 0x0a, 0x1b, 0x5f, 0x53, 0x6f, - 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x22, 0xb7, - 0x01, 0x0a, 0x18, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, - 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, - 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x73, - 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x42, 0x0a, 0x05, - 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x63, 0x61, - 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, - 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, + 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x5f, + 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x48, 0x00, 0x52, 0x07, 0x62, 0x79, 0x53, 0x63, 0x6f, + 0x72, 0x65, 0x1a, 0x88, 0x02, 0x0a, 0x08, 0x5f, 0x42, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, + 0x43, 0x0a, 0x0f, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, + 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x65, 0x64, 0x48, 0x00, 0x52, 0x0e, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x53, + 0x74, 0x61, 0x72, 0x74, 0x12, 0x34, 0x0a, 0x15, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, + 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x11, 0x48, 0x00, 0x52, 0x13, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, + 0x53, 0x74, 0x61, 0x72, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x3f, 0x0a, 0x0d, 0x75, 0x6e, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x2e, 0x5f, 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x48, 0x01, 0x52, 0x0c, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x45, 0x6e, 0x64, 0x12, 0x30, 0x0a, 0x13, 0x65, + 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x48, 0x01, 0x52, 0x11, 0x65, 0x78, 0x63, 0x6c, + 0x75, 0x73, 0x69, 0x76, 0x65, 0x45, 0x6e, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x07, 0x0a, + 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x05, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x1a, 0xb0, 0x03, + 0x0a, 0x08, 0x5f, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x3f, 0x0a, 0x0d, 0x75, 0x6e, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x2e, 0x5f, 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0c, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x4d, 0x69, 0x6e, 0x12, 0x53, 0x0a, 0x09, 0x6d, + 0x69, 0x6e, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, + 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, + 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x2e, 0x5f, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x5f, 0x53, + 0x63, 0x6f, 0x72, 0x65, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, + 0x12, 0x3f, 0x0a, 0x0d, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x6d, 0x61, + 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, + 0x64, 0x48, 0x01, 0x52, 0x0c, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x4d, 0x61, + 0x78, 0x12, 0x53, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, + 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x5f, 0x42, 0x79, 0x53, 0x63, + 0x6f, 0x72, 0x65, 0x2e, 0x5f, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x48, 0x01, 0x52, 0x08, 0x6d, 0x61, + 0x78, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x14, + 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x3c, 0x0a, 0x06, 0x5f, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x14, + 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x73, + 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, + 0x76, 0x65, 0x42, 0x05, 0x0a, 0x03, 0x6d, 0x69, 0x6e, 0x42, 0x05, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x22, 0x26, 0x0a, 0x05, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x53, 0x43, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x45, 0x53, 0x43, - 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x22, 0xcc, 0x02, 0x0a, 0x19, 0x5f, 0x53, 0x6f, - 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x0c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, - 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x63, + 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x67, + 0x65, 0x22, 0x91, 0x04, 0x0a, 0x17, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, + 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, + 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, - 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x65, 0x6c, 0x65, 0x6d, 0x65, - 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x55, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, - 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, - 0x74, 0x47, 0x65, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4d, 0x69, 0x73, 0x73, 0x69, - 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, 0x5b, 0x0a, - 0x11, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61, - 0x72, 0x74, 0x12, 0x32, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x45, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x1a, 0x13, 0x0a, 0x11, 0x5f, 0x53, - 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, - 0x06, 0x0a, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x22, 0x34, 0x0a, 0x17, 0x5f, 0x53, 0x6f, 0x72, 0x74, - 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, + 0x75, 0x6e, 0x64, 0x12, 0x4a, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, + 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, 0x69, 0x73, + 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, + 0xc9, 0x02, 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x6e, 0x0a, 0x12, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, + 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, + 0x6f, 0x75, 0x6e, 0x64, 0x2e, 0x5f, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, + 0x53, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x48, 0x00, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, + 0x57, 0x69, 0x74, 0x68, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x12, 0x4e, 0x0a, 0x06, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, + 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x2e, 0x5f, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, + 0x48, 0x00, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x1a, 0x50, 0x0a, 0x11, 0x5f, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x12, + 0x3b, 0x0a, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x21, 0x0a, 0x07, + 0x5f, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x42, + 0x0a, 0x0a, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, + 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x0c, 0x0a, 0x0a, 0x73, 0x6f, 0x72, 0x74, 0x65, + 0x64, 0x5f, 0x73, 0x65, 0x74, 0x22, 0x4e, 0x0a, 0x19, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, + 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xea, 0x01, - 0x0a, 0x18, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, - 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x05, 0x66, 0x6f, - 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x61, 0x63, 0x68, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0xcd, 0x03, 0x0a, 0x1a, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, + 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, + 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x53, + 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, + 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x56, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, + 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, + 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4d, 0x69, 0x73, 0x73, + 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, 0x6a, + 0x0a, 0x1e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, + 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, + 0x12, 0x32, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x1a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, + 0x45, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x01, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x76, 0x0a, 0x0f, 0x5f, 0x53, + 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x63, 0x0a, + 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x47, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, + 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, + 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, 0x52, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x1a, 0x13, 0x0a, 0x11, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, + 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x0c, 0x0a, 0x0a, 0x73, 0x6f, 0x72, 0x74, 0x65, + 0x64, 0x5f, 0x73, 0x65, 0x74, 0x22, 0xf3, 0x01, 0x0a, 0x17, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, + 0x64, 0x53, 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x07, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x03, + 0x61, 0x6c, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, - 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, 0x75, 0x6e, - 0x64, 0x12, 0x4b, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, - 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, 0x69, 0x73, 0x73, - 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, 0x20, - 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, 0x6e, 0x67, - 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, - 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x0c, 0x0a, 0x0a, - 0x73, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x74, 0x22, 0xe7, 0x02, 0x0a, 0x1e, 0x5f, - 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x42, - 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, + 0x53, 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x2e, 0x5f, 0x41, 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x03, 0x61, 0x6c, 0x6c, 0x12, 0x41, 0x0a, 0x04, + 0x73, 0x6f, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, + 0x64, 0x53, 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x6d, 0x65, 0x48, 0x00, 0x52, 0x04, 0x73, 0x6f, 0x6d, 0x65, 0x1a, + 0x06, 0x0a, 0x04, 0x5f, 0x41, 0x6c, 0x6c, 0x1a, 0x1f, 0x0a, 0x05, 0x5f, 0x53, 0x6f, 0x6d, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, + 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x42, 0x11, 0x0a, 0x0f, 0x72, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x1a, 0x0a, 0x18, 0x5f, + 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb1, 0x01, 0x0a, 0x1a, 0x5f, 0x53, 0x6f, 0x72, + 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x29, 0x0a, 0x10, 0x74, 0x74, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, + 0x6e, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, 0x74, 0x6c, 0x4d, 0x69, + 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, + 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x74, 0x74, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x74, 0x6c, 0x22, 0x33, 0x0a, 0x1b, 0x5f, + 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, + 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, + 0x22, 0xb7, 0x01, 0x0a, 0x18, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, + 0x65, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x07, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0d, 0x69, 0x6e, 0x63, 0x6c, - 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x48, - 0x00, 0x52, 0x0c, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x4d, 0x69, 0x6e, 0x12, - 0x25, 0x0a, 0x0d, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x6d, 0x69, 0x6e, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, 0x52, 0x0c, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, - 0x69, 0x76, 0x65, 0x4d, 0x69, 0x6e, 0x12, 0x3f, 0x0a, 0x0d, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, - 0x64, 0x65, 0x64, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, - 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, 0x6e, - 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0c, 0x75, 0x6e, 0x62, 0x6f, 0x75, - 0x6e, 0x64, 0x65, 0x64, 0x4d, 0x69, 0x6e, 0x12, 0x25, 0x0a, 0x0d, 0x69, 0x6e, 0x63, 0x6c, 0x75, - 0x73, 0x69, 0x76, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, 0x48, 0x01, - 0x52, 0x0c, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x25, - 0x0a, 0x0d, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x01, 0x48, 0x01, 0x52, 0x0c, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, - 0x76, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x3f, 0x0a, 0x0d, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, - 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, - 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, 0x6e, 0x62, - 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x48, 0x01, 0x52, 0x0c, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, - 0x64, 0x65, 0x64, 0x4d, 0x61, 0x78, 0x42, 0x05, 0x0a, 0x03, 0x6d, 0x69, 0x6e, 0x42, 0x05, 0x0a, - 0x03, 0x6d, 0x61, 0x78, 0x22, 0xff, 0x01, 0x0a, 0x1f, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, - 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x05, 0x66, 0x6f, 0x75, 0x6e, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, - 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, - 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x52, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, - 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, - 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x48, - 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, 0x20, 0x0a, 0x06, 0x5f, 0x46, - 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x1a, 0x0a, 0x0a, 0x08, - 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x0c, 0x0a, 0x0a, 0x73, 0x6f, 0x72, 0x74, - 0x65, 0x64, 0x5f, 0x73, 0x65, 0x74, 0x2a, 0x3c, 0x0a, 0x0c, 0x45, 0x43, 0x61, 0x63, 0x68, 0x65, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x4f, 0x6b, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x48, - 0x69, 0x74, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x4d, 0x69, 0x73, 0x73, 0x10, 0x03, 0x22, 0x04, - 0x08, 0x04, 0x10, 0x06, 0x32, 0x83, 0x1c, 0x0a, 0x03, 0x53, 0x63, 0x73, 0x12, 0x3e, 0x0a, 0x03, - 0x47, 0x65, 0x74, 0x12, 0x19, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x2e, 0x5f, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, - 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x47, - 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3e, 0x0a, 0x03, - 0x53, 0x65, 0x74, 0x12, 0x19, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, - 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, - 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5f, 0x0a, 0x0e, - 0x53, 0x65, 0x74, 0x49, 0x66, 0x4e, 0x6f, 0x74, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x24, + 0x07, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x42, + 0x0a, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, + 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, + 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x05, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x22, 0x26, 0x0a, 0x05, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x0d, 0x0a, 0x09, 0x41, + 0x53, 0x43, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x45, + 0x53, 0x43, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x22, 0xcc, 0x02, 0x0a, 0x19, 0x5f, + 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x52, 0x61, 0x6e, 0x6b, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x0c, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, - 0x65, 0x74, 0x49, 0x66, 0x4e, 0x6f, 0x74, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x49, 0x66, 0x4e, 0x6f, 0x74, 0x45, 0x78, 0x69, - 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x47, 0x0a, - 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x1c, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, + 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x55, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x63, 0x61, 0x63, 0x68, + 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, + 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4d, 0x69, 0x73, + 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, + 0x5b, 0x0a, 0x11, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x50, 0x61, 0x72, 0x74, 0x12, 0x32, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x61, 0x6e, 0x6b, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x1a, 0x13, 0x0a, 0x11, + 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, + 0x67, 0x42, 0x06, 0x0a, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x22, 0x34, 0x0a, 0x17, 0x5f, 0x53, 0x6f, + 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, + 0xea, 0x01, 0x0a, 0x18, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x05, + 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x61, + 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, + 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, + 0x75, 0x6e, 0x64, 0x12, 0x4b, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, 0x69, + 0x73, 0x73, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, + 0x1a, 0x20, 0x0a, 0x06, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x1a, 0x0a, 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x0c, + 0x0a, 0x0a, 0x73, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x74, 0x22, 0xe7, 0x02, 0x0a, + 0x1e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x19, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x07, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0d, 0x69, 0x6e, + 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x01, 0x48, 0x00, 0x52, 0x0c, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x4d, 0x69, + 0x6e, 0x12, 0x25, 0x0a, 0x0d, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x6d, + 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, 0x52, 0x0c, 0x65, 0x78, 0x63, 0x6c, + 0x75, 0x73, 0x69, 0x76, 0x65, 0x4d, 0x69, 0x6e, 0x12, 0x3f, 0x0a, 0x0d, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x18, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, + 0x55, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0c, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x4d, 0x69, 0x6e, 0x12, 0x25, 0x0a, 0x0d, 0x69, 0x6e, 0x63, + 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, + 0x48, 0x01, 0x52, 0x0c, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x4d, 0x61, 0x78, + 0x12, 0x25, 0x0a, 0x0d, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x6d, 0x61, + 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x48, 0x01, 0x52, 0x0c, 0x65, 0x78, 0x63, 0x6c, 0x75, + 0x73, 0x69, 0x76, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x3f, 0x0a, 0x0d, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x48, 0x01, 0x52, 0x0c, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x4d, 0x61, 0x78, 0x42, 0x05, 0x0a, 0x03, 0x6d, 0x69, 0x6e, 0x42, + 0x05, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x22, 0xff, 0x01, 0x0a, 0x1f, 0x5f, 0x53, 0x6f, 0x72, 0x74, + 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x42, 0x79, 0x53, 0x63, 0x6f, + 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x05, 0x66, 0x6f, + 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x61, 0x63, 0x68, + 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, + 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x48, + 0x00, 0x52, 0x05, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x52, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x63, 0x61, 0x63, 0x68, + 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, + 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, + 0x67, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, 0x20, 0x0a, 0x06, + 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x1a, 0x0a, + 0x0a, 0x08, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x0c, 0x0a, 0x0a, 0x73, 0x6f, + 0x72, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x74, 0x2a, 0x3c, 0x0a, 0x0c, 0x45, 0x43, 0x61, 0x63, + 0x68, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x4f, 0x6b, 0x10, 0x01, 0x12, 0x07, 0x0a, + 0x03, 0x48, 0x69, 0x74, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x4d, 0x69, 0x73, 0x73, 0x10, 0x03, + 0x22, 0x04, 0x08, 0x04, 0x10, 0x06, 0x32, 0xcc, 0x1c, 0x0a, 0x03, 0x53, 0x63, 0x73, 0x12, 0x3e, + 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x19, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x1a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, + 0x5f, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3e, + 0x0a, 0x03, 0x53, 0x65, 0x74, 0x12, 0x19, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x1a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, + 0x5f, 0x53, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5f, + 0x0a, 0x0e, 0x53, 0x65, 0x74, 0x49, 0x66, 0x4e, 0x6f, 0x74, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, + 0x12, 0x24, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, + 0x5f, 0x53, 0x65, 0x74, 0x49, 0x66, 0x4e, 0x6f, 0x74, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x49, 0x66, 0x4e, 0x6f, 0x74, 0x45, + 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, + 0x47, 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x1c, 0x2e, 0x63, 0x61, 0x63, 0x68, + 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x09, 0x4b, 0x65, 0x79, 0x73, 0x45, 0x78, - 0x69, 0x73, 0x74, 0x12, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x2e, 0x5f, 0x4b, 0x65, 0x79, 0x73, 0x45, 0x78, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4b, 0x65, 0x79, 0x73, 0x45, 0x78, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x09, 0x49, 0x6e, 0x63, 0x72, - 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x09, 0x4b, 0x65, 0x79, 0x73, + 0x45, 0x78, 0x69, 0x73, 0x74, 0x12, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4b, 0x65, 0x79, 0x73, 0x45, 0x78, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x09, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x54, 0x74, 0x6c, 0x12, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x74, - 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, - 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, - 0x74, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0a, - 0x49, 0x74, 0x65, 0x6d, 0x47, 0x65, 0x74, 0x54, 0x74, 0x6c, 0x12, 0x20, 0x2e, 0x63, 0x61, 0x63, - 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x47, - 0x65, 0x74, 0x54, 0x74, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4b, 0x65, 0x79, 0x73, 0x45, 0x78, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x09, 0x49, 0x6e, + 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, + 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x09, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x74, 0x6c, 0x12, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, + 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x54, 0x74, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x54, 0x74, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x53, + 0x0a, 0x0a, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x65, 0x74, 0x54, 0x74, 0x6c, 0x12, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x49, 0x74, 0x65, - 0x6d, 0x47, 0x65, 0x74, 0x54, 0x74, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x00, 0x12, 0x56, 0x0a, 0x0b, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x21, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, - 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x2e, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x0d, 0x44, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x47, 0x65, 0x74, 0x12, 0x23, 0x2e, 0x63, 0x61, 0x63, - 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x69, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x24, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, - 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x62, 0x0a, 0x0f, 0x44, 0x69, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x65, 0x74, 0x63, 0x68, 0x12, 0x25, 0x2e, 0x63, 0x61, 0x63, - 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x69, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x2e, 0x5f, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x65, 0x74, 0x63, - 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x0d, 0x44, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x53, 0x65, 0x74, 0x12, 0x23, 0x2e, 0x63, + 0x6d, 0x47, 0x65, 0x74, 0x54, 0x74, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, + 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x49, + 0x74, 0x65, 0x6d, 0x47, 0x65, 0x74, 0x54, 0x74, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0b, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x65, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x21, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x2e, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x65, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x0d, 0x44, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x47, 0x65, 0x74, 0x12, 0x23, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x2e, 0x5f, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x53, 0x65, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6e, 0x0a, 0x13, 0x44, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x12, 0x29, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, - 0x5f, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x49, 0x6e, 0x63, 0x72, 0x65, - 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x63, 0x61, - 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x69, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x65, 0x0a, 0x10, 0x44, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x26, 0x2e, - 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x69, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, - 0x12, 0x65, 0x0a, 0x10, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x4c, 0x65, - 0x6e, 0x67, 0x74, 0x68, 0x12, 0x26, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x4c, - 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x63, + 0x2e, 0x5f, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x47, 0x65, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x62, 0x0a, 0x0f, 0x44, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x65, 0x74, 0x63, 0x68, 0x12, 0x25, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x08, 0x53, 0x65, 0x74, 0x46, 0x65, - 0x74, 0x63, 0x68, 0x12, 0x1e, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x08, 0x53, 0x65, 0x74, 0x55, 0x6e, 0x69, - 0x6f, 0x6e, 0x12, 0x1e, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x0d, 0x53, 0x65, 0x74, 0x44, 0x69, 0x66, 0x66, - 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x23, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x44, 0x69, 0x66, 0x66, 0x65, 0x72, - 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x63, 0x61, - 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x44, - 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0b, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, - 0x6e, 0x73, 0x12, 0x21, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x09, 0x53, - 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, - 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, - 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, - 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, - 0x67, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, - 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x12, 0x23, - 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, - 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x65, + 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, + 0x0d, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x53, 0x65, 0x74, 0x12, 0x23, + 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x46, 0x72, 0x6f, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x59, 0x0a, 0x0c, 0x4c, - 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x42, 0x61, 0x63, 0x6b, 0x12, 0x22, 0x2e, 0x63, 0x61, - 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, - 0x50, 0x75, 0x73, 0x68, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x23, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, - 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x59, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, - 0x70, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x12, 0x22, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x46, 0x72, - 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x61, 0x63, + 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x53, 0x65, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6e, 0x0a, 0x13, 0x44, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x12, 0x29, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x2e, 0x5f, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x49, 0x6e, 0x63, + 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, + 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x65, 0x0a, 0x10, 0x44, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, + 0x26, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, + 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x72, 0x79, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x65, 0x0a, 0x10, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, + 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x26, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, + 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, + 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x08, 0x53, 0x65, 0x74, + 0x46, 0x65, 0x74, 0x63, 0x68, 0x12, 0x1e, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x08, 0x53, 0x65, 0x74, 0x55, + 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x0d, 0x53, 0x65, 0x74, 0x44, 0x69, + 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x23, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, + 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x44, 0x69, 0x66, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, + 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, + 0x74, 0x44, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0b, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, + 0x61, 0x69, 0x6e, 0x73, 0x12, 0x21, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, + 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, + 0x09, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x1f, 0x2e, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x61, + 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x4c, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, + 0x47, 0x0a, 0x06, 0x53, 0x65, 0x74, 0x50, 0x6f, 0x70, 0x12, 0x1c, 0x2e, 0x63, 0x61, 0x63, 0x68, + 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x50, 0x6f, 0x70, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x65, 0x74, 0x50, 0x6f, 0x70, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, + 0x50, 0x75, 0x73, 0x68, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x12, 0x23, 0x2e, 0x63, 0x61, 0x63, 0x68, + 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, + 0x73, 0x68, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, + 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, + 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x59, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, + 0x73, 0x68, 0x42, 0x61, 0x63, 0x6b, 0x12, 0x22, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x42, + 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, - 0x6f, 0x70, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x00, 0x12, 0x56, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x42, 0x61, 0x63, 0x6b, - 0x12, 0x21, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, - 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x09, 0x4c, 0x69, 0x73, - 0x74, 0x45, 0x72, 0x61, 0x73, 0x65, 0x12, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x72, 0x61, 0x73, 0x65, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x72, 0x61, 0x73, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0a, 0x4c, - 0x69, 0x73, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, - 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x63, 0x61, + 0x75, 0x73, 0x68, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x00, 0x12, 0x59, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x46, 0x72, 0x6f, 0x6e, + 0x74, 0x12, 0x22, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x46, 0x72, 0x6f, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0b, + 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x12, 0x21, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, - 0x12, 0x50, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x12, 0x1f, 0x2e, - 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, - 0x73, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, + 0x50, 0x6f, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, - 0x69, 0x73, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, - 0x12, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, - 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x71, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x43, - 0x6f, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x74, 0x65, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x12, - 0x2a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, - 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x74, 0x65, 0x46, - 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x63, 0x61, + 0x69, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x72, 0x61, 0x73, + 0x65, 0x12, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x72, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x72, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x09, 0x4c, + 0x69, 0x73, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x12, 0x1f, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, + 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x74, + 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, + 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, + 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x53, 0x0a, + 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, - 0x43, 0x6f, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x74, 0x65, 0x46, 0x72, 0x6f, 0x6e, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6e, 0x0a, 0x13, 0x4c, 0x69, - 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, - 0x6b, 0x12, 0x29, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x74, - 0x65, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x63, + 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, + 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, + 0x73, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x71, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x63, 0x61, 0x74, + 0x65, 0x6e, 0x61, 0x74, 0x65, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x12, 0x2a, 0x2e, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, + 0x6f, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x74, 0x65, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x63, 0x61, + 0x74, 0x65, 0x6e, 0x61, 0x74, 0x65, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6e, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, + 0x63, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x12, 0x29, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0a, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x74, 0x61, 0x69, 0x6e, 0x12, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, - 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x74, - 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x63, 0x61, 0x63, - 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, - 0x59, 0x0a, 0x0c, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x50, 0x75, 0x74, 0x12, - 0x22, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, - 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x50, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x50, 0x75, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5f, 0x0a, 0x0e, 0x53, 0x6f, - 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x12, 0x24, 0x2e, 0x63, - 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, - 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, - 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x68, 0x0a, 0x11, 0x53, - 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, - 0x12, 0x27, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, - 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x63, 0x61, 0x63, 0x68, - 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, - 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x62, 0x0a, 0x0f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, - 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x25, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, - 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, - 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x26, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, - 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6b, 0x0a, 0x12, 0x53, 0x6f, 0x72, - 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, - 0x28, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, - 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x61, 0x63, 0x68, - 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, - 0x53, 0x65, 0x74, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x65, 0x0a, 0x10, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, - 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x26, 0x2e, 0x63, 0x61, 0x63, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x63, + 0x61, 0x74, 0x65, 0x6e, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x74, + 0x61, 0x69, 0x6e, 0x12, 0x20, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x74, 0x61, 0x69, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x59, 0x0a, 0x0c, 0x53, 0x6f, + 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x50, 0x75, 0x74, 0x12, 0x22, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, - 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x52, - 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x62, 0x0a, - 0x0f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, - 0x12, 0x25, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, - 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, + 0x64, 0x53, 0x65, 0x74, 0x50, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, + 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, + 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x50, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5f, 0x0a, 0x0e, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, + 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x12, 0x24, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, - 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x00, 0x12, 0x77, 0x0a, 0x16, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, - 0x6e, 0x67, 0x74, 0x68, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x2c, 0x2e, 0x63, 0x61, + 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, + 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, + 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x68, 0x0a, 0x11, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, + 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x27, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, - 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x42, 0x79, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x63, 0x61, 0x63, 0x68, - 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, - 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x64, 0x0a, 0x11, 0x67, 0x72, - 0x70, 0x63, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, - 0x01, 0x5a, 0x30, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x6f, - 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x68, 0x71, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, 0x73, - 0x64, 0x6b, 0x2d, 0x67, 0x6f, 0x3b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x64, 0x6b, - 0x5f, 0x67, 0x6f, 0xaa, 0x02, 0x1a, 0x4d, 0x6f, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x2e, 0x50, 0x72, - 0x6f, 0x74, 0x6f, 0x73, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, + 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, + 0x12, 0x62, 0x0a, 0x0f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x52, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x12, 0x25, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x52, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, + 0x64, 0x53, 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x12, 0x6b, 0x0a, 0x12, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, + 0x74, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x2e, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, + 0x64, 0x53, 0x65, 0x74, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x49, 0x6e, + 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x00, 0x12, 0x65, 0x0a, 0x10, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, + 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x26, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, + 0x65, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, + 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, + 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x47, 0x65, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x62, 0x0a, 0x0f, 0x53, 0x6f, 0x72, 0x74, + 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x25, 0x2e, 0x63, 0x61, + 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, + 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x77, 0x0a, 0x16, + 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x42, + 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x2c, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, + 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x65, 0x74, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x42, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x64, 0x0a, 0x11, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x61, + 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x01, 0x5a, 0x30, 0x67, 0x69, + 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x6f, 0x6d, 0x65, 0x6e, 0x74, 0x6f, + 0x68, 0x71, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, 0x73, 0x64, 0x6b, 0x2d, 0x67, 0x6f, + 0x3b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x64, 0x6b, 0x5f, 0x67, 0x6f, 0xaa, 0x02, + 0x1a, 0x4d, 0x6f, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x2e, + 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x33, } var ( @@ -10034,7 +10277,7 @@ func file_cacheclient_proto_rawDescGZIP() []byte { } var file_cacheclient_proto_enumTypes = make([]protoimpl.EnumInfo, 4) -var file_cacheclient_proto_msgTypes = make([]protoimpl.MessageInfo, 146) +var file_cacheclient_proto_msgTypes = make([]protoimpl.MessageInfo, 150) var file_cacheclient_proto_goTypes = []interface{}{ (ECacheResult)(0), // 0: cache_client.ECacheResult (XItemGetTypeResponse_ItemType)(0), // 1: cache_client._ItemGetTypeResponse.ItemType @@ -10081,284 +10324,292 @@ var file_cacheclient_proto_goTypes = []interface{}{ (*XSetContainsResponse)(nil), // 42: cache_client._SetContainsResponse (*XSetLengthRequest)(nil), // 43: cache_client._SetLengthRequest (*XSetLengthResponse)(nil), // 44: cache_client._SetLengthResponse - (*XListConcatenateFrontRequest)(nil), // 45: cache_client._ListConcatenateFrontRequest - (*XListConcatenateFrontResponse)(nil), // 46: cache_client._ListConcatenateFrontResponse - (*XListConcatenateBackRequest)(nil), // 47: cache_client._ListConcatenateBackRequest - (*XListConcatenateBackResponse)(nil), // 48: cache_client._ListConcatenateBackResponse - (*XListPushFrontRequest)(nil), // 49: cache_client._ListPushFrontRequest - (*XListPushFrontResponse)(nil), // 50: cache_client._ListPushFrontResponse - (*XListPushBackRequest)(nil), // 51: cache_client._ListPushBackRequest - (*XListPushBackResponse)(nil), // 52: cache_client._ListPushBackResponse - (*XListPopFrontRequest)(nil), // 53: cache_client._ListPopFrontRequest - (*XListPopFrontResponse)(nil), // 54: cache_client._ListPopFrontResponse - (*XListPopBackRequest)(nil), // 55: cache_client._ListPopBackRequest - (*XListPopBackResponse)(nil), // 56: cache_client._ListPopBackResponse - (*XListRange)(nil), // 57: cache_client._ListRange - (*XListEraseRequest)(nil), // 58: cache_client._ListEraseRequest - (*XListEraseResponse)(nil), // 59: cache_client._ListEraseResponse - (*XListRemoveRequest)(nil), // 60: cache_client._ListRemoveRequest - (*XListRemoveResponse)(nil), // 61: cache_client._ListRemoveResponse - (*XUnbounded)(nil), // 62: cache_client._Unbounded - (*XListFetchRequest)(nil), // 63: cache_client._ListFetchRequest - (*XListRetainRequest)(nil), // 64: cache_client._ListRetainRequest - (*XListRetainResponse)(nil), // 65: cache_client._ListRetainResponse - (*XListFetchResponse)(nil), // 66: cache_client._ListFetchResponse - (*XListLengthRequest)(nil), // 67: cache_client._ListLengthRequest - (*XListLengthResponse)(nil), // 68: cache_client._ListLengthResponse - (*XSortedSetElement)(nil), // 69: cache_client._SortedSetElement - (*XSortedSetPutRequest)(nil), // 70: cache_client._SortedSetPutRequest - (*XSortedSetPutResponse)(nil), // 71: cache_client._SortedSetPutResponse - (*XSortedSetFetchRequest)(nil), // 72: cache_client._SortedSetFetchRequest - (*XSortedSetFetchResponse)(nil), // 73: cache_client._SortedSetFetchResponse - (*XSortedSetGetScoreRequest)(nil), // 74: cache_client._SortedSetGetScoreRequest - (*XSortedSetGetScoreResponse)(nil), // 75: cache_client._SortedSetGetScoreResponse - (*XSortedSetRemoveRequest)(nil), // 76: cache_client._SortedSetRemoveRequest - (*XSortedSetRemoveResponse)(nil), // 77: cache_client._SortedSetRemoveResponse - (*XSortedSetIncrementRequest)(nil), // 78: cache_client._SortedSetIncrementRequest - (*XSortedSetIncrementResponse)(nil), // 79: cache_client._SortedSetIncrementResponse - (*XSortedSetGetRankRequest)(nil), // 80: cache_client._SortedSetGetRankRequest - (*XSortedSetGetRankResponse)(nil), // 81: cache_client._SortedSetGetRankResponse - (*XSortedSetLengthRequest)(nil), // 82: cache_client._SortedSetLengthRequest - (*XSortedSetLengthResponse)(nil), // 83: cache_client._SortedSetLengthResponse - (*XSortedSetLengthByScoreRequest)(nil), // 84: cache_client._SortedSetLengthByScoreRequest - (*XSortedSetLengthByScoreResponse)(nil), // 85: cache_client._SortedSetLengthByScoreResponse - (*XSetIfNotExistsResponse_XStored)(nil), // 86: cache_client._SetIfNotExistsResponse._Stored - (*XSetIfNotExistsResponse_XNotStored)(nil), // 87: cache_client._SetIfNotExistsResponse._NotStored - (*XUpdateTtlResponse_XSet)(nil), // 88: cache_client._UpdateTtlResponse._Set - (*XUpdateTtlResponse_XNotSet)(nil), // 89: cache_client._UpdateTtlResponse._NotSet - (*XUpdateTtlResponse_XMissing)(nil), // 90: cache_client._UpdateTtlResponse._Missing - (*XItemGetTtlResponse_XFound)(nil), // 91: cache_client._ItemGetTtlResponse._Found - (*XItemGetTtlResponse_XMissing)(nil), // 92: cache_client._ItemGetTtlResponse._Missing - (*XItemGetTypeResponse_XFound)(nil), // 93: cache_client._ItemGetTypeResponse._Found - (*XItemGetTypeResponse_XMissing)(nil), // 94: cache_client._ItemGetTypeResponse._Missing - (*XDictionaryGetResponse_XDictionaryGetResponsePart)(nil), // 95: cache_client._DictionaryGetResponse._DictionaryGetResponsePart - (*XDictionaryGetResponse_XFound)(nil), // 96: cache_client._DictionaryGetResponse._Found - (*XDictionaryGetResponse_XMissing)(nil), // 97: cache_client._DictionaryGetResponse._Missing - (*XDictionaryFetchResponse_XFound)(nil), // 98: cache_client._DictionaryFetchResponse._Found - (*XDictionaryFetchResponse_XMissing)(nil), // 99: cache_client._DictionaryFetchResponse._Missing - (*XDictionaryDeleteRequest_Some)(nil), // 100: cache_client._DictionaryDeleteRequest.Some - (*XDictionaryDeleteRequest_All)(nil), // 101: cache_client._DictionaryDeleteRequest.All - (*XDictionaryLengthResponse_XFound)(nil), // 102: cache_client._DictionaryLengthResponse._Found - (*XDictionaryLengthResponse_XMissing)(nil), // 103: cache_client._DictionaryLengthResponse._Missing - (*XSetFetchResponse_XFound)(nil), // 104: cache_client._SetFetchResponse._Found - (*XSetFetchResponse_XMissing)(nil), // 105: cache_client._SetFetchResponse._Missing - (*XSetDifferenceRequest_XMinuend)(nil), // 106: cache_client._SetDifferenceRequest._Minuend - (*XSetDifferenceRequest_XSubtrahend)(nil), // 107: cache_client._SetDifferenceRequest._Subtrahend - (*XSetDifferenceRequest_XSubtrahend_XSet)(nil), // 108: cache_client._SetDifferenceRequest._Subtrahend._Set - (*XSetDifferenceRequest_XSubtrahend_XIdentity)(nil), // 109: cache_client._SetDifferenceRequest._Subtrahend._Identity - (*XSetDifferenceResponse_XFound)(nil), // 110: cache_client._SetDifferenceResponse._Found - (*XSetDifferenceResponse_XMissing)(nil), // 111: cache_client._SetDifferenceResponse._Missing - (*XSetContainsResponse_XFound)(nil), // 112: cache_client._SetContainsResponse._Found - (*XSetContainsResponse_XMissing)(nil), // 113: cache_client._SetContainsResponse._Missing - (*XSetLengthResponse_XFound)(nil), // 114: cache_client._SetLengthResponse._Found - (*XSetLengthResponse_XMissing)(nil), // 115: cache_client._SetLengthResponse._Missing - (*XListPopFrontResponse_XFound)(nil), // 116: cache_client._ListPopFrontResponse._Found - (*XListPopFrontResponse_XMissing)(nil), // 117: cache_client._ListPopFrontResponse._Missing - (*XListPopBackResponse_XFound)(nil), // 118: cache_client._ListPopBackResponse._Found - (*XListPopBackResponse_XMissing)(nil), // 119: cache_client._ListPopBackResponse._Missing - (*XListEraseRequest_XAll)(nil), // 120: cache_client._ListEraseRequest._All - (*XListEraseRequest_XListRanges)(nil), // 121: cache_client._ListEraseRequest._ListRanges - (*XListEraseResponse_XFound)(nil), // 122: cache_client._ListEraseResponse._Found - (*XListEraseResponse_XMissing)(nil), // 123: cache_client._ListEraseResponse._Missing - (*XListRemoveResponse_XFound)(nil), // 124: cache_client._ListRemoveResponse._Found - (*XListRemoveResponse_XMissing)(nil), // 125: cache_client._ListRemoveResponse._Missing - (*XListRetainResponse_XFound)(nil), // 126: cache_client._ListRetainResponse._Found - (*XListRetainResponse_XMissing)(nil), // 127: cache_client._ListRetainResponse._Missing - (*XListFetchResponse_XFound)(nil), // 128: cache_client._ListFetchResponse._Found - (*XListFetchResponse_XMissing)(nil), // 129: cache_client._ListFetchResponse._Missing - (*XListLengthResponse_XFound)(nil), // 130: cache_client._ListLengthResponse._Found - (*XListLengthResponse_XMissing)(nil), // 131: cache_client._ListLengthResponse._Missing - (*XSortedSetFetchRequest_XByIndex)(nil), // 132: cache_client._SortedSetFetchRequest._ByIndex - (*XSortedSetFetchRequest_XByScore)(nil), // 133: cache_client._SortedSetFetchRequest._ByScore - (*XSortedSetFetchRequest_XByScore_XScore)(nil), // 134: cache_client._SortedSetFetchRequest._ByScore._Score - (*XSortedSetFetchResponse_XFound)(nil), // 135: cache_client._SortedSetFetchResponse._Found - (*XSortedSetFetchResponse_XMissing)(nil), // 136: cache_client._SortedSetFetchResponse._Missing - (*XSortedSetFetchResponse_XFound_XValuesWithScores)(nil), // 137: cache_client._SortedSetFetchResponse._Found._ValuesWithScores - (*XSortedSetFetchResponse_XFound_XValues)(nil), // 138: cache_client._SortedSetFetchResponse._Found._Values - (*XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart)(nil), // 139: cache_client._SortedSetGetScoreResponse._SortedSetGetScoreResponsePart - (*XSortedSetGetScoreResponse_XSortedSetFound)(nil), // 140: cache_client._SortedSetGetScoreResponse._SortedSetFound - (*XSortedSetGetScoreResponse_XSortedSetMissing)(nil), // 141: cache_client._SortedSetGetScoreResponse._SortedSetMissing - (*XSortedSetRemoveRequest_XAll)(nil), // 142: cache_client._SortedSetRemoveRequest._All - (*XSortedSetRemoveRequest_XSome)(nil), // 143: cache_client._SortedSetRemoveRequest._Some - (*XSortedSetGetRankResponse_XRankResponsePart)(nil), // 144: cache_client._SortedSetGetRankResponse._RankResponsePart - (*XSortedSetGetRankResponse_XSortedSetMissing)(nil), // 145: cache_client._SortedSetGetRankResponse._SortedSetMissing - (*XSortedSetLengthResponse_XFound)(nil), // 146: cache_client._SortedSetLengthResponse._Found - (*XSortedSetLengthResponse_XMissing)(nil), // 147: cache_client._SortedSetLengthResponse._Missing - (*XSortedSetLengthByScoreResponse_XFound)(nil), // 148: cache_client._SortedSetLengthByScoreResponse._Found - (*XSortedSetLengthByScoreResponse_XMissing)(nil), // 149: cache_client._SortedSetLengthByScoreResponse._Missing + (*XSetPopRequest)(nil), // 45: cache_client._SetPopRequest + (*XSetPopResponse)(nil), // 46: cache_client._SetPopResponse + (*XListConcatenateFrontRequest)(nil), // 47: cache_client._ListConcatenateFrontRequest + (*XListConcatenateFrontResponse)(nil), // 48: cache_client._ListConcatenateFrontResponse + (*XListConcatenateBackRequest)(nil), // 49: cache_client._ListConcatenateBackRequest + (*XListConcatenateBackResponse)(nil), // 50: cache_client._ListConcatenateBackResponse + (*XListPushFrontRequest)(nil), // 51: cache_client._ListPushFrontRequest + (*XListPushFrontResponse)(nil), // 52: cache_client._ListPushFrontResponse + (*XListPushBackRequest)(nil), // 53: cache_client._ListPushBackRequest + (*XListPushBackResponse)(nil), // 54: cache_client._ListPushBackResponse + (*XListPopFrontRequest)(nil), // 55: cache_client._ListPopFrontRequest + (*XListPopFrontResponse)(nil), // 56: cache_client._ListPopFrontResponse + (*XListPopBackRequest)(nil), // 57: cache_client._ListPopBackRequest + (*XListPopBackResponse)(nil), // 58: cache_client._ListPopBackResponse + (*XListRange)(nil), // 59: cache_client._ListRange + (*XListEraseRequest)(nil), // 60: cache_client._ListEraseRequest + (*XListEraseResponse)(nil), // 61: cache_client._ListEraseResponse + (*XListRemoveRequest)(nil), // 62: cache_client._ListRemoveRequest + (*XListRemoveResponse)(nil), // 63: cache_client._ListRemoveResponse + (*XUnbounded)(nil), // 64: cache_client._Unbounded + (*XListFetchRequest)(nil), // 65: cache_client._ListFetchRequest + (*XListRetainRequest)(nil), // 66: cache_client._ListRetainRequest + (*XListRetainResponse)(nil), // 67: cache_client._ListRetainResponse + (*XListFetchResponse)(nil), // 68: cache_client._ListFetchResponse + (*XListLengthRequest)(nil), // 69: cache_client._ListLengthRequest + (*XListLengthResponse)(nil), // 70: cache_client._ListLengthResponse + (*XSortedSetElement)(nil), // 71: cache_client._SortedSetElement + (*XSortedSetPutRequest)(nil), // 72: cache_client._SortedSetPutRequest + (*XSortedSetPutResponse)(nil), // 73: cache_client._SortedSetPutResponse + (*XSortedSetFetchRequest)(nil), // 74: cache_client._SortedSetFetchRequest + (*XSortedSetFetchResponse)(nil), // 75: cache_client._SortedSetFetchResponse + (*XSortedSetGetScoreRequest)(nil), // 76: cache_client._SortedSetGetScoreRequest + (*XSortedSetGetScoreResponse)(nil), // 77: cache_client._SortedSetGetScoreResponse + (*XSortedSetRemoveRequest)(nil), // 78: cache_client._SortedSetRemoveRequest + (*XSortedSetRemoveResponse)(nil), // 79: cache_client._SortedSetRemoveResponse + (*XSortedSetIncrementRequest)(nil), // 80: cache_client._SortedSetIncrementRequest + (*XSortedSetIncrementResponse)(nil), // 81: cache_client._SortedSetIncrementResponse + (*XSortedSetGetRankRequest)(nil), // 82: cache_client._SortedSetGetRankRequest + (*XSortedSetGetRankResponse)(nil), // 83: cache_client._SortedSetGetRankResponse + (*XSortedSetLengthRequest)(nil), // 84: cache_client._SortedSetLengthRequest + (*XSortedSetLengthResponse)(nil), // 85: cache_client._SortedSetLengthResponse + (*XSortedSetLengthByScoreRequest)(nil), // 86: cache_client._SortedSetLengthByScoreRequest + (*XSortedSetLengthByScoreResponse)(nil), // 87: cache_client._SortedSetLengthByScoreResponse + (*XSetIfNotExistsResponse_XStored)(nil), // 88: cache_client._SetIfNotExistsResponse._Stored + (*XSetIfNotExistsResponse_XNotStored)(nil), // 89: cache_client._SetIfNotExistsResponse._NotStored + (*XUpdateTtlResponse_XSet)(nil), // 90: cache_client._UpdateTtlResponse._Set + (*XUpdateTtlResponse_XNotSet)(nil), // 91: cache_client._UpdateTtlResponse._NotSet + (*XUpdateTtlResponse_XMissing)(nil), // 92: cache_client._UpdateTtlResponse._Missing + (*XItemGetTtlResponse_XFound)(nil), // 93: cache_client._ItemGetTtlResponse._Found + (*XItemGetTtlResponse_XMissing)(nil), // 94: cache_client._ItemGetTtlResponse._Missing + (*XItemGetTypeResponse_XFound)(nil), // 95: cache_client._ItemGetTypeResponse._Found + (*XItemGetTypeResponse_XMissing)(nil), // 96: cache_client._ItemGetTypeResponse._Missing + (*XDictionaryGetResponse_XDictionaryGetResponsePart)(nil), // 97: cache_client._DictionaryGetResponse._DictionaryGetResponsePart + (*XDictionaryGetResponse_XFound)(nil), // 98: cache_client._DictionaryGetResponse._Found + (*XDictionaryGetResponse_XMissing)(nil), // 99: cache_client._DictionaryGetResponse._Missing + (*XDictionaryFetchResponse_XFound)(nil), // 100: cache_client._DictionaryFetchResponse._Found + (*XDictionaryFetchResponse_XMissing)(nil), // 101: cache_client._DictionaryFetchResponse._Missing + (*XDictionaryDeleteRequest_Some)(nil), // 102: cache_client._DictionaryDeleteRequest.Some + (*XDictionaryDeleteRequest_All)(nil), // 103: cache_client._DictionaryDeleteRequest.All + (*XDictionaryLengthResponse_XFound)(nil), // 104: cache_client._DictionaryLengthResponse._Found + (*XDictionaryLengthResponse_XMissing)(nil), // 105: cache_client._DictionaryLengthResponse._Missing + (*XSetFetchResponse_XFound)(nil), // 106: cache_client._SetFetchResponse._Found + (*XSetFetchResponse_XMissing)(nil), // 107: cache_client._SetFetchResponse._Missing + (*XSetDifferenceRequest_XMinuend)(nil), // 108: cache_client._SetDifferenceRequest._Minuend + (*XSetDifferenceRequest_XSubtrahend)(nil), // 109: cache_client._SetDifferenceRequest._Subtrahend + (*XSetDifferenceRequest_XSubtrahend_XSet)(nil), // 110: cache_client._SetDifferenceRequest._Subtrahend._Set + (*XSetDifferenceRequest_XSubtrahend_XIdentity)(nil), // 111: cache_client._SetDifferenceRequest._Subtrahend._Identity + (*XSetDifferenceResponse_XFound)(nil), // 112: cache_client._SetDifferenceResponse._Found + (*XSetDifferenceResponse_XMissing)(nil), // 113: cache_client._SetDifferenceResponse._Missing + (*XSetContainsResponse_XFound)(nil), // 114: cache_client._SetContainsResponse._Found + (*XSetContainsResponse_XMissing)(nil), // 115: cache_client._SetContainsResponse._Missing + (*XSetLengthResponse_XFound)(nil), // 116: cache_client._SetLengthResponse._Found + (*XSetLengthResponse_XMissing)(nil), // 117: cache_client._SetLengthResponse._Missing + (*XSetPopResponse_XFound)(nil), // 118: cache_client._SetPopResponse._Found + (*XSetPopResponse_XMissing)(nil), // 119: cache_client._SetPopResponse._Missing + (*XListPopFrontResponse_XFound)(nil), // 120: cache_client._ListPopFrontResponse._Found + (*XListPopFrontResponse_XMissing)(nil), // 121: cache_client._ListPopFrontResponse._Missing + (*XListPopBackResponse_XFound)(nil), // 122: cache_client._ListPopBackResponse._Found + (*XListPopBackResponse_XMissing)(nil), // 123: cache_client._ListPopBackResponse._Missing + (*XListEraseRequest_XAll)(nil), // 124: cache_client._ListEraseRequest._All + (*XListEraseRequest_XListRanges)(nil), // 125: cache_client._ListEraseRequest._ListRanges + (*XListEraseResponse_XFound)(nil), // 126: cache_client._ListEraseResponse._Found + (*XListEraseResponse_XMissing)(nil), // 127: cache_client._ListEraseResponse._Missing + (*XListRemoveResponse_XFound)(nil), // 128: cache_client._ListRemoveResponse._Found + (*XListRemoveResponse_XMissing)(nil), // 129: cache_client._ListRemoveResponse._Missing + (*XListRetainResponse_XFound)(nil), // 130: cache_client._ListRetainResponse._Found + (*XListRetainResponse_XMissing)(nil), // 131: cache_client._ListRetainResponse._Missing + (*XListFetchResponse_XFound)(nil), // 132: cache_client._ListFetchResponse._Found + (*XListFetchResponse_XMissing)(nil), // 133: cache_client._ListFetchResponse._Missing + (*XListLengthResponse_XFound)(nil), // 134: cache_client._ListLengthResponse._Found + (*XListLengthResponse_XMissing)(nil), // 135: cache_client._ListLengthResponse._Missing + (*XSortedSetFetchRequest_XByIndex)(nil), // 136: cache_client._SortedSetFetchRequest._ByIndex + (*XSortedSetFetchRequest_XByScore)(nil), // 137: cache_client._SortedSetFetchRequest._ByScore + (*XSortedSetFetchRequest_XByScore_XScore)(nil), // 138: cache_client._SortedSetFetchRequest._ByScore._Score + (*XSortedSetFetchResponse_XFound)(nil), // 139: cache_client._SortedSetFetchResponse._Found + (*XSortedSetFetchResponse_XMissing)(nil), // 140: cache_client._SortedSetFetchResponse._Missing + (*XSortedSetFetchResponse_XFound_XValuesWithScores)(nil), // 141: cache_client._SortedSetFetchResponse._Found._ValuesWithScores + (*XSortedSetFetchResponse_XFound_XValues)(nil), // 142: cache_client._SortedSetFetchResponse._Found._Values + (*XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart)(nil), // 143: cache_client._SortedSetGetScoreResponse._SortedSetGetScoreResponsePart + (*XSortedSetGetScoreResponse_XSortedSetFound)(nil), // 144: cache_client._SortedSetGetScoreResponse._SortedSetFound + (*XSortedSetGetScoreResponse_XSortedSetMissing)(nil), // 145: cache_client._SortedSetGetScoreResponse._SortedSetMissing + (*XSortedSetRemoveRequest_XAll)(nil), // 146: cache_client._SortedSetRemoveRequest._All + (*XSortedSetRemoveRequest_XSome)(nil), // 147: cache_client._SortedSetRemoveRequest._Some + (*XSortedSetGetRankResponse_XRankResponsePart)(nil), // 148: cache_client._SortedSetGetRankResponse._RankResponsePart + (*XSortedSetGetRankResponse_XSortedSetMissing)(nil), // 149: cache_client._SortedSetGetRankResponse._SortedSetMissing + (*XSortedSetLengthResponse_XFound)(nil), // 150: cache_client._SortedSetLengthResponse._Found + (*XSortedSetLengthResponse_XMissing)(nil), // 151: cache_client._SortedSetLengthResponse._Missing + (*XSortedSetLengthByScoreResponse_XFound)(nil), // 152: cache_client._SortedSetLengthByScoreResponse._Found + (*XSortedSetLengthByScoreResponse_XMissing)(nil), // 153: cache_client._SortedSetLengthByScoreResponse._Missing } var file_cacheclient_proto_depIdxs = []int32{ 0, // 0: cache_client._GetResponse.result:type_name -> cache_client.ECacheResult 0, // 1: cache_client._SetResponse.result:type_name -> cache_client.ECacheResult - 86, // 2: cache_client._SetIfNotExistsResponse.stored:type_name -> cache_client._SetIfNotExistsResponse._Stored - 87, // 3: cache_client._SetIfNotExistsResponse.not_stored:type_name -> cache_client._SetIfNotExistsResponse._NotStored - 88, // 4: cache_client._UpdateTtlResponse.set:type_name -> cache_client._UpdateTtlResponse._Set - 89, // 5: cache_client._UpdateTtlResponse.not_set:type_name -> cache_client._UpdateTtlResponse._NotSet - 90, // 6: cache_client._UpdateTtlResponse.missing:type_name -> cache_client._UpdateTtlResponse._Missing - 91, // 7: cache_client._ItemGetTtlResponse.found:type_name -> cache_client._ItemGetTtlResponse._Found - 92, // 8: cache_client._ItemGetTtlResponse.missing:type_name -> cache_client._ItemGetTtlResponse._Missing - 93, // 9: cache_client._ItemGetTypeResponse.found:type_name -> cache_client._ItemGetTypeResponse._Found - 94, // 10: cache_client._ItemGetTypeResponse.missing:type_name -> cache_client._ItemGetTypeResponse._Missing - 96, // 11: cache_client._DictionaryGetResponse.found:type_name -> cache_client._DictionaryGetResponse._Found - 97, // 12: cache_client._DictionaryGetResponse.missing:type_name -> cache_client._DictionaryGetResponse._Missing - 98, // 13: cache_client._DictionaryFetchResponse.found:type_name -> cache_client._DictionaryFetchResponse._Found - 99, // 14: cache_client._DictionaryFetchResponse.missing:type_name -> cache_client._DictionaryFetchResponse._Missing + 88, // 2: cache_client._SetIfNotExistsResponse.stored:type_name -> cache_client._SetIfNotExistsResponse._Stored + 89, // 3: cache_client._SetIfNotExistsResponse.not_stored:type_name -> cache_client._SetIfNotExistsResponse._NotStored + 90, // 4: cache_client._UpdateTtlResponse.set:type_name -> cache_client._UpdateTtlResponse._Set + 91, // 5: cache_client._UpdateTtlResponse.not_set:type_name -> cache_client._UpdateTtlResponse._NotSet + 92, // 6: cache_client._UpdateTtlResponse.missing:type_name -> cache_client._UpdateTtlResponse._Missing + 93, // 7: cache_client._ItemGetTtlResponse.found:type_name -> cache_client._ItemGetTtlResponse._Found + 94, // 8: cache_client._ItemGetTtlResponse.missing:type_name -> cache_client._ItemGetTtlResponse._Missing + 95, // 9: cache_client._ItemGetTypeResponse.found:type_name -> cache_client._ItemGetTypeResponse._Found + 96, // 10: cache_client._ItemGetTypeResponse.missing:type_name -> cache_client._ItemGetTypeResponse._Missing + 98, // 11: cache_client._DictionaryGetResponse.found:type_name -> cache_client._DictionaryGetResponse._Found + 99, // 12: cache_client._DictionaryGetResponse.missing:type_name -> cache_client._DictionaryGetResponse._Missing + 100, // 13: cache_client._DictionaryFetchResponse.found:type_name -> cache_client._DictionaryFetchResponse._Found + 101, // 14: cache_client._DictionaryFetchResponse.missing:type_name -> cache_client._DictionaryFetchResponse._Missing 25, // 15: cache_client._DictionarySetRequest.items:type_name -> cache_client._DictionaryFieldValuePair - 100, // 16: cache_client._DictionaryDeleteRequest.some:type_name -> cache_client._DictionaryDeleteRequest.Some - 101, // 17: cache_client._DictionaryDeleteRequest.all:type_name -> cache_client._DictionaryDeleteRequest.All - 102, // 18: cache_client._DictionaryLengthResponse.found:type_name -> cache_client._DictionaryLengthResponse._Found - 103, // 19: cache_client._DictionaryLengthResponse.missing:type_name -> cache_client._DictionaryLengthResponse._Missing - 104, // 20: cache_client._SetFetchResponse.found:type_name -> cache_client._SetFetchResponse._Found - 105, // 21: cache_client._SetFetchResponse.missing:type_name -> cache_client._SetFetchResponse._Missing - 106, // 22: cache_client._SetDifferenceRequest.minuend:type_name -> cache_client._SetDifferenceRequest._Minuend - 107, // 23: cache_client._SetDifferenceRequest.subtrahend:type_name -> cache_client._SetDifferenceRequest._Subtrahend - 110, // 24: cache_client._SetDifferenceResponse.found:type_name -> cache_client._SetDifferenceResponse._Found - 111, // 25: cache_client._SetDifferenceResponse.missing:type_name -> cache_client._SetDifferenceResponse._Missing - 112, // 26: cache_client._SetContainsResponse.found:type_name -> cache_client._SetContainsResponse._Found - 113, // 27: cache_client._SetContainsResponse.missing:type_name -> cache_client._SetContainsResponse._Missing - 114, // 28: cache_client._SetLengthResponse.found:type_name -> cache_client._SetLengthResponse._Found - 115, // 29: cache_client._SetLengthResponse.missing:type_name -> cache_client._SetLengthResponse._Missing - 116, // 30: cache_client._ListPopFrontResponse.found:type_name -> cache_client._ListPopFrontResponse._Found - 117, // 31: cache_client._ListPopFrontResponse.missing:type_name -> cache_client._ListPopFrontResponse._Missing - 118, // 32: cache_client._ListPopBackResponse.found:type_name -> cache_client._ListPopBackResponse._Found - 119, // 33: cache_client._ListPopBackResponse.missing:type_name -> cache_client._ListPopBackResponse._Missing - 121, // 34: cache_client._ListEraseRequest.some:type_name -> cache_client._ListEraseRequest._ListRanges - 120, // 35: cache_client._ListEraseRequest.all:type_name -> cache_client._ListEraseRequest._All - 122, // 36: cache_client._ListEraseResponse.found:type_name -> cache_client._ListEraseResponse._Found - 123, // 37: cache_client._ListEraseResponse.missing:type_name -> cache_client._ListEraseResponse._Missing - 124, // 38: cache_client._ListRemoveResponse.found:type_name -> cache_client._ListRemoveResponse._Found - 125, // 39: cache_client._ListRemoveResponse.missing:type_name -> cache_client._ListRemoveResponse._Missing - 62, // 40: cache_client._ListFetchRequest.unbounded_start:type_name -> cache_client._Unbounded - 62, // 41: cache_client._ListFetchRequest.unbounded_end:type_name -> cache_client._Unbounded - 62, // 42: cache_client._ListRetainRequest.unbounded_start:type_name -> cache_client._Unbounded - 62, // 43: cache_client._ListRetainRequest.unbounded_end:type_name -> cache_client._Unbounded - 126, // 44: cache_client._ListRetainResponse.found:type_name -> cache_client._ListRetainResponse._Found - 127, // 45: cache_client._ListRetainResponse.missing:type_name -> cache_client._ListRetainResponse._Missing - 128, // 46: cache_client._ListFetchResponse.found:type_name -> cache_client._ListFetchResponse._Found - 129, // 47: cache_client._ListFetchResponse.missing:type_name -> cache_client._ListFetchResponse._Missing - 130, // 48: cache_client._ListLengthResponse.found:type_name -> cache_client._ListLengthResponse._Found - 131, // 49: cache_client._ListLengthResponse.missing:type_name -> cache_client._ListLengthResponse._Missing - 69, // 50: cache_client._SortedSetPutRequest.elements:type_name -> cache_client._SortedSetElement - 2, // 51: cache_client._SortedSetFetchRequest.order:type_name -> cache_client._SortedSetFetchRequest.Order - 132, // 52: cache_client._SortedSetFetchRequest.by_index:type_name -> cache_client._SortedSetFetchRequest._ByIndex - 133, // 53: cache_client._SortedSetFetchRequest.by_score:type_name -> cache_client._SortedSetFetchRequest._ByScore - 135, // 54: cache_client._SortedSetFetchResponse.found:type_name -> cache_client._SortedSetFetchResponse._Found - 136, // 55: cache_client._SortedSetFetchResponse.missing:type_name -> cache_client._SortedSetFetchResponse._Missing - 140, // 56: cache_client._SortedSetGetScoreResponse.found:type_name -> cache_client._SortedSetGetScoreResponse._SortedSetFound - 141, // 57: cache_client._SortedSetGetScoreResponse.missing:type_name -> cache_client._SortedSetGetScoreResponse._SortedSetMissing - 142, // 58: cache_client._SortedSetRemoveRequest.all:type_name -> cache_client._SortedSetRemoveRequest._All - 143, // 59: cache_client._SortedSetRemoveRequest.some:type_name -> cache_client._SortedSetRemoveRequest._Some - 3, // 60: cache_client._SortedSetGetRankRequest.order:type_name -> cache_client._SortedSetGetRankRequest.Order - 144, // 61: cache_client._SortedSetGetRankResponse.element_rank:type_name -> cache_client._SortedSetGetRankResponse._RankResponsePart - 145, // 62: cache_client._SortedSetGetRankResponse.missing:type_name -> cache_client._SortedSetGetRankResponse._SortedSetMissing - 146, // 63: cache_client._SortedSetLengthResponse.found:type_name -> cache_client._SortedSetLengthResponse._Found - 147, // 64: cache_client._SortedSetLengthResponse.missing:type_name -> cache_client._SortedSetLengthResponse._Missing - 62, // 65: cache_client._SortedSetLengthByScoreRequest.unbounded_min:type_name -> cache_client._Unbounded - 62, // 66: cache_client._SortedSetLengthByScoreRequest.unbounded_max:type_name -> cache_client._Unbounded - 148, // 67: cache_client._SortedSetLengthByScoreResponse.found:type_name -> cache_client._SortedSetLengthByScoreResponse._Found - 149, // 68: cache_client._SortedSetLengthByScoreResponse.missing:type_name -> cache_client._SortedSetLengthByScoreResponse._Missing - 1, // 69: cache_client._ItemGetTypeResponse._Found.item_type:type_name -> cache_client._ItemGetTypeResponse.ItemType - 0, // 70: cache_client._DictionaryGetResponse._DictionaryGetResponsePart.result:type_name -> cache_client.ECacheResult - 95, // 71: cache_client._DictionaryGetResponse._Found.items:type_name -> cache_client._DictionaryGetResponse._DictionaryGetResponsePart - 25, // 72: cache_client._DictionaryFetchResponse._Found.items:type_name -> cache_client._DictionaryFieldValuePair - 108, // 73: cache_client._SetDifferenceRequest._Subtrahend.set:type_name -> cache_client._SetDifferenceRequest._Subtrahend._Set - 109, // 74: cache_client._SetDifferenceRequest._Subtrahend.identity:type_name -> cache_client._SetDifferenceRequest._Subtrahend._Identity - 57, // 75: cache_client._ListEraseRequest._ListRanges.ranges:type_name -> cache_client._ListRange - 62, // 76: cache_client._SortedSetFetchRequest._ByIndex.unbounded_start:type_name -> cache_client._Unbounded - 62, // 77: cache_client._SortedSetFetchRequest._ByIndex.unbounded_end:type_name -> cache_client._Unbounded - 62, // 78: cache_client._SortedSetFetchRequest._ByScore.unbounded_min:type_name -> cache_client._Unbounded - 134, // 79: cache_client._SortedSetFetchRequest._ByScore.min_score:type_name -> cache_client._SortedSetFetchRequest._ByScore._Score - 62, // 80: cache_client._SortedSetFetchRequest._ByScore.unbounded_max:type_name -> cache_client._Unbounded - 134, // 81: cache_client._SortedSetFetchRequest._ByScore.max_score:type_name -> cache_client._SortedSetFetchRequest._ByScore._Score - 137, // 82: cache_client._SortedSetFetchResponse._Found.values_with_scores:type_name -> cache_client._SortedSetFetchResponse._Found._ValuesWithScores - 138, // 83: cache_client._SortedSetFetchResponse._Found.values:type_name -> cache_client._SortedSetFetchResponse._Found._Values - 69, // 84: cache_client._SortedSetFetchResponse._Found._ValuesWithScores.elements:type_name -> cache_client._SortedSetElement - 0, // 85: cache_client._SortedSetGetScoreResponse._SortedSetGetScoreResponsePart.result:type_name -> cache_client.ECacheResult - 139, // 86: cache_client._SortedSetGetScoreResponse._SortedSetFound.elements:type_name -> cache_client._SortedSetGetScoreResponse._SortedSetGetScoreResponsePart - 0, // 87: cache_client._SortedSetGetRankResponse._RankResponsePart.result:type_name -> cache_client.ECacheResult - 4, // 88: cache_client.Scs.Get:input_type -> cache_client._GetRequest - 8, // 89: cache_client.Scs.Set:input_type -> cache_client._SetRequest - 10, // 90: cache_client.Scs.SetIfNotExists:input_type -> cache_client._SetIfNotExistsRequest - 6, // 91: cache_client.Scs.Delete:input_type -> cache_client._DeleteRequest - 12, // 92: cache_client.Scs.KeysExist:input_type -> cache_client._KeysExistRequest - 14, // 93: cache_client.Scs.Increment:input_type -> cache_client._IncrementRequest - 16, // 94: cache_client.Scs.UpdateTtl:input_type -> cache_client._UpdateTtlRequest - 18, // 95: cache_client.Scs.ItemGetTtl:input_type -> cache_client._ItemGetTtlRequest - 20, // 96: cache_client.Scs.ItemGetType:input_type -> cache_client._ItemGetTypeRequest - 22, // 97: cache_client.Scs.DictionaryGet:input_type -> cache_client._DictionaryGetRequest - 24, // 98: cache_client.Scs.DictionaryFetch:input_type -> cache_client._DictionaryFetchRequest - 27, // 99: cache_client.Scs.DictionarySet:input_type -> cache_client._DictionarySetRequest - 29, // 100: cache_client.Scs.DictionaryIncrement:input_type -> cache_client._DictionaryIncrementRequest - 31, // 101: cache_client.Scs.DictionaryDelete:input_type -> cache_client._DictionaryDeleteRequest - 33, // 102: cache_client.Scs.DictionaryLength:input_type -> cache_client._DictionaryLengthRequest - 35, // 103: cache_client.Scs.SetFetch:input_type -> cache_client._SetFetchRequest - 37, // 104: cache_client.Scs.SetUnion:input_type -> cache_client._SetUnionRequest - 39, // 105: cache_client.Scs.SetDifference:input_type -> cache_client._SetDifferenceRequest - 41, // 106: cache_client.Scs.SetContains:input_type -> cache_client._SetContainsRequest - 43, // 107: cache_client.Scs.SetLength:input_type -> cache_client._SetLengthRequest - 49, // 108: cache_client.Scs.ListPushFront:input_type -> cache_client._ListPushFrontRequest - 51, // 109: cache_client.Scs.ListPushBack:input_type -> cache_client._ListPushBackRequest - 53, // 110: cache_client.Scs.ListPopFront:input_type -> cache_client._ListPopFrontRequest - 55, // 111: cache_client.Scs.ListPopBack:input_type -> cache_client._ListPopBackRequest - 58, // 112: cache_client.Scs.ListErase:input_type -> cache_client._ListEraseRequest - 60, // 113: cache_client.Scs.ListRemove:input_type -> cache_client._ListRemoveRequest - 63, // 114: cache_client.Scs.ListFetch:input_type -> cache_client._ListFetchRequest - 67, // 115: cache_client.Scs.ListLength:input_type -> cache_client._ListLengthRequest - 45, // 116: cache_client.Scs.ListConcatenateFront:input_type -> cache_client._ListConcatenateFrontRequest - 47, // 117: cache_client.Scs.ListConcatenateBack:input_type -> cache_client._ListConcatenateBackRequest - 64, // 118: cache_client.Scs.ListRetain:input_type -> cache_client._ListRetainRequest - 70, // 119: cache_client.Scs.SortedSetPut:input_type -> cache_client._SortedSetPutRequest - 72, // 120: cache_client.Scs.SortedSetFetch:input_type -> cache_client._SortedSetFetchRequest - 74, // 121: cache_client.Scs.SortedSetGetScore:input_type -> cache_client._SortedSetGetScoreRequest - 76, // 122: cache_client.Scs.SortedSetRemove:input_type -> cache_client._SortedSetRemoveRequest - 78, // 123: cache_client.Scs.SortedSetIncrement:input_type -> cache_client._SortedSetIncrementRequest - 80, // 124: cache_client.Scs.SortedSetGetRank:input_type -> cache_client._SortedSetGetRankRequest - 82, // 125: cache_client.Scs.SortedSetLength:input_type -> cache_client._SortedSetLengthRequest - 84, // 126: cache_client.Scs.SortedSetLengthByScore:input_type -> cache_client._SortedSetLengthByScoreRequest - 5, // 127: cache_client.Scs.Get:output_type -> cache_client._GetResponse - 9, // 128: cache_client.Scs.Set:output_type -> cache_client._SetResponse - 11, // 129: cache_client.Scs.SetIfNotExists:output_type -> cache_client._SetIfNotExistsResponse - 7, // 130: cache_client.Scs.Delete:output_type -> cache_client._DeleteResponse - 13, // 131: cache_client.Scs.KeysExist:output_type -> cache_client._KeysExistResponse - 15, // 132: cache_client.Scs.Increment:output_type -> cache_client._IncrementResponse - 17, // 133: cache_client.Scs.UpdateTtl:output_type -> cache_client._UpdateTtlResponse - 19, // 134: cache_client.Scs.ItemGetTtl:output_type -> cache_client._ItemGetTtlResponse - 21, // 135: cache_client.Scs.ItemGetType:output_type -> cache_client._ItemGetTypeResponse - 23, // 136: cache_client.Scs.DictionaryGet:output_type -> cache_client._DictionaryGetResponse - 26, // 137: cache_client.Scs.DictionaryFetch:output_type -> cache_client._DictionaryFetchResponse - 28, // 138: cache_client.Scs.DictionarySet:output_type -> cache_client._DictionarySetResponse - 30, // 139: cache_client.Scs.DictionaryIncrement:output_type -> cache_client._DictionaryIncrementResponse - 32, // 140: cache_client.Scs.DictionaryDelete:output_type -> cache_client._DictionaryDeleteResponse - 34, // 141: cache_client.Scs.DictionaryLength:output_type -> cache_client._DictionaryLengthResponse - 36, // 142: cache_client.Scs.SetFetch:output_type -> cache_client._SetFetchResponse - 38, // 143: cache_client.Scs.SetUnion:output_type -> cache_client._SetUnionResponse - 40, // 144: cache_client.Scs.SetDifference:output_type -> cache_client._SetDifferenceResponse - 42, // 145: cache_client.Scs.SetContains:output_type -> cache_client._SetContainsResponse - 44, // 146: cache_client.Scs.SetLength:output_type -> cache_client._SetLengthResponse - 50, // 147: cache_client.Scs.ListPushFront:output_type -> cache_client._ListPushFrontResponse - 52, // 148: cache_client.Scs.ListPushBack:output_type -> cache_client._ListPushBackResponse - 54, // 149: cache_client.Scs.ListPopFront:output_type -> cache_client._ListPopFrontResponse - 56, // 150: cache_client.Scs.ListPopBack:output_type -> cache_client._ListPopBackResponse - 59, // 151: cache_client.Scs.ListErase:output_type -> cache_client._ListEraseResponse - 61, // 152: cache_client.Scs.ListRemove:output_type -> cache_client._ListRemoveResponse - 66, // 153: cache_client.Scs.ListFetch:output_type -> cache_client._ListFetchResponse - 68, // 154: cache_client.Scs.ListLength:output_type -> cache_client._ListLengthResponse - 46, // 155: cache_client.Scs.ListConcatenateFront:output_type -> cache_client._ListConcatenateFrontResponse - 48, // 156: cache_client.Scs.ListConcatenateBack:output_type -> cache_client._ListConcatenateBackResponse - 65, // 157: cache_client.Scs.ListRetain:output_type -> cache_client._ListRetainResponse - 71, // 158: cache_client.Scs.SortedSetPut:output_type -> cache_client._SortedSetPutResponse - 73, // 159: cache_client.Scs.SortedSetFetch:output_type -> cache_client._SortedSetFetchResponse - 75, // 160: cache_client.Scs.SortedSetGetScore:output_type -> cache_client._SortedSetGetScoreResponse - 77, // 161: cache_client.Scs.SortedSetRemove:output_type -> cache_client._SortedSetRemoveResponse - 79, // 162: cache_client.Scs.SortedSetIncrement:output_type -> cache_client._SortedSetIncrementResponse - 81, // 163: cache_client.Scs.SortedSetGetRank:output_type -> cache_client._SortedSetGetRankResponse - 83, // 164: cache_client.Scs.SortedSetLength:output_type -> cache_client._SortedSetLengthResponse - 85, // 165: cache_client.Scs.SortedSetLengthByScore:output_type -> cache_client._SortedSetLengthByScoreResponse - 127, // [127:166] is the sub-list for method output_type - 88, // [88:127] is the sub-list for method input_type - 88, // [88:88] is the sub-list for extension type_name - 88, // [88:88] is the sub-list for extension extendee - 0, // [0:88] is the sub-list for field type_name + 102, // 16: cache_client._DictionaryDeleteRequest.some:type_name -> cache_client._DictionaryDeleteRequest.Some + 103, // 17: cache_client._DictionaryDeleteRequest.all:type_name -> cache_client._DictionaryDeleteRequest.All + 104, // 18: cache_client._DictionaryLengthResponse.found:type_name -> cache_client._DictionaryLengthResponse._Found + 105, // 19: cache_client._DictionaryLengthResponse.missing:type_name -> cache_client._DictionaryLengthResponse._Missing + 106, // 20: cache_client._SetFetchResponse.found:type_name -> cache_client._SetFetchResponse._Found + 107, // 21: cache_client._SetFetchResponse.missing:type_name -> cache_client._SetFetchResponse._Missing + 108, // 22: cache_client._SetDifferenceRequest.minuend:type_name -> cache_client._SetDifferenceRequest._Minuend + 109, // 23: cache_client._SetDifferenceRequest.subtrahend:type_name -> cache_client._SetDifferenceRequest._Subtrahend + 112, // 24: cache_client._SetDifferenceResponse.found:type_name -> cache_client._SetDifferenceResponse._Found + 113, // 25: cache_client._SetDifferenceResponse.missing:type_name -> cache_client._SetDifferenceResponse._Missing + 114, // 26: cache_client._SetContainsResponse.found:type_name -> cache_client._SetContainsResponse._Found + 115, // 27: cache_client._SetContainsResponse.missing:type_name -> cache_client._SetContainsResponse._Missing + 116, // 28: cache_client._SetLengthResponse.found:type_name -> cache_client._SetLengthResponse._Found + 117, // 29: cache_client._SetLengthResponse.missing:type_name -> cache_client._SetLengthResponse._Missing + 118, // 30: cache_client._SetPopResponse.found:type_name -> cache_client._SetPopResponse._Found + 119, // 31: cache_client._SetPopResponse.missing:type_name -> cache_client._SetPopResponse._Missing + 120, // 32: cache_client._ListPopFrontResponse.found:type_name -> cache_client._ListPopFrontResponse._Found + 121, // 33: cache_client._ListPopFrontResponse.missing:type_name -> cache_client._ListPopFrontResponse._Missing + 122, // 34: cache_client._ListPopBackResponse.found:type_name -> cache_client._ListPopBackResponse._Found + 123, // 35: cache_client._ListPopBackResponse.missing:type_name -> cache_client._ListPopBackResponse._Missing + 125, // 36: cache_client._ListEraseRequest.some:type_name -> cache_client._ListEraseRequest._ListRanges + 124, // 37: cache_client._ListEraseRequest.all:type_name -> cache_client._ListEraseRequest._All + 126, // 38: cache_client._ListEraseResponse.found:type_name -> cache_client._ListEraseResponse._Found + 127, // 39: cache_client._ListEraseResponse.missing:type_name -> cache_client._ListEraseResponse._Missing + 128, // 40: cache_client._ListRemoveResponse.found:type_name -> cache_client._ListRemoveResponse._Found + 129, // 41: cache_client._ListRemoveResponse.missing:type_name -> cache_client._ListRemoveResponse._Missing + 64, // 42: cache_client._ListFetchRequest.unbounded_start:type_name -> cache_client._Unbounded + 64, // 43: cache_client._ListFetchRequest.unbounded_end:type_name -> cache_client._Unbounded + 64, // 44: cache_client._ListRetainRequest.unbounded_start:type_name -> cache_client._Unbounded + 64, // 45: cache_client._ListRetainRequest.unbounded_end:type_name -> cache_client._Unbounded + 130, // 46: cache_client._ListRetainResponse.found:type_name -> cache_client._ListRetainResponse._Found + 131, // 47: cache_client._ListRetainResponse.missing:type_name -> cache_client._ListRetainResponse._Missing + 132, // 48: cache_client._ListFetchResponse.found:type_name -> cache_client._ListFetchResponse._Found + 133, // 49: cache_client._ListFetchResponse.missing:type_name -> cache_client._ListFetchResponse._Missing + 134, // 50: cache_client._ListLengthResponse.found:type_name -> cache_client._ListLengthResponse._Found + 135, // 51: cache_client._ListLengthResponse.missing:type_name -> cache_client._ListLengthResponse._Missing + 71, // 52: cache_client._SortedSetPutRequest.elements:type_name -> cache_client._SortedSetElement + 2, // 53: cache_client._SortedSetFetchRequest.order:type_name -> cache_client._SortedSetFetchRequest.Order + 136, // 54: cache_client._SortedSetFetchRequest.by_index:type_name -> cache_client._SortedSetFetchRequest._ByIndex + 137, // 55: cache_client._SortedSetFetchRequest.by_score:type_name -> cache_client._SortedSetFetchRequest._ByScore + 139, // 56: cache_client._SortedSetFetchResponse.found:type_name -> cache_client._SortedSetFetchResponse._Found + 140, // 57: cache_client._SortedSetFetchResponse.missing:type_name -> cache_client._SortedSetFetchResponse._Missing + 144, // 58: cache_client._SortedSetGetScoreResponse.found:type_name -> cache_client._SortedSetGetScoreResponse._SortedSetFound + 145, // 59: cache_client._SortedSetGetScoreResponse.missing:type_name -> cache_client._SortedSetGetScoreResponse._SortedSetMissing + 146, // 60: cache_client._SortedSetRemoveRequest.all:type_name -> cache_client._SortedSetRemoveRequest._All + 147, // 61: cache_client._SortedSetRemoveRequest.some:type_name -> cache_client._SortedSetRemoveRequest._Some + 3, // 62: cache_client._SortedSetGetRankRequest.order:type_name -> cache_client._SortedSetGetRankRequest.Order + 148, // 63: cache_client._SortedSetGetRankResponse.element_rank:type_name -> cache_client._SortedSetGetRankResponse._RankResponsePart + 149, // 64: cache_client._SortedSetGetRankResponse.missing:type_name -> cache_client._SortedSetGetRankResponse._SortedSetMissing + 150, // 65: cache_client._SortedSetLengthResponse.found:type_name -> cache_client._SortedSetLengthResponse._Found + 151, // 66: cache_client._SortedSetLengthResponse.missing:type_name -> cache_client._SortedSetLengthResponse._Missing + 64, // 67: cache_client._SortedSetLengthByScoreRequest.unbounded_min:type_name -> cache_client._Unbounded + 64, // 68: cache_client._SortedSetLengthByScoreRequest.unbounded_max:type_name -> cache_client._Unbounded + 152, // 69: cache_client._SortedSetLengthByScoreResponse.found:type_name -> cache_client._SortedSetLengthByScoreResponse._Found + 153, // 70: cache_client._SortedSetLengthByScoreResponse.missing:type_name -> cache_client._SortedSetLengthByScoreResponse._Missing + 1, // 71: cache_client._ItemGetTypeResponse._Found.item_type:type_name -> cache_client._ItemGetTypeResponse.ItemType + 0, // 72: cache_client._DictionaryGetResponse._DictionaryGetResponsePart.result:type_name -> cache_client.ECacheResult + 97, // 73: cache_client._DictionaryGetResponse._Found.items:type_name -> cache_client._DictionaryGetResponse._DictionaryGetResponsePart + 25, // 74: cache_client._DictionaryFetchResponse._Found.items:type_name -> cache_client._DictionaryFieldValuePair + 110, // 75: cache_client._SetDifferenceRequest._Subtrahend.set:type_name -> cache_client._SetDifferenceRequest._Subtrahend._Set + 111, // 76: cache_client._SetDifferenceRequest._Subtrahend.identity:type_name -> cache_client._SetDifferenceRequest._Subtrahend._Identity + 59, // 77: cache_client._ListEraseRequest._ListRanges.ranges:type_name -> cache_client._ListRange + 64, // 78: cache_client._SortedSetFetchRequest._ByIndex.unbounded_start:type_name -> cache_client._Unbounded + 64, // 79: cache_client._SortedSetFetchRequest._ByIndex.unbounded_end:type_name -> cache_client._Unbounded + 64, // 80: cache_client._SortedSetFetchRequest._ByScore.unbounded_min:type_name -> cache_client._Unbounded + 138, // 81: cache_client._SortedSetFetchRequest._ByScore.min_score:type_name -> cache_client._SortedSetFetchRequest._ByScore._Score + 64, // 82: cache_client._SortedSetFetchRequest._ByScore.unbounded_max:type_name -> cache_client._Unbounded + 138, // 83: cache_client._SortedSetFetchRequest._ByScore.max_score:type_name -> cache_client._SortedSetFetchRequest._ByScore._Score + 141, // 84: cache_client._SortedSetFetchResponse._Found.values_with_scores:type_name -> cache_client._SortedSetFetchResponse._Found._ValuesWithScores + 142, // 85: cache_client._SortedSetFetchResponse._Found.values:type_name -> cache_client._SortedSetFetchResponse._Found._Values + 71, // 86: cache_client._SortedSetFetchResponse._Found._ValuesWithScores.elements:type_name -> cache_client._SortedSetElement + 0, // 87: cache_client._SortedSetGetScoreResponse._SortedSetGetScoreResponsePart.result:type_name -> cache_client.ECacheResult + 143, // 88: cache_client._SortedSetGetScoreResponse._SortedSetFound.elements:type_name -> cache_client._SortedSetGetScoreResponse._SortedSetGetScoreResponsePart + 0, // 89: cache_client._SortedSetGetRankResponse._RankResponsePart.result:type_name -> cache_client.ECacheResult + 4, // 90: cache_client.Scs.Get:input_type -> cache_client._GetRequest + 8, // 91: cache_client.Scs.Set:input_type -> cache_client._SetRequest + 10, // 92: cache_client.Scs.SetIfNotExists:input_type -> cache_client._SetIfNotExistsRequest + 6, // 93: cache_client.Scs.Delete:input_type -> cache_client._DeleteRequest + 12, // 94: cache_client.Scs.KeysExist:input_type -> cache_client._KeysExistRequest + 14, // 95: cache_client.Scs.Increment:input_type -> cache_client._IncrementRequest + 16, // 96: cache_client.Scs.UpdateTtl:input_type -> cache_client._UpdateTtlRequest + 18, // 97: cache_client.Scs.ItemGetTtl:input_type -> cache_client._ItemGetTtlRequest + 20, // 98: cache_client.Scs.ItemGetType:input_type -> cache_client._ItemGetTypeRequest + 22, // 99: cache_client.Scs.DictionaryGet:input_type -> cache_client._DictionaryGetRequest + 24, // 100: cache_client.Scs.DictionaryFetch:input_type -> cache_client._DictionaryFetchRequest + 27, // 101: cache_client.Scs.DictionarySet:input_type -> cache_client._DictionarySetRequest + 29, // 102: cache_client.Scs.DictionaryIncrement:input_type -> cache_client._DictionaryIncrementRequest + 31, // 103: cache_client.Scs.DictionaryDelete:input_type -> cache_client._DictionaryDeleteRequest + 33, // 104: cache_client.Scs.DictionaryLength:input_type -> cache_client._DictionaryLengthRequest + 35, // 105: cache_client.Scs.SetFetch:input_type -> cache_client._SetFetchRequest + 37, // 106: cache_client.Scs.SetUnion:input_type -> cache_client._SetUnionRequest + 39, // 107: cache_client.Scs.SetDifference:input_type -> cache_client._SetDifferenceRequest + 41, // 108: cache_client.Scs.SetContains:input_type -> cache_client._SetContainsRequest + 43, // 109: cache_client.Scs.SetLength:input_type -> cache_client._SetLengthRequest + 45, // 110: cache_client.Scs.SetPop:input_type -> cache_client._SetPopRequest + 51, // 111: cache_client.Scs.ListPushFront:input_type -> cache_client._ListPushFrontRequest + 53, // 112: cache_client.Scs.ListPushBack:input_type -> cache_client._ListPushBackRequest + 55, // 113: cache_client.Scs.ListPopFront:input_type -> cache_client._ListPopFrontRequest + 57, // 114: cache_client.Scs.ListPopBack:input_type -> cache_client._ListPopBackRequest + 60, // 115: cache_client.Scs.ListErase:input_type -> cache_client._ListEraseRequest + 62, // 116: cache_client.Scs.ListRemove:input_type -> cache_client._ListRemoveRequest + 65, // 117: cache_client.Scs.ListFetch:input_type -> cache_client._ListFetchRequest + 69, // 118: cache_client.Scs.ListLength:input_type -> cache_client._ListLengthRequest + 47, // 119: cache_client.Scs.ListConcatenateFront:input_type -> cache_client._ListConcatenateFrontRequest + 49, // 120: cache_client.Scs.ListConcatenateBack:input_type -> cache_client._ListConcatenateBackRequest + 66, // 121: cache_client.Scs.ListRetain:input_type -> cache_client._ListRetainRequest + 72, // 122: cache_client.Scs.SortedSetPut:input_type -> cache_client._SortedSetPutRequest + 74, // 123: cache_client.Scs.SortedSetFetch:input_type -> cache_client._SortedSetFetchRequest + 76, // 124: cache_client.Scs.SortedSetGetScore:input_type -> cache_client._SortedSetGetScoreRequest + 78, // 125: cache_client.Scs.SortedSetRemove:input_type -> cache_client._SortedSetRemoveRequest + 80, // 126: cache_client.Scs.SortedSetIncrement:input_type -> cache_client._SortedSetIncrementRequest + 82, // 127: cache_client.Scs.SortedSetGetRank:input_type -> cache_client._SortedSetGetRankRequest + 84, // 128: cache_client.Scs.SortedSetLength:input_type -> cache_client._SortedSetLengthRequest + 86, // 129: cache_client.Scs.SortedSetLengthByScore:input_type -> cache_client._SortedSetLengthByScoreRequest + 5, // 130: cache_client.Scs.Get:output_type -> cache_client._GetResponse + 9, // 131: cache_client.Scs.Set:output_type -> cache_client._SetResponse + 11, // 132: cache_client.Scs.SetIfNotExists:output_type -> cache_client._SetIfNotExistsResponse + 7, // 133: cache_client.Scs.Delete:output_type -> cache_client._DeleteResponse + 13, // 134: cache_client.Scs.KeysExist:output_type -> cache_client._KeysExistResponse + 15, // 135: cache_client.Scs.Increment:output_type -> cache_client._IncrementResponse + 17, // 136: cache_client.Scs.UpdateTtl:output_type -> cache_client._UpdateTtlResponse + 19, // 137: cache_client.Scs.ItemGetTtl:output_type -> cache_client._ItemGetTtlResponse + 21, // 138: cache_client.Scs.ItemGetType:output_type -> cache_client._ItemGetTypeResponse + 23, // 139: cache_client.Scs.DictionaryGet:output_type -> cache_client._DictionaryGetResponse + 26, // 140: cache_client.Scs.DictionaryFetch:output_type -> cache_client._DictionaryFetchResponse + 28, // 141: cache_client.Scs.DictionarySet:output_type -> cache_client._DictionarySetResponse + 30, // 142: cache_client.Scs.DictionaryIncrement:output_type -> cache_client._DictionaryIncrementResponse + 32, // 143: cache_client.Scs.DictionaryDelete:output_type -> cache_client._DictionaryDeleteResponse + 34, // 144: cache_client.Scs.DictionaryLength:output_type -> cache_client._DictionaryLengthResponse + 36, // 145: cache_client.Scs.SetFetch:output_type -> cache_client._SetFetchResponse + 38, // 146: cache_client.Scs.SetUnion:output_type -> cache_client._SetUnionResponse + 40, // 147: cache_client.Scs.SetDifference:output_type -> cache_client._SetDifferenceResponse + 42, // 148: cache_client.Scs.SetContains:output_type -> cache_client._SetContainsResponse + 44, // 149: cache_client.Scs.SetLength:output_type -> cache_client._SetLengthResponse + 46, // 150: cache_client.Scs.SetPop:output_type -> cache_client._SetPopResponse + 52, // 151: cache_client.Scs.ListPushFront:output_type -> cache_client._ListPushFrontResponse + 54, // 152: cache_client.Scs.ListPushBack:output_type -> cache_client._ListPushBackResponse + 56, // 153: cache_client.Scs.ListPopFront:output_type -> cache_client._ListPopFrontResponse + 58, // 154: cache_client.Scs.ListPopBack:output_type -> cache_client._ListPopBackResponse + 61, // 155: cache_client.Scs.ListErase:output_type -> cache_client._ListEraseResponse + 63, // 156: cache_client.Scs.ListRemove:output_type -> cache_client._ListRemoveResponse + 68, // 157: cache_client.Scs.ListFetch:output_type -> cache_client._ListFetchResponse + 70, // 158: cache_client.Scs.ListLength:output_type -> cache_client._ListLengthResponse + 48, // 159: cache_client.Scs.ListConcatenateFront:output_type -> cache_client._ListConcatenateFrontResponse + 50, // 160: cache_client.Scs.ListConcatenateBack:output_type -> cache_client._ListConcatenateBackResponse + 67, // 161: cache_client.Scs.ListRetain:output_type -> cache_client._ListRetainResponse + 73, // 162: cache_client.Scs.SortedSetPut:output_type -> cache_client._SortedSetPutResponse + 75, // 163: cache_client.Scs.SortedSetFetch:output_type -> cache_client._SortedSetFetchResponse + 77, // 164: cache_client.Scs.SortedSetGetScore:output_type -> cache_client._SortedSetGetScoreResponse + 79, // 165: cache_client.Scs.SortedSetRemove:output_type -> cache_client._SortedSetRemoveResponse + 81, // 166: cache_client.Scs.SortedSetIncrement:output_type -> cache_client._SortedSetIncrementResponse + 83, // 167: cache_client.Scs.SortedSetGetRank:output_type -> cache_client._SortedSetGetRankResponse + 85, // 168: cache_client.Scs.SortedSetLength:output_type -> cache_client._SortedSetLengthResponse + 87, // 169: cache_client.Scs.SortedSetLengthByScore:output_type -> cache_client._SortedSetLengthByScoreResponse + 130, // [130:170] is the sub-list for method output_type + 90, // [90:130] is the sub-list for method input_type + 90, // [90:90] is the sub-list for extension type_name + 90, // [90:90] is the sub-list for extension extendee + 0, // [0:90] is the sub-list for field type_name } func init() { file_cacheclient_proto_init() } @@ -10860,7 +11111,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListConcatenateFrontRequest); i { + switch v := v.(*XSetPopRequest); i { case 0: return &v.state case 1: @@ -10872,7 +11123,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListConcatenateFrontResponse); i { + switch v := v.(*XSetPopResponse); i { case 0: return &v.state case 1: @@ -10884,7 +11135,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListConcatenateBackRequest); i { + switch v := v.(*XListConcatenateFrontRequest); i { case 0: return &v.state case 1: @@ -10896,7 +11147,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListConcatenateBackResponse); i { + switch v := v.(*XListConcatenateFrontResponse); i { case 0: return &v.state case 1: @@ -10908,7 +11159,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListPushFrontRequest); i { + switch v := v.(*XListConcatenateBackRequest); i { case 0: return &v.state case 1: @@ -10920,7 +11171,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListPushFrontResponse); i { + switch v := v.(*XListConcatenateBackResponse); i { case 0: return &v.state case 1: @@ -10932,7 +11183,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListPushBackRequest); i { + switch v := v.(*XListPushFrontRequest); i { case 0: return &v.state case 1: @@ -10944,7 +11195,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListPushBackResponse); i { + switch v := v.(*XListPushFrontResponse); i { case 0: return &v.state case 1: @@ -10956,7 +11207,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListPopFrontRequest); i { + switch v := v.(*XListPushBackRequest); i { case 0: return &v.state case 1: @@ -10968,7 +11219,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListPopFrontResponse); i { + switch v := v.(*XListPushBackResponse); i { case 0: return &v.state case 1: @@ -10980,7 +11231,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListPopBackRequest); i { + switch v := v.(*XListPopFrontRequest); i { case 0: return &v.state case 1: @@ -10992,7 +11243,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListPopBackResponse); i { + switch v := v.(*XListPopFrontResponse); i { case 0: return &v.state case 1: @@ -11004,7 +11255,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListRange); i { + switch v := v.(*XListPopBackRequest); i { case 0: return &v.state case 1: @@ -11016,7 +11267,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListEraseRequest); i { + switch v := v.(*XListPopBackResponse); i { case 0: return &v.state case 1: @@ -11028,7 +11279,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListEraseResponse); i { + switch v := v.(*XListRange); i { case 0: return &v.state case 1: @@ -11040,7 +11291,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListRemoveRequest); i { + switch v := v.(*XListEraseRequest); i { case 0: return &v.state case 1: @@ -11052,7 +11303,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListRemoveResponse); i { + switch v := v.(*XListEraseResponse); i { case 0: return &v.state case 1: @@ -11064,7 +11315,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XUnbounded); i { + switch v := v.(*XListRemoveRequest); i { case 0: return &v.state case 1: @@ -11076,7 +11327,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListFetchRequest); i { + switch v := v.(*XListRemoveResponse); i { case 0: return &v.state case 1: @@ -11088,7 +11339,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListRetainRequest); i { + switch v := v.(*XUnbounded); i { case 0: return &v.state case 1: @@ -11100,7 +11351,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListRetainResponse); i { + switch v := v.(*XListFetchRequest); i { case 0: return &v.state case 1: @@ -11112,7 +11363,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListFetchResponse); i { + switch v := v.(*XListRetainRequest); i { case 0: return &v.state case 1: @@ -11124,7 +11375,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListLengthRequest); i { + switch v := v.(*XListRetainResponse); i { case 0: return &v.state case 1: @@ -11136,7 +11387,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListLengthResponse); i { + switch v := v.(*XListFetchResponse); i { case 0: return &v.state case 1: @@ -11148,7 +11399,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetElement); i { + switch v := v.(*XListLengthRequest); i { case 0: return &v.state case 1: @@ -11160,7 +11411,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetPutRequest); i { + switch v := v.(*XListLengthResponse); i { case 0: return &v.state case 1: @@ -11172,7 +11423,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetPutResponse); i { + switch v := v.(*XSortedSetElement); i { case 0: return &v.state case 1: @@ -11184,7 +11435,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetFetchRequest); i { + switch v := v.(*XSortedSetPutRequest); i { case 0: return &v.state case 1: @@ -11196,7 +11447,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetFetchResponse); i { + switch v := v.(*XSortedSetPutResponse); i { case 0: return &v.state case 1: @@ -11208,7 +11459,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetGetScoreRequest); i { + switch v := v.(*XSortedSetFetchRequest); i { case 0: return &v.state case 1: @@ -11220,7 +11471,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetGetScoreResponse); i { + switch v := v.(*XSortedSetFetchResponse); i { case 0: return &v.state case 1: @@ -11232,7 +11483,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetRemoveRequest); i { + switch v := v.(*XSortedSetGetScoreRequest); i { case 0: return &v.state case 1: @@ -11244,7 +11495,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetRemoveResponse); i { + switch v := v.(*XSortedSetGetScoreResponse); i { case 0: return &v.state case 1: @@ -11256,7 +11507,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetIncrementRequest); i { + switch v := v.(*XSortedSetRemoveRequest); i { case 0: return &v.state case 1: @@ -11268,7 +11519,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetIncrementResponse); i { + switch v := v.(*XSortedSetRemoveResponse); i { case 0: return &v.state case 1: @@ -11280,7 +11531,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetGetRankRequest); i { + switch v := v.(*XSortedSetIncrementRequest); i { case 0: return &v.state case 1: @@ -11292,7 +11543,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetGetRankResponse); i { + switch v := v.(*XSortedSetIncrementResponse); i { case 0: return &v.state case 1: @@ -11304,7 +11555,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetLengthRequest); i { + switch v := v.(*XSortedSetGetRankRequest); i { case 0: return &v.state case 1: @@ -11316,7 +11567,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetLengthResponse); i { + switch v := v.(*XSortedSetGetRankResponse); i { case 0: return &v.state case 1: @@ -11328,7 +11579,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetLengthByScoreRequest); i { + switch v := v.(*XSortedSetLengthRequest); i { case 0: return &v.state case 1: @@ -11340,7 +11591,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetLengthByScoreResponse); i { + switch v := v.(*XSortedSetLengthResponse); i { case 0: return &v.state case 1: @@ -11352,7 +11603,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSetIfNotExistsResponse_XStored); i { + switch v := v.(*XSortedSetLengthByScoreRequest); i { case 0: return &v.state case 1: @@ -11364,7 +11615,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSetIfNotExistsResponse_XNotStored); i { + switch v := v.(*XSortedSetLengthByScoreResponse); i { case 0: return &v.state case 1: @@ -11376,7 +11627,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XUpdateTtlResponse_XSet); i { + switch v := v.(*XSetIfNotExistsResponse_XStored); i { case 0: return &v.state case 1: @@ -11388,7 +11639,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XUpdateTtlResponse_XNotSet); i { + switch v := v.(*XSetIfNotExistsResponse_XNotStored); i { case 0: return &v.state case 1: @@ -11400,7 +11651,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XUpdateTtlResponse_XMissing); i { + switch v := v.(*XUpdateTtlResponse_XSet); i { case 0: return &v.state case 1: @@ -11412,7 +11663,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XItemGetTtlResponse_XFound); i { + switch v := v.(*XUpdateTtlResponse_XNotSet); i { case 0: return &v.state case 1: @@ -11424,7 +11675,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XItemGetTtlResponse_XMissing); i { + switch v := v.(*XUpdateTtlResponse_XMissing); i { case 0: return &v.state case 1: @@ -11436,7 +11687,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XItemGetTypeResponse_XFound); i { + switch v := v.(*XItemGetTtlResponse_XFound); i { case 0: return &v.state case 1: @@ -11448,7 +11699,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XItemGetTypeResponse_XMissing); i { + switch v := v.(*XItemGetTtlResponse_XMissing); i { case 0: return &v.state case 1: @@ -11460,7 +11711,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XDictionaryGetResponse_XDictionaryGetResponsePart); i { + switch v := v.(*XItemGetTypeResponse_XFound); i { case 0: return &v.state case 1: @@ -11472,7 +11723,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XDictionaryGetResponse_XFound); i { + switch v := v.(*XItemGetTypeResponse_XMissing); i { case 0: return &v.state case 1: @@ -11484,7 +11735,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XDictionaryGetResponse_XMissing); i { + switch v := v.(*XDictionaryGetResponse_XDictionaryGetResponsePart); i { case 0: return &v.state case 1: @@ -11496,7 +11747,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XDictionaryFetchResponse_XFound); i { + switch v := v.(*XDictionaryGetResponse_XFound); i { case 0: return &v.state case 1: @@ -11508,7 +11759,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XDictionaryFetchResponse_XMissing); i { + switch v := v.(*XDictionaryGetResponse_XMissing); i { case 0: return &v.state case 1: @@ -11520,7 +11771,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XDictionaryDeleteRequest_Some); i { + switch v := v.(*XDictionaryFetchResponse_XFound); i { case 0: return &v.state case 1: @@ -11532,7 +11783,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XDictionaryDeleteRequest_All); i { + switch v := v.(*XDictionaryFetchResponse_XMissing); i { case 0: return &v.state case 1: @@ -11544,7 +11795,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XDictionaryLengthResponse_XFound); i { + switch v := v.(*XDictionaryDeleteRequest_Some); i { case 0: return &v.state case 1: @@ -11556,7 +11807,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XDictionaryLengthResponse_XMissing); i { + switch v := v.(*XDictionaryDeleteRequest_All); i { case 0: return &v.state case 1: @@ -11568,7 +11819,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSetFetchResponse_XFound); i { + switch v := v.(*XDictionaryLengthResponse_XFound); i { case 0: return &v.state case 1: @@ -11580,7 +11831,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSetFetchResponse_XMissing); i { + switch v := v.(*XDictionaryLengthResponse_XMissing); i { case 0: return &v.state case 1: @@ -11592,7 +11843,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSetDifferenceRequest_XMinuend); i { + switch v := v.(*XSetFetchResponse_XFound); i { case 0: return &v.state case 1: @@ -11604,7 +11855,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSetDifferenceRequest_XSubtrahend); i { + switch v := v.(*XSetFetchResponse_XMissing); i { case 0: return &v.state case 1: @@ -11616,7 +11867,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSetDifferenceRequest_XSubtrahend_XSet); i { + switch v := v.(*XSetDifferenceRequest_XMinuend); i { case 0: return &v.state case 1: @@ -11628,7 +11879,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSetDifferenceRequest_XSubtrahend_XIdentity); i { + switch v := v.(*XSetDifferenceRequest_XSubtrahend); i { case 0: return &v.state case 1: @@ -11640,7 +11891,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSetDifferenceResponse_XFound); i { + switch v := v.(*XSetDifferenceRequest_XSubtrahend_XSet); i { case 0: return &v.state case 1: @@ -11652,7 +11903,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSetDifferenceResponse_XMissing); i { + switch v := v.(*XSetDifferenceRequest_XSubtrahend_XIdentity); i { case 0: return &v.state case 1: @@ -11664,7 +11915,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSetContainsResponse_XFound); i { + switch v := v.(*XSetDifferenceResponse_XFound); i { case 0: return &v.state case 1: @@ -11676,7 +11927,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSetContainsResponse_XMissing); i { + switch v := v.(*XSetDifferenceResponse_XMissing); i { case 0: return &v.state case 1: @@ -11688,7 +11939,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSetLengthResponse_XFound); i { + switch v := v.(*XSetContainsResponse_XFound); i { case 0: return &v.state case 1: @@ -11700,7 +11951,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSetLengthResponse_XMissing); i { + switch v := v.(*XSetContainsResponse_XMissing); i { case 0: return &v.state case 1: @@ -11712,7 +11963,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListPopFrontResponse_XFound); i { + switch v := v.(*XSetLengthResponse_XFound); i { case 0: return &v.state case 1: @@ -11724,7 +11975,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListPopFrontResponse_XMissing); i { + switch v := v.(*XSetLengthResponse_XMissing); i { case 0: return &v.state case 1: @@ -11736,7 +11987,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListPopBackResponse_XFound); i { + switch v := v.(*XSetPopResponse_XFound); i { case 0: return &v.state case 1: @@ -11748,7 +11999,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListPopBackResponse_XMissing); i { + switch v := v.(*XSetPopResponse_XMissing); i { case 0: return &v.state case 1: @@ -11760,7 +12011,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListEraseRequest_XAll); i { + switch v := v.(*XListPopFrontResponse_XFound); i { case 0: return &v.state case 1: @@ -11772,7 +12023,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListEraseRequest_XListRanges); i { + switch v := v.(*XListPopFrontResponse_XMissing); i { case 0: return &v.state case 1: @@ -11784,7 +12035,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListEraseResponse_XFound); i { + switch v := v.(*XListPopBackResponse_XFound); i { case 0: return &v.state case 1: @@ -11796,7 +12047,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListEraseResponse_XMissing); i { + switch v := v.(*XListPopBackResponse_XMissing); i { case 0: return &v.state case 1: @@ -11808,7 +12059,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListRemoveResponse_XFound); i { + switch v := v.(*XListEraseRequest_XAll); i { case 0: return &v.state case 1: @@ -11820,7 +12071,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListRemoveResponse_XMissing); i { + switch v := v.(*XListEraseRequest_XListRanges); i { case 0: return &v.state case 1: @@ -11832,7 +12083,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListRetainResponse_XFound); i { + switch v := v.(*XListEraseResponse_XFound); i { case 0: return &v.state case 1: @@ -11844,7 +12095,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListRetainResponse_XMissing); i { + switch v := v.(*XListEraseResponse_XMissing); i { case 0: return &v.state case 1: @@ -11856,7 +12107,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListFetchResponse_XFound); i { + switch v := v.(*XListRemoveResponse_XFound); i { case 0: return &v.state case 1: @@ -11868,7 +12119,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListFetchResponse_XMissing); i { + switch v := v.(*XListRemoveResponse_XMissing); i { case 0: return &v.state case 1: @@ -11880,7 +12131,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListLengthResponse_XFound); i { + switch v := v.(*XListRetainResponse_XFound); i { case 0: return &v.state case 1: @@ -11892,7 +12143,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListLengthResponse_XMissing); i { + switch v := v.(*XListRetainResponse_XMissing); i { case 0: return &v.state case 1: @@ -11904,7 +12155,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetFetchRequest_XByIndex); i { + switch v := v.(*XListFetchResponse_XFound); i { case 0: return &v.state case 1: @@ -11916,7 +12167,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetFetchRequest_XByScore); i { + switch v := v.(*XListFetchResponse_XMissing); i { case 0: return &v.state case 1: @@ -11928,7 +12179,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetFetchRequest_XByScore_XScore); i { + switch v := v.(*XListLengthResponse_XFound); i { case 0: return &v.state case 1: @@ -11940,7 +12191,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetFetchResponse_XFound); i { + switch v := v.(*XListLengthResponse_XMissing); i { case 0: return &v.state case 1: @@ -11952,7 +12203,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetFetchResponse_XMissing); i { + switch v := v.(*XSortedSetFetchRequest_XByIndex); i { case 0: return &v.state case 1: @@ -11964,7 +12215,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetFetchResponse_XFound_XValuesWithScores); i { + switch v := v.(*XSortedSetFetchRequest_XByScore); i { case 0: return &v.state case 1: @@ -11976,7 +12227,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetFetchResponse_XFound_XValues); i { + switch v := v.(*XSortedSetFetchRequest_XByScore_XScore); i { case 0: return &v.state case 1: @@ -11988,7 +12239,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart); i { + switch v := v.(*XSortedSetFetchResponse_XFound); i { case 0: return &v.state case 1: @@ -12000,7 +12251,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetGetScoreResponse_XSortedSetFound); i { + switch v := v.(*XSortedSetFetchResponse_XMissing); i { case 0: return &v.state case 1: @@ -12012,7 +12263,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetGetScoreResponse_XSortedSetMissing); i { + switch v := v.(*XSortedSetFetchResponse_XFound_XValuesWithScores); i { case 0: return &v.state case 1: @@ -12024,7 +12275,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetRemoveRequest_XAll); i { + switch v := v.(*XSortedSetFetchResponse_XFound_XValues); i { case 0: return &v.state case 1: @@ -12036,7 +12287,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetRemoveRequest_XSome); i { + switch v := v.(*XSortedSetGetScoreResponse_XSortedSetGetScoreResponsePart); i { case 0: return &v.state case 1: @@ -12048,7 +12299,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetGetRankResponse_XRankResponsePart); i { + switch v := v.(*XSortedSetGetScoreResponse_XSortedSetFound); i { case 0: return &v.state case 1: @@ -12060,7 +12311,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetGetRankResponse_XSortedSetMissing); i { + switch v := v.(*XSortedSetGetScoreResponse_XSortedSetMissing); i { case 0: return &v.state case 1: @@ -12072,7 +12323,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetLengthResponse_XFound); i { + switch v := v.(*XSortedSetRemoveRequest_XAll); i { case 0: return &v.state case 1: @@ -12084,7 +12335,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetLengthResponse_XMissing); i { + switch v := v.(*XSortedSetRemoveRequest_XSome); i { case 0: return &v.state case 1: @@ -12096,7 +12347,7 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSortedSetLengthByScoreResponse_XFound); i { + switch v := v.(*XSortedSetGetRankResponse_XRankResponsePart); i { case 0: return &v.state case 1: @@ -12108,6 +12359,54 @@ func file_cacheclient_proto_init() { } } file_cacheclient_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XSortedSetGetRankResponse_XSortedSetMissing); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cacheclient_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XSortedSetLengthResponse_XFound); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cacheclient_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XSortedSetLengthResponse_XMissing); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cacheclient_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XSortedSetLengthByScoreResponse_XFound); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cacheclient_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*XSortedSetLengthByScoreResponse_XMissing); i { case 0: return &v.state @@ -12178,78 +12477,82 @@ func file_cacheclient_proto_init() { (*XSetLengthResponse_Found)(nil), (*XSetLengthResponse_Missing)(nil), } - file_cacheclient_proto_msgTypes[50].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[42].OneofWrappers = []interface{}{ + (*XSetPopResponse_Found)(nil), + (*XSetPopResponse_Missing)(nil), + } + file_cacheclient_proto_msgTypes[52].OneofWrappers = []interface{}{ (*XListPopFrontResponse_Found)(nil), (*XListPopFrontResponse_Missing)(nil), } - file_cacheclient_proto_msgTypes[52].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[54].OneofWrappers = []interface{}{ (*XListPopBackResponse_Found)(nil), (*XListPopBackResponse_Missing)(nil), } - file_cacheclient_proto_msgTypes[54].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[56].OneofWrappers = []interface{}{ (*XListEraseRequest_Some)(nil), (*XListEraseRequest_All)(nil), } - file_cacheclient_proto_msgTypes[55].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[57].OneofWrappers = []interface{}{ (*XListEraseResponse_Found)(nil), (*XListEraseResponse_Missing)(nil), } - file_cacheclient_proto_msgTypes[56].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[58].OneofWrappers = []interface{}{ (*XListRemoveRequest_AllElementsWithValue)(nil), } - file_cacheclient_proto_msgTypes[57].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[59].OneofWrappers = []interface{}{ (*XListRemoveResponse_Found)(nil), (*XListRemoveResponse_Missing)(nil), } - file_cacheclient_proto_msgTypes[59].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[61].OneofWrappers = []interface{}{ (*XListFetchRequest_UnboundedStart)(nil), (*XListFetchRequest_InclusiveStart)(nil), (*XListFetchRequest_UnboundedEnd)(nil), (*XListFetchRequest_ExclusiveEnd)(nil), } - file_cacheclient_proto_msgTypes[60].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[62].OneofWrappers = []interface{}{ (*XListRetainRequest_UnboundedStart)(nil), (*XListRetainRequest_InclusiveStart)(nil), (*XListRetainRequest_UnboundedEnd)(nil), (*XListRetainRequest_ExclusiveEnd)(nil), } - file_cacheclient_proto_msgTypes[61].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[63].OneofWrappers = []interface{}{ (*XListRetainResponse_Found)(nil), (*XListRetainResponse_Missing)(nil), } - file_cacheclient_proto_msgTypes[62].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[64].OneofWrappers = []interface{}{ (*XListFetchResponse_Found)(nil), (*XListFetchResponse_Missing)(nil), } - file_cacheclient_proto_msgTypes[64].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[66].OneofWrappers = []interface{}{ (*XListLengthResponse_Found)(nil), (*XListLengthResponse_Missing)(nil), } - file_cacheclient_proto_msgTypes[68].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[70].OneofWrappers = []interface{}{ (*XSortedSetFetchRequest_ByIndex)(nil), (*XSortedSetFetchRequest_ByScore)(nil), } - file_cacheclient_proto_msgTypes[69].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[71].OneofWrappers = []interface{}{ (*XSortedSetFetchResponse_Found)(nil), (*XSortedSetFetchResponse_Missing)(nil), } - file_cacheclient_proto_msgTypes[71].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[73].OneofWrappers = []interface{}{ (*XSortedSetGetScoreResponse_Found)(nil), (*XSortedSetGetScoreResponse_Missing)(nil), } - file_cacheclient_proto_msgTypes[72].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[74].OneofWrappers = []interface{}{ (*XSortedSetRemoveRequest_All)(nil), (*XSortedSetRemoveRequest_Some)(nil), } - file_cacheclient_proto_msgTypes[77].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[79].OneofWrappers = []interface{}{ (*XSortedSetGetRankResponse_ElementRank)(nil), (*XSortedSetGetRankResponse_Missing)(nil), } - file_cacheclient_proto_msgTypes[79].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[81].OneofWrappers = []interface{}{ (*XSortedSetLengthResponse_Found)(nil), (*XSortedSetLengthResponse_Missing)(nil), } - file_cacheclient_proto_msgTypes[80].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[82].OneofWrappers = []interface{}{ (*XSortedSetLengthByScoreRequest_InclusiveMin)(nil), (*XSortedSetLengthByScoreRequest_ExclusiveMin)(nil), (*XSortedSetLengthByScoreRequest_UnboundedMin)(nil), @@ -12257,27 +12560,27 @@ func file_cacheclient_proto_init() { (*XSortedSetLengthByScoreRequest_ExclusiveMax)(nil), (*XSortedSetLengthByScoreRequest_UnboundedMax)(nil), } - file_cacheclient_proto_msgTypes[81].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[83].OneofWrappers = []interface{}{ (*XSortedSetLengthByScoreResponse_Found)(nil), (*XSortedSetLengthByScoreResponse_Missing)(nil), } - file_cacheclient_proto_msgTypes[103].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[105].OneofWrappers = []interface{}{ (*XSetDifferenceRequest_XSubtrahend_Set)(nil), (*XSetDifferenceRequest_XSubtrahend_Identity)(nil), } - file_cacheclient_proto_msgTypes[128].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[132].OneofWrappers = []interface{}{ (*XSortedSetFetchRequest_XByIndex_UnboundedStart)(nil), (*XSortedSetFetchRequest_XByIndex_InclusiveStartIndex)(nil), (*XSortedSetFetchRequest_XByIndex_UnboundedEnd)(nil), (*XSortedSetFetchRequest_XByIndex_ExclusiveEndIndex)(nil), } - file_cacheclient_proto_msgTypes[129].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[133].OneofWrappers = []interface{}{ (*XSortedSetFetchRequest_XByScore_UnboundedMin)(nil), (*XSortedSetFetchRequest_XByScore_MinScore)(nil), (*XSortedSetFetchRequest_XByScore_UnboundedMax)(nil), (*XSortedSetFetchRequest_XByScore_MaxScore)(nil), } - file_cacheclient_proto_msgTypes[131].OneofWrappers = []interface{}{ + file_cacheclient_proto_msgTypes[135].OneofWrappers = []interface{}{ (*XSortedSetFetchResponse_XFound_ValuesWithScores)(nil), (*XSortedSetFetchResponse_XFound_Values)(nil), } @@ -12287,7 +12590,7 @@ func file_cacheclient_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_cacheclient_proto_rawDesc, NumEnums: 4, - NumMessages: 146, + NumMessages: 150, NumExtensions: 0, NumServices: 1, }, diff --git a/internal/protos/cacheclient.proto b/internal/protos/cacheclient.proto index cef4d5ad..b8af5a86 100644 --- a/internal/protos/cacheclient.proto +++ b/internal/protos/cacheclient.proto @@ -39,6 +39,7 @@ service Scs { rpc SetDifference (_SetDifferenceRequest) returns (_SetDifferenceResponse) {} rpc SetContains (_SetContainsRequest) returns (_SetContainsResponse) {} rpc SetLength(_SetLengthRequest) returns (_SetLengthResponse) {} + rpc SetPop(_SetPopRequest) returns (_SetPopResponse) {} rpc ListPushFront(_ListPushFrontRequest) returns (_ListPushFrontResponse) {} rpc ListPushBack(_ListPushBackRequest) returns (_ListPushBackResponse) {} @@ -411,6 +412,24 @@ message _SetLengthResponse { } } +message _SetPopRequest { + bytes set_name = 1; + uint32 count = 2; +} + +message _SetPopResponse { + message _Found { + repeated bytes elements = 1; + } + + message _Missing {} + + oneof set { + _Found found = 1; + _Missing missing = 2; + } +} + message _ListConcatenateFrontRequest { bytes list_name = 1; repeated bytes values = 2; diff --git a/internal/protos/cacheclient_grpc.pb.go b/internal/protos/cacheclient_grpc.pb.go index 9a57dec9..1f32b95c 100644 --- a/internal/protos/cacheclient_grpc.pb.go +++ b/internal/protos/cacheclient_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.3.0 -// - protoc v4.23.3 +// - protoc v3.20.3 // source: cacheclient.proto package client_sdk_go @@ -40,6 +40,7 @@ const ( Scs_SetDifference_FullMethodName = "/cache_client.Scs/SetDifference" Scs_SetContains_FullMethodName = "/cache_client.Scs/SetContains" Scs_SetLength_FullMethodName = "/cache_client.Scs/SetLength" + Scs_SetPop_FullMethodName = "/cache_client.Scs/SetPop" Scs_ListPushFront_FullMethodName = "/cache_client.Scs/ListPushFront" Scs_ListPushBack_FullMethodName = "/cache_client.Scs/ListPushBack" Scs_ListPopFront_FullMethodName = "/cache_client.Scs/ListPopFront" @@ -85,6 +86,7 @@ type ScsClient interface { SetDifference(ctx context.Context, in *XSetDifferenceRequest, opts ...grpc.CallOption) (*XSetDifferenceResponse, error) SetContains(ctx context.Context, in *XSetContainsRequest, opts ...grpc.CallOption) (*XSetContainsResponse, error) SetLength(ctx context.Context, in *XSetLengthRequest, opts ...grpc.CallOption) (*XSetLengthResponse, error) + SetPop(ctx context.Context, in *XSetPopRequest, opts ...grpc.CallOption) (*XSetPopResponse, error) ListPushFront(ctx context.Context, in *XListPushFrontRequest, opts ...grpc.CallOption) (*XListPushFrontResponse, error) ListPushBack(ctx context.Context, in *XListPushBackRequest, opts ...grpc.CallOption) (*XListPushBackResponse, error) ListPopFront(ctx context.Context, in *XListPopFrontRequest, opts ...grpc.CallOption) (*XListPopFrontResponse, error) @@ -313,6 +315,15 @@ func (c *scsClient) SetLength(ctx context.Context, in *XSetLengthRequest, opts . return out, nil } +func (c *scsClient) SetPop(ctx context.Context, in *XSetPopRequest, opts ...grpc.CallOption) (*XSetPopResponse, error) { + out := new(XSetPopResponse) + err := c.cc.Invoke(ctx, Scs_SetPop_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *scsClient) ListPushFront(ctx context.Context, in *XListPushFrontRequest, opts ...grpc.CallOption) (*XListPushFrontResponse, error) { out := new(XListPushFrontResponse) err := c.cc.Invoke(ctx, Scs_ListPushFront_FullMethodName, in, out, opts...) @@ -508,6 +519,7 @@ type ScsServer interface { SetDifference(context.Context, *XSetDifferenceRequest) (*XSetDifferenceResponse, error) SetContains(context.Context, *XSetContainsRequest) (*XSetContainsResponse, error) SetLength(context.Context, *XSetLengthRequest) (*XSetLengthResponse, error) + SetPop(context.Context, *XSetPopRequest) (*XSetPopResponse, error) ListPushFront(context.Context, *XListPushFrontRequest) (*XListPushFrontResponse, error) ListPushBack(context.Context, *XListPushBackRequest) (*XListPushBackResponse, error) ListPopFront(context.Context, *XListPopFrontRequest) (*XListPopFrontResponse, error) @@ -613,6 +625,9 @@ func (UnimplementedScsServer) SetContains(context.Context, *XSetContainsRequest) func (UnimplementedScsServer) SetLength(context.Context, *XSetLengthRequest) (*XSetLengthResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method SetLength not implemented") } +func (UnimplementedScsServer) SetPop(context.Context, *XSetPopRequest) (*XSetPopResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SetPop not implemented") +} func (UnimplementedScsServer) ListPushFront(context.Context, *XListPushFrontRequest) (*XListPushFrontResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ListPushFront not implemented") } @@ -1043,6 +1058,24 @@ func _Scs_SetLength_Handler(srv interface{}, ctx context.Context, dec func(inter return interceptor(ctx, in, info, handler) } +func _Scs_SetPop_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(XSetPopRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ScsServer).SetPop(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Scs_SetPop_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ScsServer).SetPop(ctx, req.(*XSetPopRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _Scs_ListPushFront_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(XListPushFrontRequest) if err := dec(in); err != nil { @@ -1472,6 +1505,10 @@ var Scs_ServiceDesc = grpc.ServiceDesc{ MethodName: "SetLength", Handler: _Scs_SetLength_Handler, }, + { + MethodName: "SetPop", + Handler: _Scs_SetPop_Handler, + }, { MethodName: "ListPushFront", Handler: _Scs_ListPushFront_Handler, diff --git a/internal/protos/cacheping.pb.go b/internal/protos/cacheping.pb.go index 42d5c5a3..72e6634b 100644 --- a/internal/protos/cacheping.pb.go +++ b/internal/protos/cacheping.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.31.0 -// protoc v4.23.3 +// protoc v3.20.3 // source: cacheping.proto package client_sdk_go diff --git a/internal/protos/cacheping_grpc.pb.go b/internal/protos/cacheping_grpc.pb.go index 10ca9f21..94623154 100644 --- a/internal/protos/cacheping_grpc.pb.go +++ b/internal/protos/cacheping_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.3.0 -// - protoc v4.23.3 +// - protoc v3.20.3 // source: cacheping.proto package client_sdk_go diff --git a/internal/protos/cachepubsub.pb.go b/internal/protos/cachepubsub.pb.go index 3083f637..3d40c182 100644 --- a/internal/protos/cachepubsub.pb.go +++ b/internal/protos/cachepubsub.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.31.0 -// protoc v4.23.3 +// protoc v3.20.3 // source: cachepubsub.proto package client_sdk_go diff --git a/internal/protos/cachepubsub_grpc.pb.go b/internal/protos/cachepubsub_grpc.pb.go index 4107c7ce..3220536f 100644 --- a/internal/protos/cachepubsub_grpc.pb.go +++ b/internal/protos/cachepubsub_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.3.0 -// - protoc v4.23.3 +// - protoc v3.20.3 // source: cachepubsub.proto package client_sdk_go diff --git a/internal/protos/controlclient.pb.go b/internal/protos/controlclient.pb.go index e57961b7..70463111 100644 --- a/internal/protos/controlclient.pb.go +++ b/internal/protos/controlclient.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.31.0 -// protoc v4.23.3 +// protoc v3.20.3 // source: controlclient.proto package client_sdk_go @@ -21,6 +21,269 @@ const ( _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) +type XCreateIndexRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + IndexName string `protobuf:"bytes,1,opt,name=index_name,json=indexName,proto3" json:"index_name,omitempty"` + NumDimensions uint64 `protobuf:"varint,2,opt,name=num_dimensions,json=numDimensions,proto3" json:"num_dimensions,omitempty"` +} + +func (x *XCreateIndexRequest) Reset() { + *x = XCreateIndexRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_controlclient_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XCreateIndexRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XCreateIndexRequest) ProtoMessage() {} + +func (x *XCreateIndexRequest) ProtoReflect() protoreflect.Message { + mi := &file_controlclient_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XCreateIndexRequest.ProtoReflect.Descriptor instead. +func (*XCreateIndexRequest) Descriptor() ([]byte, []int) { + return file_controlclient_proto_rawDescGZIP(), []int{0} +} + +func (x *XCreateIndexRequest) GetIndexName() string { + if x != nil { + return x.IndexName + } + return "" +} + +func (x *XCreateIndexRequest) GetNumDimensions() uint64 { + if x != nil { + return x.NumDimensions + } + return 0 +} + +type XCreateIndexResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *XCreateIndexResponse) Reset() { + *x = XCreateIndexResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_controlclient_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XCreateIndexResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XCreateIndexResponse) ProtoMessage() {} + +func (x *XCreateIndexResponse) ProtoReflect() protoreflect.Message { + mi := &file_controlclient_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XCreateIndexResponse.ProtoReflect.Descriptor instead. +func (*XCreateIndexResponse) Descriptor() ([]byte, []int) { + return file_controlclient_proto_rawDescGZIP(), []int{1} +} + +type XDeleteIndexRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + IndexName string `protobuf:"bytes,1,opt,name=index_name,json=indexName,proto3" json:"index_name,omitempty"` +} + +func (x *XDeleteIndexRequest) Reset() { + *x = XDeleteIndexRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_controlclient_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XDeleteIndexRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XDeleteIndexRequest) ProtoMessage() {} + +func (x *XDeleteIndexRequest) ProtoReflect() protoreflect.Message { + mi := &file_controlclient_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XDeleteIndexRequest.ProtoReflect.Descriptor instead. +func (*XDeleteIndexRequest) Descriptor() ([]byte, []int) { + return file_controlclient_proto_rawDescGZIP(), []int{2} +} + +func (x *XDeleteIndexRequest) GetIndexName() string { + if x != nil { + return x.IndexName + } + return "" +} + +type XDeleteIndexResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *XDeleteIndexResponse) Reset() { + *x = XDeleteIndexResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_controlclient_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XDeleteIndexResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XDeleteIndexResponse) ProtoMessage() {} + +func (x *XDeleteIndexResponse) ProtoReflect() protoreflect.Message { + mi := &file_controlclient_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XDeleteIndexResponse.ProtoReflect.Descriptor instead. +func (*XDeleteIndexResponse) Descriptor() ([]byte, []int) { + return file_controlclient_proto_rawDescGZIP(), []int{3} +} + +type XListIndexesRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *XListIndexesRequest) Reset() { + *x = XListIndexesRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_controlclient_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XListIndexesRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XListIndexesRequest) ProtoMessage() {} + +func (x *XListIndexesRequest) ProtoReflect() protoreflect.Message { + mi := &file_controlclient_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XListIndexesRequest.ProtoReflect.Descriptor instead. +func (*XListIndexesRequest) Descriptor() ([]byte, []int) { + return file_controlclient_proto_rawDescGZIP(), []int{4} +} + +type XListIndexesResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + IndexNames []string `protobuf:"bytes,1,rep,name=index_names,json=indexNames,proto3" json:"index_names,omitempty"` +} + +func (x *XListIndexesResponse) Reset() { + *x = XListIndexesResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_controlclient_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XListIndexesResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XListIndexesResponse) ProtoMessage() {} + +func (x *XListIndexesResponse) ProtoReflect() protoreflect.Message { + mi := &file_controlclient_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XListIndexesResponse.ProtoReflect.Descriptor instead. +func (*XListIndexesResponse) Descriptor() ([]byte, []int) { + return file_controlclient_proto_rawDescGZIP(), []int{5} +} + +func (x *XListIndexesResponse) GetIndexNames() []string { + if x != nil { + return x.IndexNames + } + return nil +} + type XDeleteCacheRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -32,7 +295,7 @@ type XDeleteCacheRequest struct { func (x *XDeleteCacheRequest) Reset() { *x = XDeleteCacheRequest{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[0] + mi := &file_controlclient_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -45,7 +308,7 @@ func (x *XDeleteCacheRequest) String() string { func (*XDeleteCacheRequest) ProtoMessage() {} func (x *XDeleteCacheRequest) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[0] + mi := &file_controlclient_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -58,7 +321,7 @@ func (x *XDeleteCacheRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XDeleteCacheRequest.ProtoReflect.Descriptor instead. func (*XDeleteCacheRequest) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{0} + return file_controlclient_proto_rawDescGZIP(), []int{6} } func (x *XDeleteCacheRequest) GetCacheName() string { @@ -77,7 +340,7 @@ type XDeleteCacheResponse struct { func (x *XDeleteCacheResponse) Reset() { *x = XDeleteCacheResponse{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[1] + mi := &file_controlclient_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -90,7 +353,7 @@ func (x *XDeleteCacheResponse) String() string { func (*XDeleteCacheResponse) ProtoMessage() {} func (x *XDeleteCacheResponse) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[1] + mi := &file_controlclient_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -103,7 +366,7 @@ func (x *XDeleteCacheResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XDeleteCacheResponse.ProtoReflect.Descriptor instead. func (*XDeleteCacheResponse) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{1} + return file_controlclient_proto_rawDescGZIP(), []int{7} } type XCreateCacheRequest struct { @@ -117,7 +380,7 @@ type XCreateCacheRequest struct { func (x *XCreateCacheRequest) Reset() { *x = XCreateCacheRequest{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[2] + mi := &file_controlclient_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -130,7 +393,7 @@ func (x *XCreateCacheRequest) String() string { func (*XCreateCacheRequest) ProtoMessage() {} func (x *XCreateCacheRequest) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[2] + mi := &file_controlclient_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -143,7 +406,7 @@ func (x *XCreateCacheRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XCreateCacheRequest.ProtoReflect.Descriptor instead. func (*XCreateCacheRequest) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{2} + return file_controlclient_proto_rawDescGZIP(), []int{8} } func (x *XCreateCacheRequest) GetCacheName() string { @@ -162,7 +425,7 @@ type XCreateCacheResponse struct { func (x *XCreateCacheResponse) Reset() { *x = XCreateCacheResponse{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[3] + mi := &file_controlclient_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -175,7 +438,7 @@ func (x *XCreateCacheResponse) String() string { func (*XCreateCacheResponse) ProtoMessage() {} func (x *XCreateCacheResponse) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[3] + mi := &file_controlclient_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -188,7 +451,7 @@ func (x *XCreateCacheResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XCreateCacheResponse.ProtoReflect.Descriptor instead. func (*XCreateCacheResponse) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{3} + return file_controlclient_proto_rawDescGZIP(), []int{9} } type XListCachesRequest struct { @@ -202,7 +465,7 @@ type XListCachesRequest struct { func (x *XListCachesRequest) Reset() { *x = XListCachesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[4] + mi := &file_controlclient_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -215,7 +478,7 @@ func (x *XListCachesRequest) String() string { func (*XListCachesRequest) ProtoMessage() {} func (x *XListCachesRequest) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[4] + mi := &file_controlclient_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -228,7 +491,7 @@ func (x *XListCachesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XListCachesRequest.ProtoReflect.Descriptor instead. func (*XListCachesRequest) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{4} + return file_controlclient_proto_rawDescGZIP(), []int{10} } func (x *XListCachesRequest) GetNextToken() string { @@ -238,18 +501,161 @@ func (x *XListCachesRequest) GetNextToken() string { return "" } +type XCacheLimits struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // The amount of transactions per second that can be exercised + MaxTrafficRate uint32 `protobuf:"varint,1,opt,name=max_traffic_rate,json=maxTrafficRate,proto3" json:"max_traffic_rate,omitempty"` + // The amount of traffic per second that can be exercised in KiB + MaxThroughputKbps uint32 `protobuf:"varint,2,opt,name=max_throughput_kbps,json=maxThroughputKbps,proto3" json:"max_throughput_kbps,omitempty"` + // The maximum size of a single item in KiB + MaxItemSizeKb uint32 `protobuf:"varint,3,opt,name=max_item_size_kb,json=maxItemSizeKb,proto3" json:"max_item_size_kb,omitempty"` + // The maximum TTL allowed for a single item, in seconds + MaxTtlSeconds uint64 `protobuf:"varint,4,opt,name=max_ttl_seconds,json=maxTtlSeconds,proto3" json:"max_ttl_seconds,omitempty"` +} + +func (x *XCacheLimits) Reset() { + *x = XCacheLimits{} + if protoimpl.UnsafeEnabled { + mi := &file_controlclient_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XCacheLimits) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XCacheLimits) ProtoMessage() {} + +func (x *XCacheLimits) ProtoReflect() protoreflect.Message { + mi := &file_controlclient_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XCacheLimits.ProtoReflect.Descriptor instead. +func (*XCacheLimits) Descriptor() ([]byte, []int) { + return file_controlclient_proto_rawDescGZIP(), []int{11} +} + +func (x *XCacheLimits) GetMaxTrafficRate() uint32 { + if x != nil { + return x.MaxTrafficRate + } + return 0 +} + +func (x *XCacheLimits) GetMaxThroughputKbps() uint32 { + if x != nil { + return x.MaxThroughputKbps + } + return 0 +} + +func (x *XCacheLimits) GetMaxItemSizeKb() uint32 { + if x != nil { + return x.MaxItemSizeKb + } + return 0 +} + +func (x *XCacheLimits) GetMaxTtlSeconds() uint64 { + if x != nil { + return x.MaxTtlSeconds + } + return 0 +} + +type XTopicLimits struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // The amount of messages that can be published per second + MaxPublishRate uint32 `protobuf:"varint,1,opt,name=max_publish_rate,json=maxPublishRate,proto3" json:"max_publish_rate,omitempty"` + // The maximum amount of active subscriptions per cache + MaxSubscriptionCount uint32 `protobuf:"varint,2,opt,name=max_subscription_count,json=maxSubscriptionCount,proto3" json:"max_subscription_count,omitempty"` + // The maximum size of a single publish message, in KiB + MaxPublishMessageSizeKb uint32 `protobuf:"varint,3,opt,name=max_publish_message_size_kb,json=maxPublishMessageSizeKb,proto3" json:"max_publish_message_size_kb,omitempty"` +} + +func (x *XTopicLimits) Reset() { + *x = XTopicLimits{} + if protoimpl.UnsafeEnabled { + mi := &file_controlclient_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XTopicLimits) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XTopicLimits) ProtoMessage() {} + +func (x *XTopicLimits) ProtoReflect() protoreflect.Message { + mi := &file_controlclient_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XTopicLimits.ProtoReflect.Descriptor instead. +func (*XTopicLimits) Descriptor() ([]byte, []int) { + return file_controlclient_proto_rawDescGZIP(), []int{12} +} + +func (x *XTopicLimits) GetMaxPublishRate() uint32 { + if x != nil { + return x.MaxPublishRate + } + return 0 +} + +func (x *XTopicLimits) GetMaxSubscriptionCount() uint32 { + if x != nil { + return x.MaxSubscriptionCount + } + return 0 +} + +func (x *XTopicLimits) GetMaxPublishMessageSizeKb() uint32 { + if x != nil { + return x.MaxPublishMessageSizeKb + } + return 0 +} + type XCache struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - CacheName string `protobuf:"bytes,1,opt,name=cache_name,json=cacheName,proto3" json:"cache_name,omitempty"` + CacheName string `protobuf:"bytes,1,opt,name=cache_name,json=cacheName,proto3" json:"cache_name,omitempty"` + CacheLimits *XCacheLimits `protobuf:"bytes,2,opt,name=cache_limits,json=cacheLimits,proto3" json:"cache_limits,omitempty"` + TopicLimits *XTopicLimits `protobuf:"bytes,3,opt,name=topic_limits,json=topicLimits,proto3" json:"topic_limits,omitempty"` } func (x *XCache) Reset() { *x = XCache{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[5] + mi := &file_controlclient_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -262,7 +668,7 @@ func (x *XCache) String() string { func (*XCache) ProtoMessage() {} func (x *XCache) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[5] + mi := &file_controlclient_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -275,7 +681,7 @@ func (x *XCache) ProtoReflect() protoreflect.Message { // Deprecated: Use XCache.ProtoReflect.Descriptor instead. func (*XCache) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{5} + return file_controlclient_proto_rawDescGZIP(), []int{13} } func (x *XCache) GetCacheName() string { @@ -285,6 +691,20 @@ func (x *XCache) GetCacheName() string { return "" } +func (x *XCache) GetCacheLimits() *XCacheLimits { + if x != nil { + return x.CacheLimits + } + return nil +} + +func (x *XCache) GetTopicLimits() *XTopicLimits { + if x != nil { + return x.TopicLimits + } + return nil +} + type XListCachesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -297,7 +717,7 @@ type XListCachesResponse struct { func (x *XListCachesResponse) Reset() { *x = XListCachesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[6] + mi := &file_controlclient_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -310,7 +730,7 @@ func (x *XListCachesResponse) String() string { func (*XListCachesResponse) ProtoMessage() {} func (x *XListCachesResponse) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[6] + mi := &file_controlclient_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -323,7 +743,7 @@ func (x *XListCachesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XListCachesResponse.ProtoReflect.Descriptor instead. func (*XListCachesResponse) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{6} + return file_controlclient_proto_rawDescGZIP(), []int{14} } func (x *XListCachesResponse) GetCache() []*XCache { @@ -351,7 +771,7 @@ type XCreateSigningKeyRequest struct { func (x *XCreateSigningKeyRequest) Reset() { *x = XCreateSigningKeyRequest{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[7] + mi := &file_controlclient_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -364,7 +784,7 @@ func (x *XCreateSigningKeyRequest) String() string { func (*XCreateSigningKeyRequest) ProtoMessage() {} func (x *XCreateSigningKeyRequest) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[7] + mi := &file_controlclient_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -377,7 +797,7 @@ func (x *XCreateSigningKeyRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XCreateSigningKeyRequest.ProtoReflect.Descriptor instead. func (*XCreateSigningKeyRequest) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{7} + return file_controlclient_proto_rawDescGZIP(), []int{15} } func (x *XCreateSigningKeyRequest) GetTtlMinutes() uint32 { @@ -399,7 +819,7 @@ type XCreateSigningKeyResponse struct { func (x *XCreateSigningKeyResponse) Reset() { *x = XCreateSigningKeyResponse{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[8] + mi := &file_controlclient_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -412,7 +832,7 @@ func (x *XCreateSigningKeyResponse) String() string { func (*XCreateSigningKeyResponse) ProtoMessage() {} func (x *XCreateSigningKeyResponse) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[8] + mi := &file_controlclient_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -425,7 +845,7 @@ func (x *XCreateSigningKeyResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XCreateSigningKeyResponse.ProtoReflect.Descriptor instead. func (*XCreateSigningKeyResponse) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{8} + return file_controlclient_proto_rawDescGZIP(), []int{16} } func (x *XCreateSigningKeyResponse) GetKey() string { @@ -453,7 +873,7 @@ type XRevokeSigningKeyRequest struct { func (x *XRevokeSigningKeyRequest) Reset() { *x = XRevokeSigningKeyRequest{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[9] + mi := &file_controlclient_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -466,7 +886,7 @@ func (x *XRevokeSigningKeyRequest) String() string { func (*XRevokeSigningKeyRequest) ProtoMessage() {} func (x *XRevokeSigningKeyRequest) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[9] + mi := &file_controlclient_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -479,7 +899,7 @@ func (x *XRevokeSigningKeyRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XRevokeSigningKeyRequest.ProtoReflect.Descriptor instead. func (*XRevokeSigningKeyRequest) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{9} + return file_controlclient_proto_rawDescGZIP(), []int{17} } func (x *XRevokeSigningKeyRequest) GetKeyId() string { @@ -498,7 +918,7 @@ type XRevokeSigningKeyResponse struct { func (x *XRevokeSigningKeyResponse) Reset() { *x = XRevokeSigningKeyResponse{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[10] + mi := &file_controlclient_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -511,7 +931,7 @@ func (x *XRevokeSigningKeyResponse) String() string { func (*XRevokeSigningKeyResponse) ProtoMessage() {} func (x *XRevokeSigningKeyResponse) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[10] + mi := &file_controlclient_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -524,7 +944,7 @@ func (x *XRevokeSigningKeyResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XRevokeSigningKeyResponse.ProtoReflect.Descriptor instead. func (*XRevokeSigningKeyResponse) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{10} + return file_controlclient_proto_rawDescGZIP(), []int{18} } type XSigningKey struct { @@ -541,7 +961,7 @@ type XSigningKey struct { func (x *XSigningKey) Reset() { *x = XSigningKey{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[11] + mi := &file_controlclient_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -554,7 +974,7 @@ func (x *XSigningKey) String() string { func (*XSigningKey) ProtoMessage() {} func (x *XSigningKey) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[11] + mi := &file_controlclient_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -567,7 +987,7 @@ func (x *XSigningKey) ProtoReflect() protoreflect.Message { // Deprecated: Use XSigningKey.ProtoReflect.Descriptor instead. func (*XSigningKey) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{11} + return file_controlclient_proto_rawDescGZIP(), []int{19} } func (x *XSigningKey) GetKeyId() string { @@ -595,7 +1015,7 @@ type XListSigningKeysRequest struct { func (x *XListSigningKeysRequest) Reset() { *x = XListSigningKeysRequest{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[12] + mi := &file_controlclient_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -608,7 +1028,7 @@ func (x *XListSigningKeysRequest) String() string { func (*XListSigningKeysRequest) ProtoMessage() {} func (x *XListSigningKeysRequest) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[12] + mi := &file_controlclient_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -621,7 +1041,7 @@ func (x *XListSigningKeysRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XListSigningKeysRequest.ProtoReflect.Descriptor instead. func (*XListSigningKeysRequest) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{12} + return file_controlclient_proto_rawDescGZIP(), []int{20} } func (x *XListSigningKeysRequest) GetNextToken() string { @@ -643,7 +1063,7 @@ type XListSigningKeysResponse struct { func (x *XListSigningKeysResponse) Reset() { *x = XListSigningKeysResponse{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[13] + mi := &file_controlclient_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -656,7 +1076,7 @@ func (x *XListSigningKeysResponse) String() string { func (*XListSigningKeysResponse) ProtoMessage() {} func (x *XListSigningKeysResponse) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[13] + mi := &file_controlclient_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -669,7 +1089,7 @@ func (x *XListSigningKeysResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XListSigningKeysResponse.ProtoReflect.Descriptor instead. func (*XListSigningKeysResponse) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{13} + return file_controlclient_proto_rawDescGZIP(), []int{21} } func (x *XListSigningKeysResponse) GetSigningKey() []*XSigningKey { @@ -697,7 +1117,7 @@ type XFlushCacheRequest struct { func (x *XFlushCacheRequest) Reset() { *x = XFlushCacheRequest{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[14] + mi := &file_controlclient_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -710,7 +1130,7 @@ func (x *XFlushCacheRequest) String() string { func (*XFlushCacheRequest) ProtoMessage() {} func (x *XFlushCacheRequest) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[14] + mi := &file_controlclient_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -723,7 +1143,7 @@ func (x *XFlushCacheRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use XFlushCacheRequest.ProtoReflect.Descriptor instead. func (*XFlushCacheRequest) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{14} + return file_controlclient_proto_rawDescGZIP(), []int{22} } func (x *XFlushCacheRequest) GetCacheName() string { @@ -742,7 +1162,7 @@ type XFlushCacheResponse struct { func (x *XFlushCacheResponse) Reset() { *x = XFlushCacheResponse{} if protoimpl.UnsafeEnabled { - mi := &file_controlclient_proto_msgTypes[15] + mi := &file_controlclient_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -755,7 +1175,7 @@ func (x *XFlushCacheResponse) String() string { func (*XFlushCacheResponse) ProtoMessage() {} func (x *XFlushCacheResponse) ProtoReflect() protoreflect.Message { - mi := &file_controlclient_proto_msgTypes[15] + mi := &file_controlclient_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -768,7 +1188,7 @@ func (x *XFlushCacheResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use XFlushCacheResponse.ProtoReflect.Descriptor instead. func (*XFlushCacheResponse) Descriptor() ([]byte, []int) { - return file_controlclient_proto_rawDescGZIP(), []int{15} + return file_controlclient_proto_rawDescGZIP(), []int{23} } var File_controlclient_proto protoreflect.FileDescriptor @@ -776,113 +1196,178 @@ var File_controlclient_proto protoreflect.FileDescriptor var file_controlclient_proto_rawDesc = []byte{ 0x0a, 0x13, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x22, 0x34, 0x0a, 0x13, 0x5f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, - 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x63, 0x61, 0x63, 0x68, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x5f, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x34, 0x0a, 0x13, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x61, - 0x63, 0x68, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x63, 0x61, 0x63, 0x68, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x5f, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x33, 0x0a, 0x12, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x5f, - 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x78, - 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x27, 0x0a, 0x06, 0x5f, 0x43, 0x61, 0x63, 0x68, 0x65, - 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x61, 0x63, 0x68, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, - 0x62, 0x0a, 0x13, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x05, 0x63, 0x61, 0x63, 0x68, 0x65, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x05, 0x63, - 0x61, 0x63, 0x68, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x74, 0x6f, 0x6b, - 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x78, 0x74, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x22, 0x3b, 0x0a, 0x18, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x69, - 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1f, 0x0a, 0x0b, 0x74, 0x74, 0x6c, 0x5f, 0x6d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x74, 0x6c, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, - 0x22, 0x4c, 0x0a, 0x19, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x69, - 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, 0x0a, - 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, - 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x22, 0x31, - 0x0a, 0x18, 0x5f, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, - 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x6b, 0x65, - 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6b, 0x65, 0x79, 0x49, - 0x64, 0x22, 0x1b, 0x0a, 0x19, 0x5f, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x53, 0x69, 0x67, 0x6e, - 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x43, - 0x0a, 0x0b, 0x5f, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x12, 0x15, 0x0a, - 0x06, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6b, - 0x65, 0x79, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, - 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, - 0x73, 0x41, 0x74, 0x22, 0x38, 0x0a, 0x17, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x69, 0x67, 0x6e, - 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, - 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x78, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x77, 0x0a, - 0x18, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x0b, 0x73, 0x69, 0x67, - 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, - 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, - 0x5f, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x52, 0x0a, 0x73, 0x69, 0x67, - 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x5f, - 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x78, - 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x33, 0x0a, 0x12, 0x5f, 0x46, 0x6c, 0x75, 0x73, 0x68, - 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, - 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x63, 0x61, 0x63, 0x68, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x15, 0x0a, 0x13, 0x5f, - 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x32, 0xb4, 0x05, 0x0a, 0x0a, 0x53, 0x63, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, - 0x6c, 0x12, 0x5a, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, - 0x12, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5a, 0x0a, - 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x23, 0x2e, 0x63, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x24, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x0a, 0x4c, 0x69, 0x73, - 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x12, 0x22, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, - 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, - 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x00, 0x12, 0x57, 0x0a, 0x0a, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x61, 0x63, 0x68, 0x65, - 0x12, 0x22, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x2e, 0x5f, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x61, 0x63, 0x68, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x69, 0x0a, 0x10, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x12, - 0x28, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x2e, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, - 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x6f, 0x6e, 0x74, - 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x69, 0x0a, 0x10, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, - 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x12, 0x28, 0x2e, 0x63, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x52, 0x65, 0x76, - 0x6f, 0x6b, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x53, 0x69, 0x67, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x22, 0x5b, 0x0a, 0x13, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6e, + 0x75, 0x6d, 0x5f, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6e, 0x75, 0x6d, 0x44, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x73, 0x22, 0x16, 0x0a, 0x14, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x64, + 0x65, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x34, 0x0a, 0x13, 0x5f, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4e, 0x61, 0x6d, 0x65, + 0x22, 0x16, 0x0a, 0x14, 0x5f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x15, 0x0a, 0x13, 0x5f, 0x4c, 0x69, 0x73, + 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, + 0x37, 0x0a, 0x14, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x34, 0x0a, 0x13, 0x5f, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x61, 0x63, 0x68, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x16, + 0x0a, 0x14, 0x5f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x34, 0x0a, 0x13, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x63, 0x61, 0x63, 0x68, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x16, 0x0a, 0x14, + 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x33, 0x0a, 0x12, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, + 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, + 0x78, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x6e, 0x65, 0x78, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xb9, 0x01, 0x0a, 0x0c, 0x5f, 0x43, + 0x61, 0x63, 0x68, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, + 0x78, 0x5f, 0x74, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, + 0x52, 0x61, 0x74, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x68, 0x72, 0x6f, + 0x75, 0x67, 0x68, 0x70, 0x75, 0x74, 0x5f, 0x6b, 0x62, 0x70, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x11, 0x6d, 0x61, 0x78, 0x54, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x70, 0x75, 0x74, + 0x4b, 0x62, 0x70, 0x73, 0x12, 0x27, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x74, 0x65, 0x6d, + 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6b, 0x62, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, + 0x6d, 0x61, 0x78, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x69, 0x7a, 0x65, 0x4b, 0x62, 0x12, 0x26, 0x0a, + 0x0f, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x74, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x54, 0x74, 0x6c, 0x53, 0x65, + 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0xac, 0x01, 0x0a, 0x0c, 0x5f, 0x54, 0x6f, 0x70, 0x69, 0x63, + 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x61, 0x74, 0x65, + 0x12, 0x34, 0x0a, 0x16, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x14, 0x6d, 0x61, 0x78, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x1b, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, + 0x7a, 0x65, 0x5f, 0x6b, 0x62, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x6d, 0x61, 0x78, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x4b, 0x62, 0x22, 0xa9, 0x01, 0x0a, 0x06, 0x5f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, + 0x1d, 0x0a, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x61, 0x63, 0x68, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3f, + 0x0a, 0x0c, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x4c, 0x69, 0x6d, 0x69, + 0x74, 0x73, 0x52, 0x0b, 0x63, 0x61, 0x63, 0x68, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x12, + 0x3f, 0x0a, 0x0c, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x4c, 0x69, 0x6d, + 0x69, 0x74, 0x73, 0x52, 0x0b, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, + 0x22, 0x62, 0x0a, 0x13, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x05, 0x63, 0x61, 0x63, 0x68, 0x65, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x05, + 0x63, 0x61, 0x63, 0x68, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x78, 0x74, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3b, 0x0a, 0x18, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, + 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x74, 0x6c, 0x5f, 0x6d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x74, 0x6c, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, + 0x73, 0x22, 0x4c, 0x0a, 0x19, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, + 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, + 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, + 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x22, + 0x31, 0x0a, 0x18, 0x5f, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, + 0x67, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x6b, + 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6b, 0x65, 0x79, + 0x49, 0x64, 0x22, 0x1b, 0x0a, 0x19, 0x5f, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x00, 0x12, 0x66, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, - 0x4b, 0x65, 0x79, 0x73, 0x12, 0x27, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x69, - 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, + 0x43, 0x0a, 0x0b, 0x5f, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x12, 0x15, + 0x0a, 0x06, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x6b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, + 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, + 0x65, 0x73, 0x41, 0x74, 0x22, 0x38, 0x0a, 0x17, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x69, 0x67, + 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x78, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x77, + 0x0a, 0x18, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, + 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x0b, 0x73, 0x69, + 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1b, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x2e, 0x5f, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x52, 0x0a, 0x73, 0x69, + 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, + 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, + 0x78, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x33, 0x0a, 0x12, 0x5f, 0x46, 0x6c, 0x75, 0x73, + 0x68, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x63, 0x61, 0x63, 0x68, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x15, 0x0a, 0x13, + 0x5f, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x32, 0xc8, 0x07, 0x0a, 0x0a, 0x53, 0x63, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x12, 0x5a, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x12, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x2e, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, + 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5a, + 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, - 0x4c, 0x69, 0x73, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x68, 0x0a, 0x13, 0x67, 0x72, 0x70, - 0x63, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x50, 0x01, 0x5a, 0x30, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, - 0x6f, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x68, 0x71, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, - 0x73, 0x64, 0x6b, 0x2d, 0x67, 0x6f, 0x3b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x64, - 0x6b, 0x5f, 0x67, 0x6f, 0xaa, 0x02, 0x1c, 0x4d, 0x6f, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x2e, 0x50, - 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x0a, 0x4c, 0x69, + 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x12, 0x22, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x43, + 0x61, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, + 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x0a, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x12, 0x22, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x2e, 0x5f, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x61, 0x63, + 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x69, 0x0a, 0x10, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, + 0x12, 0x28, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x2e, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, + 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x69, 0x0a, 0x10, 0x52, 0x65, 0x76, 0x6f, 0x6b, + 0x65, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x12, 0x28, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x52, 0x65, + 0x76, 0x6f, 0x6b, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x53, 0x69, + 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x66, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, + 0x67, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x27, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x69, 0x67, 0x6e, + 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, + 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x0b, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, + 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, + 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, + 0x73, 0x12, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x64, + 0x65, 0x78, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x68, + 0x0a, 0x13, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x01, 0x5a, 0x30, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x6f, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x68, 0x71, 0x2f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x2d, 0x73, 0x64, 0x6b, 0x2d, 0x67, 0x6f, 0x3b, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x5f, 0x73, 0x64, 0x6b, 0x5f, 0x67, 0x6f, 0xaa, 0x02, 0x1c, 0x4d, 0x6f, 0x6d, 0x65, + 0x6e, 0x74, 0x6f, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -897,47 +1382,63 @@ func file_controlclient_proto_rawDescGZIP() []byte { return file_controlclient_proto_rawDescData } -var file_controlclient_proto_msgTypes = make([]protoimpl.MessageInfo, 16) +var file_controlclient_proto_msgTypes = make([]protoimpl.MessageInfo, 24) var file_controlclient_proto_goTypes = []interface{}{ - (*XDeleteCacheRequest)(nil), // 0: control_client._DeleteCacheRequest - (*XDeleteCacheResponse)(nil), // 1: control_client._DeleteCacheResponse - (*XCreateCacheRequest)(nil), // 2: control_client._CreateCacheRequest - (*XCreateCacheResponse)(nil), // 3: control_client._CreateCacheResponse - (*XListCachesRequest)(nil), // 4: control_client._ListCachesRequest - (*XCache)(nil), // 5: control_client._Cache - (*XListCachesResponse)(nil), // 6: control_client._ListCachesResponse - (*XCreateSigningKeyRequest)(nil), // 7: control_client._CreateSigningKeyRequest - (*XCreateSigningKeyResponse)(nil), // 8: control_client._CreateSigningKeyResponse - (*XRevokeSigningKeyRequest)(nil), // 9: control_client._RevokeSigningKeyRequest - (*XRevokeSigningKeyResponse)(nil), // 10: control_client._RevokeSigningKeyResponse - (*XSigningKey)(nil), // 11: control_client._SigningKey - (*XListSigningKeysRequest)(nil), // 12: control_client._ListSigningKeysRequest - (*XListSigningKeysResponse)(nil), // 13: control_client._ListSigningKeysResponse - (*XFlushCacheRequest)(nil), // 14: control_client._FlushCacheRequest - (*XFlushCacheResponse)(nil), // 15: control_client._FlushCacheResponse + (*XCreateIndexRequest)(nil), // 0: control_client._CreateIndexRequest + (*XCreateIndexResponse)(nil), // 1: control_client._CreateIndexResponse + (*XDeleteIndexRequest)(nil), // 2: control_client._DeleteIndexRequest + (*XDeleteIndexResponse)(nil), // 3: control_client._DeleteIndexResponse + (*XListIndexesRequest)(nil), // 4: control_client._ListIndexesRequest + (*XListIndexesResponse)(nil), // 5: control_client._ListIndexesResponse + (*XDeleteCacheRequest)(nil), // 6: control_client._DeleteCacheRequest + (*XDeleteCacheResponse)(nil), // 7: control_client._DeleteCacheResponse + (*XCreateCacheRequest)(nil), // 8: control_client._CreateCacheRequest + (*XCreateCacheResponse)(nil), // 9: control_client._CreateCacheResponse + (*XListCachesRequest)(nil), // 10: control_client._ListCachesRequest + (*XCacheLimits)(nil), // 11: control_client._CacheLimits + (*XTopicLimits)(nil), // 12: control_client._TopicLimits + (*XCache)(nil), // 13: control_client._Cache + (*XListCachesResponse)(nil), // 14: control_client._ListCachesResponse + (*XCreateSigningKeyRequest)(nil), // 15: control_client._CreateSigningKeyRequest + (*XCreateSigningKeyResponse)(nil), // 16: control_client._CreateSigningKeyResponse + (*XRevokeSigningKeyRequest)(nil), // 17: control_client._RevokeSigningKeyRequest + (*XRevokeSigningKeyResponse)(nil), // 18: control_client._RevokeSigningKeyResponse + (*XSigningKey)(nil), // 19: control_client._SigningKey + (*XListSigningKeysRequest)(nil), // 20: control_client._ListSigningKeysRequest + (*XListSigningKeysResponse)(nil), // 21: control_client._ListSigningKeysResponse + (*XFlushCacheRequest)(nil), // 22: control_client._FlushCacheRequest + (*XFlushCacheResponse)(nil), // 23: control_client._FlushCacheResponse } var file_controlclient_proto_depIdxs = []int32{ - 5, // 0: control_client._ListCachesResponse.cache:type_name -> control_client._Cache - 11, // 1: control_client._ListSigningKeysResponse.signing_key:type_name -> control_client._SigningKey - 2, // 2: control_client.ScsControl.CreateCache:input_type -> control_client._CreateCacheRequest - 0, // 3: control_client.ScsControl.DeleteCache:input_type -> control_client._DeleteCacheRequest - 4, // 4: control_client.ScsControl.ListCaches:input_type -> control_client._ListCachesRequest - 14, // 5: control_client.ScsControl.FlushCache:input_type -> control_client._FlushCacheRequest - 7, // 6: control_client.ScsControl.CreateSigningKey:input_type -> control_client._CreateSigningKeyRequest - 9, // 7: control_client.ScsControl.RevokeSigningKey:input_type -> control_client._RevokeSigningKeyRequest - 12, // 8: control_client.ScsControl.ListSigningKeys:input_type -> control_client._ListSigningKeysRequest - 3, // 9: control_client.ScsControl.CreateCache:output_type -> control_client._CreateCacheResponse - 1, // 10: control_client.ScsControl.DeleteCache:output_type -> control_client._DeleteCacheResponse - 6, // 11: control_client.ScsControl.ListCaches:output_type -> control_client._ListCachesResponse - 15, // 12: control_client.ScsControl.FlushCache:output_type -> control_client._FlushCacheResponse - 8, // 13: control_client.ScsControl.CreateSigningKey:output_type -> control_client._CreateSigningKeyResponse - 10, // 14: control_client.ScsControl.RevokeSigningKey:output_type -> control_client._RevokeSigningKeyResponse - 13, // 15: control_client.ScsControl.ListSigningKeys:output_type -> control_client._ListSigningKeysResponse - 9, // [9:16] is the sub-list for method output_type - 2, // [2:9] is the sub-list for method input_type - 2, // [2:2] is the sub-list for extension type_name - 2, // [2:2] is the sub-list for extension extendee - 0, // [0:2] is the sub-list for field type_name + 11, // 0: control_client._Cache.cache_limits:type_name -> control_client._CacheLimits + 12, // 1: control_client._Cache.topic_limits:type_name -> control_client._TopicLimits + 13, // 2: control_client._ListCachesResponse.cache:type_name -> control_client._Cache + 19, // 3: control_client._ListSigningKeysResponse.signing_key:type_name -> control_client._SigningKey + 8, // 4: control_client.ScsControl.CreateCache:input_type -> control_client._CreateCacheRequest + 6, // 5: control_client.ScsControl.DeleteCache:input_type -> control_client._DeleteCacheRequest + 10, // 6: control_client.ScsControl.ListCaches:input_type -> control_client._ListCachesRequest + 22, // 7: control_client.ScsControl.FlushCache:input_type -> control_client._FlushCacheRequest + 15, // 8: control_client.ScsControl.CreateSigningKey:input_type -> control_client._CreateSigningKeyRequest + 17, // 9: control_client.ScsControl.RevokeSigningKey:input_type -> control_client._RevokeSigningKeyRequest + 20, // 10: control_client.ScsControl.ListSigningKeys:input_type -> control_client._ListSigningKeysRequest + 0, // 11: control_client.ScsControl.CreateIndex:input_type -> control_client._CreateIndexRequest + 2, // 12: control_client.ScsControl.DeleteIndex:input_type -> control_client._DeleteIndexRequest + 4, // 13: control_client.ScsControl.ListIndexes:input_type -> control_client._ListIndexesRequest + 9, // 14: control_client.ScsControl.CreateCache:output_type -> control_client._CreateCacheResponse + 7, // 15: control_client.ScsControl.DeleteCache:output_type -> control_client._DeleteCacheResponse + 14, // 16: control_client.ScsControl.ListCaches:output_type -> control_client._ListCachesResponse + 23, // 17: control_client.ScsControl.FlushCache:output_type -> control_client._FlushCacheResponse + 16, // 18: control_client.ScsControl.CreateSigningKey:output_type -> control_client._CreateSigningKeyResponse + 18, // 19: control_client.ScsControl.RevokeSigningKey:output_type -> control_client._RevokeSigningKeyResponse + 21, // 20: control_client.ScsControl.ListSigningKeys:output_type -> control_client._ListSigningKeysResponse + 1, // 21: control_client.ScsControl.CreateIndex:output_type -> control_client._CreateIndexResponse + 3, // 22: control_client.ScsControl.DeleteIndex:output_type -> control_client._DeleteIndexResponse + 5, // 23: control_client.ScsControl.ListIndexes:output_type -> control_client._ListIndexesResponse + 14, // [14:24] is the sub-list for method output_type + 4, // [4:14] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name } func init() { file_controlclient_proto_init() } @@ -947,7 +1448,7 @@ func file_controlclient_proto_init() { } if !protoimpl.UnsafeEnabled { file_controlclient_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XDeleteCacheRequest); i { + switch v := v.(*XCreateIndexRequest); i { case 0: return &v.state case 1: @@ -959,7 +1460,7 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XDeleteCacheResponse); i { + switch v := v.(*XCreateIndexResponse); i { case 0: return &v.state case 1: @@ -971,7 +1472,7 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XCreateCacheRequest); i { + switch v := v.(*XDeleteIndexRequest); i { case 0: return &v.state case 1: @@ -983,7 +1484,7 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XCreateCacheResponse); i { + switch v := v.(*XDeleteIndexResponse); i { case 0: return &v.state case 1: @@ -995,7 +1496,7 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListCachesRequest); i { + switch v := v.(*XListIndexesRequest); i { case 0: return &v.state case 1: @@ -1007,7 +1508,7 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XCache); i { + switch v := v.(*XListIndexesResponse); i { case 0: return &v.state case 1: @@ -1019,7 +1520,7 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListCachesResponse); i { + switch v := v.(*XDeleteCacheRequest); i { case 0: return &v.state case 1: @@ -1031,7 +1532,7 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XCreateSigningKeyRequest); i { + switch v := v.(*XDeleteCacheResponse); i { case 0: return &v.state case 1: @@ -1043,7 +1544,7 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XCreateSigningKeyResponse); i { + switch v := v.(*XCreateCacheRequest); i { case 0: return &v.state case 1: @@ -1055,7 +1556,7 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XRevokeSigningKeyRequest); i { + switch v := v.(*XCreateCacheResponse); i { case 0: return &v.state case 1: @@ -1067,7 +1568,7 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XRevokeSigningKeyResponse); i { + switch v := v.(*XListCachesRequest); i { case 0: return &v.state case 1: @@ -1079,7 +1580,7 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XSigningKey); i { + switch v := v.(*XCacheLimits); i { case 0: return &v.state case 1: @@ -1091,7 +1592,7 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListSigningKeysRequest); i { + switch v := v.(*XTopicLimits); i { case 0: return &v.state case 1: @@ -1103,7 +1604,7 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XListSigningKeysResponse); i { + switch v := v.(*XCache); i { case 0: return &v.state case 1: @@ -1115,7 +1616,7 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XFlushCacheRequest); i { + switch v := v.(*XListCachesResponse); i { case 0: return &v.state case 1: @@ -1127,6 +1628,102 @@ func file_controlclient_proto_init() { } } file_controlclient_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XCreateSigningKeyRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_controlclient_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XCreateSigningKeyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_controlclient_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XRevokeSigningKeyRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_controlclient_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XRevokeSigningKeyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_controlclient_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XSigningKey); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_controlclient_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XListSigningKeysRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_controlclient_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XListSigningKeysResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_controlclient_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XFlushCacheRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_controlclient_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*XFlushCacheResponse); i { case 0: return &v.state @@ -1145,7 +1742,7 @@ func file_controlclient_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_controlclient_proto_rawDesc, NumEnums: 0, - NumMessages: 16, + NumMessages: 24, NumExtensions: 0, NumServices: 1, }, diff --git a/internal/protos/controlclient.proto b/internal/protos/controlclient.proto index bd1d9f6f..41099b89 100644 --- a/internal/protos/controlclient.proto +++ b/internal/protos/controlclient.proto @@ -1,5 +1,6 @@ syntax = "proto3"; + option go_package = "github.com/momentohq/client-sdk-go;client_sdk_go"; option java_multiple_files = true; option java_package = "grpc.control_client"; @@ -15,6 +16,31 @@ service ScsControl { rpc CreateSigningKey (_CreateSigningKeyRequest) returns (_CreateSigningKeyResponse) {} rpc RevokeSigningKey (_RevokeSigningKeyRequest) returns (_RevokeSigningKeyResponse) {} rpc ListSigningKeys (_ListSigningKeysRequest) returns (_ListSigningKeysResponse) {} + rpc CreateIndex (_CreateIndexRequest) returns (_CreateIndexResponse) {} + rpc DeleteIndex(_DeleteIndexRequest) returns (_DeleteIndexResponse) {} + rpc ListIndexes(_ListIndexesRequest) returns (_ListIndexesResponse) {} +} + +message _CreateIndexRequest { + string index_name = 1; + uint64 num_dimensions = 2; +} + +message _CreateIndexResponse { +} + +message _DeleteIndexRequest { + string index_name = 1; +} + +message _DeleteIndexResponse { +} + +message _ListIndexesRequest { +} + +message _ListIndexesResponse { + repeated string index_names = 1; } message _DeleteCacheRequest { @@ -35,8 +61,30 @@ message _ListCachesRequest { string next_token = 1; } +message _CacheLimits { + // The amount of transactions per second that can be exercised + uint32 max_traffic_rate = 1; + // The amount of traffic per second that can be exercised in KiB + uint32 max_throughput_kbps = 2; + // The maximum size of a single item in KiB + uint32 max_item_size_kb = 3; + // The maximum TTL allowed for a single item, in seconds + uint64 max_ttl_seconds = 4; +} + +message _TopicLimits { + // The amount of messages that can be published per second + uint32 max_publish_rate = 1; + // The maximum amount of active subscriptions per cache + uint32 max_subscription_count = 2; + // The maximum size of a single publish message, in KiB + uint32 max_publish_message_size_kb = 3; +} + message _Cache { string cache_name = 1; + _CacheLimits cache_limits = 2; + _TopicLimits topic_limits = 3; } message _ListCachesResponse { diff --git a/internal/protos/controlclient_grpc.pb.go b/internal/protos/controlclient_grpc.pb.go index a4393877..c8ca0782 100644 --- a/internal/protos/controlclient_grpc.pb.go +++ b/internal/protos/controlclient_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.3.0 -// - protoc v4.23.3 +// - protoc v3.20.3 // source: controlclient.proto package client_sdk_go @@ -27,6 +27,9 @@ const ( ScsControl_CreateSigningKey_FullMethodName = "/control_client.ScsControl/CreateSigningKey" ScsControl_RevokeSigningKey_FullMethodName = "/control_client.ScsControl/RevokeSigningKey" ScsControl_ListSigningKeys_FullMethodName = "/control_client.ScsControl/ListSigningKeys" + ScsControl_CreateIndex_FullMethodName = "/control_client.ScsControl/CreateIndex" + ScsControl_DeleteIndex_FullMethodName = "/control_client.ScsControl/DeleteIndex" + ScsControl_ListIndexes_FullMethodName = "/control_client.ScsControl/ListIndexes" ) // ScsControlClient is the client API for ScsControl service. @@ -40,6 +43,9 @@ type ScsControlClient interface { CreateSigningKey(ctx context.Context, in *XCreateSigningKeyRequest, opts ...grpc.CallOption) (*XCreateSigningKeyResponse, error) RevokeSigningKey(ctx context.Context, in *XRevokeSigningKeyRequest, opts ...grpc.CallOption) (*XRevokeSigningKeyResponse, error) ListSigningKeys(ctx context.Context, in *XListSigningKeysRequest, opts ...grpc.CallOption) (*XListSigningKeysResponse, error) + CreateIndex(ctx context.Context, in *XCreateIndexRequest, opts ...grpc.CallOption) (*XCreateIndexResponse, error) + DeleteIndex(ctx context.Context, in *XDeleteIndexRequest, opts ...grpc.CallOption) (*XDeleteIndexResponse, error) + ListIndexes(ctx context.Context, in *XListIndexesRequest, opts ...grpc.CallOption) (*XListIndexesResponse, error) } type scsControlClient struct { @@ -113,6 +119,33 @@ func (c *scsControlClient) ListSigningKeys(ctx context.Context, in *XListSigning return out, nil } +func (c *scsControlClient) CreateIndex(ctx context.Context, in *XCreateIndexRequest, opts ...grpc.CallOption) (*XCreateIndexResponse, error) { + out := new(XCreateIndexResponse) + err := c.cc.Invoke(ctx, ScsControl_CreateIndex_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *scsControlClient) DeleteIndex(ctx context.Context, in *XDeleteIndexRequest, opts ...grpc.CallOption) (*XDeleteIndexResponse, error) { + out := new(XDeleteIndexResponse) + err := c.cc.Invoke(ctx, ScsControl_DeleteIndex_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *scsControlClient) ListIndexes(ctx context.Context, in *XListIndexesRequest, opts ...grpc.CallOption) (*XListIndexesResponse, error) { + out := new(XListIndexesResponse) + err := c.cc.Invoke(ctx, ScsControl_ListIndexes_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // ScsControlServer is the server API for ScsControl service. // All implementations must embed UnimplementedScsControlServer // for forward compatibility @@ -124,6 +157,9 @@ type ScsControlServer interface { CreateSigningKey(context.Context, *XCreateSigningKeyRequest) (*XCreateSigningKeyResponse, error) RevokeSigningKey(context.Context, *XRevokeSigningKeyRequest) (*XRevokeSigningKeyResponse, error) ListSigningKeys(context.Context, *XListSigningKeysRequest) (*XListSigningKeysResponse, error) + CreateIndex(context.Context, *XCreateIndexRequest) (*XCreateIndexResponse, error) + DeleteIndex(context.Context, *XDeleteIndexRequest) (*XDeleteIndexResponse, error) + ListIndexes(context.Context, *XListIndexesRequest) (*XListIndexesResponse, error) mustEmbedUnimplementedScsControlServer() } @@ -152,6 +188,15 @@ func (UnimplementedScsControlServer) RevokeSigningKey(context.Context, *XRevokeS func (UnimplementedScsControlServer) ListSigningKeys(context.Context, *XListSigningKeysRequest) (*XListSigningKeysResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ListSigningKeys not implemented") } +func (UnimplementedScsControlServer) CreateIndex(context.Context, *XCreateIndexRequest) (*XCreateIndexResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateIndex not implemented") +} +func (UnimplementedScsControlServer) DeleteIndex(context.Context, *XDeleteIndexRequest) (*XDeleteIndexResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteIndex not implemented") +} +func (UnimplementedScsControlServer) ListIndexes(context.Context, *XListIndexesRequest) (*XListIndexesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListIndexes not implemented") +} func (UnimplementedScsControlServer) mustEmbedUnimplementedScsControlServer() {} // UnsafeScsControlServer may be embedded to opt out of forward compatibility for this service. @@ -291,6 +336,60 @@ func _ScsControl_ListSigningKeys_Handler(srv interface{}, ctx context.Context, d return interceptor(ctx, in, info, handler) } +func _ScsControl_CreateIndex_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(XCreateIndexRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ScsControlServer).CreateIndex(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ScsControl_CreateIndex_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ScsControlServer).CreateIndex(ctx, req.(*XCreateIndexRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ScsControl_DeleteIndex_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(XDeleteIndexRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ScsControlServer).DeleteIndex(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ScsControl_DeleteIndex_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ScsControlServer).DeleteIndex(ctx, req.(*XDeleteIndexRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ScsControl_ListIndexes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(XListIndexesRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ScsControlServer).ListIndexes(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ScsControl_ListIndexes_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ScsControlServer).ListIndexes(ctx, req.(*XListIndexesRequest)) + } + return interceptor(ctx, in, info, handler) +} + // ScsControl_ServiceDesc is the grpc.ServiceDesc for ScsControl service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -326,6 +425,18 @@ var ScsControl_ServiceDesc = grpc.ServiceDesc{ MethodName: "ListSigningKeys", Handler: _ScsControl_ListSigningKeys_Handler, }, + { + MethodName: "CreateIndex", + Handler: _ScsControl_CreateIndex_Handler, + }, + { + MethodName: "DeleteIndex", + Handler: _ScsControl_DeleteIndex_Handler, + }, + { + MethodName: "ListIndexes", + Handler: _ScsControl_ListIndexes_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "controlclient.proto", diff --git a/internal/protos/extensions.pb.go b/internal/protos/extensions.pb.go index a5848040..821a3612 100644 --- a/internal/protos/extensions.pb.go +++ b/internal/protos/extensions.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.31.0 -// protoc v4.23.3 +// protoc v3.20.3 // source: extensions.proto package client_sdk_go diff --git a/internal/protos/permissionmessages.pb.go b/internal/protos/permissionmessages.pb.go new file mode 100644 index 00000000..9d43c2ce --- /dev/null +++ b/internal/protos/permissionmessages.pb.go @@ -0,0 +1,1266 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.31.0 +// protoc v3.20.3 +// source: permissionmessages.proto + +package client_sdk_go + +import ( + reflect "reflect" + sync "sync" + + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// Aliases for categories of functionality. +type CacheRole int32 + +const ( + CacheRole_CachePermitNone CacheRole = 0 + // Restricts access to apis that read and write data from caches: No higher level resource description or modification. + CacheRole_CacheReadWrite CacheRole = 1 + // Restricts access to apis that read from caches: No higher level resource description or modification. + CacheRole_CacheReadOnly CacheRole = 2 + // Restricts access to apis that write from caches: No higher level resource description or modification. + // Doesn't allow conditional write APIs (SetIfNotExists, IncreaseTTL etc) + CacheRole_CacheWriteOnly CacheRole = 3 +) + +// Enum value maps for CacheRole. +var ( + CacheRole_name = map[int32]string{ + 0: "CachePermitNone", + 1: "CacheReadWrite", + 2: "CacheReadOnly", + 3: "CacheWriteOnly", + } + CacheRole_value = map[string]int32{ + "CachePermitNone": 0, + "CacheReadWrite": 1, + "CacheReadOnly": 2, + "CacheWriteOnly": 3, + } +) + +func (x CacheRole) Enum() *CacheRole { + p := new(CacheRole) + *p = x + return p +} + +func (x CacheRole) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CacheRole) Descriptor() protoreflect.EnumDescriptor { + return file_permissionmessages_proto_enumTypes[0].Descriptor() +} + +func (CacheRole) Type() protoreflect.EnumType { + return &file_permissionmessages_proto_enumTypes[0] +} + +func (x CacheRole) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use CacheRole.Descriptor instead. +func (CacheRole) EnumDescriptor() ([]byte, []int) { + return file_permissionmessages_proto_rawDescGZIP(), []int{0} +} + +// Aliases for categories of functionality. +type TopicRole int32 + +const ( + TopicRole_TopicPermitNone TopicRole = 0 + // Restricts access to apis that read and write data from topics: No higher level resource description or modification. + TopicRole_TopicReadWrite TopicRole = 1 + // Restricts access to apis that read from topics: No higher level resource description or modification. + TopicRole_TopicReadOnly TopicRole = 2 + // Restricts access to apis that write from topics: No higher level resource description or modification. + TopicRole_TopicWriteOnly TopicRole = 3 +) + +// Enum value maps for TopicRole. +var ( + TopicRole_name = map[int32]string{ + 0: "TopicPermitNone", + 1: "TopicReadWrite", + 2: "TopicReadOnly", + 3: "TopicWriteOnly", + } + TopicRole_value = map[string]int32{ + "TopicPermitNone": 0, + "TopicReadWrite": 1, + "TopicReadOnly": 2, + "TopicWriteOnly": 3, + } +) + +func (x TopicRole) Enum() *TopicRole { + p := new(TopicRole) + *p = x + return p +} + +func (x TopicRole) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (TopicRole) Descriptor() protoreflect.EnumDescriptor { + return file_permissionmessages_proto_enumTypes[1].Descriptor() +} + +func (TopicRole) Type() protoreflect.EnumType { + return &file_permissionmessages_proto_enumTypes[1] +} + +func (x TopicRole) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use TopicRole.Descriptor instead. +func (TopicRole) EnumDescriptor() ([]byte, []int) { + return file_permissionmessages_proto_rawDescGZIP(), []int{1} +} + +type SuperUserPermissions int32 + +const ( + SuperUserPermissions_SuperUser SuperUserPermissions = 0 +) + +// Enum value maps for SuperUserPermissions. +var ( + SuperUserPermissions_name = map[int32]string{ + 0: "SuperUser", + } + SuperUserPermissions_value = map[string]int32{ + "SuperUser": 0, + } +) + +func (x SuperUserPermissions) Enum() *SuperUserPermissions { + p := new(SuperUserPermissions) + *p = x + return p +} + +func (x SuperUserPermissions) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (SuperUserPermissions) Descriptor() protoreflect.EnumDescriptor { + return file_permissionmessages_proto_enumTypes[2].Descriptor() +} + +func (SuperUserPermissions) Type() protoreflect.EnumType { + return &file_permissionmessages_proto_enumTypes[2] +} + +func (x SuperUserPermissions) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use SuperUserPermissions.Descriptor instead. +func (SuperUserPermissions) EnumDescriptor() ([]byte, []int) { + return file_permissionmessages_proto_rawDescGZIP(), []int{2} +} + +type Permissions struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Kind: + // + // *Permissions_SuperUser + // *Permissions_Explicit + Kind isPermissions_Kind `protobuf_oneof:"kind"` +} + +func (x *Permissions) Reset() { + *x = Permissions{} + if protoimpl.UnsafeEnabled { + mi := &file_permissionmessages_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Permissions) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Permissions) ProtoMessage() {} + +func (x *Permissions) ProtoReflect() protoreflect.Message { + mi := &file_permissionmessages_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Permissions.ProtoReflect.Descriptor instead. +func (*Permissions) Descriptor() ([]byte, []int) { + return file_permissionmessages_proto_rawDescGZIP(), []int{0} +} + +func (m *Permissions) GetKind() isPermissions_Kind { + if m != nil { + return m.Kind + } + return nil +} + +func (x *Permissions) GetSuperUser() SuperUserPermissions { + if x, ok := x.GetKind().(*Permissions_SuperUser); ok { + return x.SuperUser + } + return SuperUserPermissions_SuperUser +} + +func (x *Permissions) GetExplicit() *ExplicitPermissions { + if x, ok := x.GetKind().(*Permissions_Explicit); ok { + return x.Explicit + } + return nil +} + +type isPermissions_Kind interface { + isPermissions_Kind() +} + +type Permissions_SuperUser struct { + SuperUser SuperUserPermissions `protobuf:"varint,1,opt,name=super_user,json=superUser,proto3,enum=permission_messages.SuperUserPermissions,oneof"` +} + +type Permissions_Explicit struct { + Explicit *ExplicitPermissions `protobuf:"bytes,2,opt,name=explicit,proto3,oneof"` +} + +func (*Permissions_SuperUser) isPermissions_Kind() {} + +func (*Permissions_Explicit) isPermissions_Kind() {} + +type ExplicitPermissions struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Permissions []*PermissionsType `protobuf:"bytes,1,rep,name=permissions,proto3" json:"permissions,omitempty"` +} + +func (x *ExplicitPermissions) Reset() { + *x = ExplicitPermissions{} + if protoimpl.UnsafeEnabled { + mi := &file_permissionmessages_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ExplicitPermissions) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ExplicitPermissions) ProtoMessage() {} + +func (x *ExplicitPermissions) ProtoReflect() protoreflect.Message { + mi := &file_permissionmessages_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ExplicitPermissions.ProtoReflect.Descriptor instead. +func (*ExplicitPermissions) Descriptor() ([]byte, []int) { + return file_permissionmessages_proto_rawDescGZIP(), []int{1} +} + +func (x *ExplicitPermissions) GetPermissions() []*PermissionsType { + if x != nil { + return x.Permissions + } + return nil +} + +type PermissionsType struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Kind: + // + // *PermissionsType_CachePermissions_ + // *PermissionsType_TopicPermissions_ + Kind isPermissionsType_Kind `protobuf_oneof:"kind"` +} + +func (x *PermissionsType) Reset() { + *x = PermissionsType{} + if protoimpl.UnsafeEnabled { + mi := &file_permissionmessages_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PermissionsType) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PermissionsType) ProtoMessage() {} + +func (x *PermissionsType) ProtoReflect() protoreflect.Message { + mi := &file_permissionmessages_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PermissionsType.ProtoReflect.Descriptor instead. +func (*PermissionsType) Descriptor() ([]byte, []int) { + return file_permissionmessages_proto_rawDescGZIP(), []int{2} +} + +func (m *PermissionsType) GetKind() isPermissionsType_Kind { + if m != nil { + return m.Kind + } + return nil +} + +func (x *PermissionsType) GetCachePermissions() *PermissionsType_CachePermissions { + if x, ok := x.GetKind().(*PermissionsType_CachePermissions_); ok { + return x.CachePermissions + } + return nil +} + +func (x *PermissionsType) GetTopicPermissions() *PermissionsType_TopicPermissions { + if x, ok := x.GetKind().(*PermissionsType_TopicPermissions_); ok { + return x.TopicPermissions + } + return nil +} + +type isPermissionsType_Kind interface { + isPermissionsType_Kind() +} + +type PermissionsType_CachePermissions_ struct { + CachePermissions *PermissionsType_CachePermissions `protobuf:"bytes,1,opt,name=cache_permissions,json=cachePermissions,proto3,oneof"` +} + +type PermissionsType_TopicPermissions_ struct { + TopicPermissions *PermissionsType_TopicPermissions `protobuf:"bytes,2,opt,name=topic_permissions,json=topicPermissions,proto3,oneof"` +} + +func (*PermissionsType_CachePermissions_) isPermissionsType_Kind() {} + +func (*PermissionsType_TopicPermissions_) isPermissionsType_Kind() {} + +type PermissionsType_All struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *PermissionsType_All) Reset() { + *x = PermissionsType_All{} + if protoimpl.UnsafeEnabled { + mi := &file_permissionmessages_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PermissionsType_All) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PermissionsType_All) ProtoMessage() {} + +func (x *PermissionsType_All) ProtoReflect() protoreflect.Message { + mi := &file_permissionmessages_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PermissionsType_All.ProtoReflect.Descriptor instead. +func (*PermissionsType_All) Descriptor() ([]byte, []int) { + return file_permissionmessages_proto_rawDescGZIP(), []int{2, 0} +} + +type PermissionsType_CacheSelector struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Kind: + // + // *PermissionsType_CacheSelector_CacheName + Kind isPermissionsType_CacheSelector_Kind `protobuf_oneof:"kind"` +} + +func (x *PermissionsType_CacheSelector) Reset() { + *x = PermissionsType_CacheSelector{} + if protoimpl.UnsafeEnabled { + mi := &file_permissionmessages_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PermissionsType_CacheSelector) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PermissionsType_CacheSelector) ProtoMessage() {} + +func (x *PermissionsType_CacheSelector) ProtoReflect() protoreflect.Message { + mi := &file_permissionmessages_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PermissionsType_CacheSelector.ProtoReflect.Descriptor instead. +func (*PermissionsType_CacheSelector) Descriptor() ([]byte, []int) { + return file_permissionmessages_proto_rawDescGZIP(), []int{2, 1} +} + +func (m *PermissionsType_CacheSelector) GetKind() isPermissionsType_CacheSelector_Kind { + if m != nil { + return m.Kind + } + return nil +} + +func (x *PermissionsType_CacheSelector) GetCacheName() string { + if x, ok := x.GetKind().(*PermissionsType_CacheSelector_CacheName); ok { + return x.CacheName + } + return "" +} + +type isPermissionsType_CacheSelector_Kind interface { + isPermissionsType_CacheSelector_Kind() +} + +type PermissionsType_CacheSelector_CacheName struct { + CacheName string `protobuf:"bytes,1,opt,name=cache_name,json=cacheName,proto3,oneof"` +} + +func (*PermissionsType_CacheSelector_CacheName) isPermissionsType_CacheSelector_Kind() {} + +type PermissionsType_CacheItemSelector struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Kind: + // + // *PermissionsType_CacheItemSelector_Key + // *PermissionsType_CacheItemSelector_KeyPrefix + Kind isPermissionsType_CacheItemSelector_Kind `protobuf_oneof:"kind"` +} + +func (x *PermissionsType_CacheItemSelector) Reset() { + *x = PermissionsType_CacheItemSelector{} + if protoimpl.UnsafeEnabled { + mi := &file_permissionmessages_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PermissionsType_CacheItemSelector) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PermissionsType_CacheItemSelector) ProtoMessage() {} + +func (x *PermissionsType_CacheItemSelector) ProtoReflect() protoreflect.Message { + mi := &file_permissionmessages_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PermissionsType_CacheItemSelector.ProtoReflect.Descriptor instead. +func (*PermissionsType_CacheItemSelector) Descriptor() ([]byte, []int) { + return file_permissionmessages_proto_rawDescGZIP(), []int{2, 2} +} + +func (m *PermissionsType_CacheItemSelector) GetKind() isPermissionsType_CacheItemSelector_Kind { + if m != nil { + return m.Kind + } + return nil +} + +func (x *PermissionsType_CacheItemSelector) GetKey() []byte { + if x, ok := x.GetKind().(*PermissionsType_CacheItemSelector_Key); ok { + return x.Key + } + return nil +} + +func (x *PermissionsType_CacheItemSelector) GetKeyPrefix() []byte { + if x, ok := x.GetKind().(*PermissionsType_CacheItemSelector_KeyPrefix); ok { + return x.KeyPrefix + } + return nil +} + +type isPermissionsType_CacheItemSelector_Kind interface { + isPermissionsType_CacheItemSelector_Kind() +} + +type PermissionsType_CacheItemSelector_Key struct { + Key []byte `protobuf:"bytes,1,opt,name=key,proto3,oneof"` +} + +type PermissionsType_CacheItemSelector_KeyPrefix struct { + KeyPrefix []byte `protobuf:"bytes,2,opt,name=key_prefix,json=keyPrefix,proto3,oneof"` +} + +func (*PermissionsType_CacheItemSelector_Key) isPermissionsType_CacheItemSelector_Kind() {} + +func (*PermissionsType_CacheItemSelector_KeyPrefix) isPermissionsType_CacheItemSelector_Kind() {} + +type PermissionsType_CachePermissions struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Role CacheRole `protobuf:"varint,1,opt,name=role,proto3,enum=permission_messages.CacheRole" json:"role,omitempty"` + // Types that are assignable to Cache: + // + // *PermissionsType_CachePermissions_AllCaches + // *PermissionsType_CachePermissions_CacheSelector + Cache isPermissionsType_CachePermissions_Cache `protobuf_oneof:"cache"` + // Types that are assignable to CacheItem: + // + // *PermissionsType_CachePermissions_AllItems + // *PermissionsType_CachePermissions_ItemSelector + CacheItem isPermissionsType_CachePermissions_CacheItem `protobuf_oneof:"cache_item"` +} + +func (x *PermissionsType_CachePermissions) Reset() { + *x = PermissionsType_CachePermissions{} + if protoimpl.UnsafeEnabled { + mi := &file_permissionmessages_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PermissionsType_CachePermissions) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PermissionsType_CachePermissions) ProtoMessage() {} + +func (x *PermissionsType_CachePermissions) ProtoReflect() protoreflect.Message { + mi := &file_permissionmessages_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PermissionsType_CachePermissions.ProtoReflect.Descriptor instead. +func (*PermissionsType_CachePermissions) Descriptor() ([]byte, []int) { + return file_permissionmessages_proto_rawDescGZIP(), []int{2, 3} +} + +func (x *PermissionsType_CachePermissions) GetRole() CacheRole { + if x != nil { + return x.Role + } + return CacheRole_CachePermitNone +} + +func (m *PermissionsType_CachePermissions) GetCache() isPermissionsType_CachePermissions_Cache { + if m != nil { + return m.Cache + } + return nil +} + +func (x *PermissionsType_CachePermissions) GetAllCaches() *PermissionsType_All { + if x, ok := x.GetCache().(*PermissionsType_CachePermissions_AllCaches); ok { + return x.AllCaches + } + return nil +} + +func (x *PermissionsType_CachePermissions) GetCacheSelector() *PermissionsType_CacheSelector { + if x, ok := x.GetCache().(*PermissionsType_CachePermissions_CacheSelector); ok { + return x.CacheSelector + } + return nil +} + +func (m *PermissionsType_CachePermissions) GetCacheItem() isPermissionsType_CachePermissions_CacheItem { + if m != nil { + return m.CacheItem + } + return nil +} + +func (x *PermissionsType_CachePermissions) GetAllItems() *PermissionsType_All { + if x, ok := x.GetCacheItem().(*PermissionsType_CachePermissions_AllItems); ok { + return x.AllItems + } + return nil +} + +func (x *PermissionsType_CachePermissions) GetItemSelector() *PermissionsType_CacheItemSelector { + if x, ok := x.GetCacheItem().(*PermissionsType_CachePermissions_ItemSelector); ok { + return x.ItemSelector + } + return nil +} + +type isPermissionsType_CachePermissions_Cache interface { + isPermissionsType_CachePermissions_Cache() +} + +type PermissionsType_CachePermissions_AllCaches struct { + AllCaches *PermissionsType_All `protobuf:"bytes,2,opt,name=all_caches,json=allCaches,proto3,oneof"` +} + +type PermissionsType_CachePermissions_CacheSelector struct { + CacheSelector *PermissionsType_CacheSelector `protobuf:"bytes,3,opt,name=cache_selector,json=cacheSelector,proto3,oneof"` +} + +func (*PermissionsType_CachePermissions_AllCaches) isPermissionsType_CachePermissions_Cache() {} + +func (*PermissionsType_CachePermissions_CacheSelector) isPermissionsType_CachePermissions_Cache() {} + +type isPermissionsType_CachePermissions_CacheItem interface { + isPermissionsType_CachePermissions_CacheItem() +} + +type PermissionsType_CachePermissions_AllItems struct { + AllItems *PermissionsType_All `protobuf:"bytes,4,opt,name=all_items,json=allItems,proto3,oneof"` +} + +type PermissionsType_CachePermissions_ItemSelector struct { + ItemSelector *PermissionsType_CacheItemSelector `protobuf:"bytes,5,opt,name=item_selector,json=itemSelector,proto3,oneof"` +} + +func (*PermissionsType_CachePermissions_AllItems) isPermissionsType_CachePermissions_CacheItem() {} + +func (*PermissionsType_CachePermissions_ItemSelector) isPermissionsType_CachePermissions_CacheItem() { +} + +type PermissionsType_TopicSelector struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Kind: + // + // *PermissionsType_TopicSelector_TopicName + // *PermissionsType_TopicSelector_TopicNamePrefix + Kind isPermissionsType_TopicSelector_Kind `protobuf_oneof:"kind"` +} + +func (x *PermissionsType_TopicSelector) Reset() { + *x = PermissionsType_TopicSelector{} + if protoimpl.UnsafeEnabled { + mi := &file_permissionmessages_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PermissionsType_TopicSelector) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PermissionsType_TopicSelector) ProtoMessage() {} + +func (x *PermissionsType_TopicSelector) ProtoReflect() protoreflect.Message { + mi := &file_permissionmessages_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PermissionsType_TopicSelector.ProtoReflect.Descriptor instead. +func (*PermissionsType_TopicSelector) Descriptor() ([]byte, []int) { + return file_permissionmessages_proto_rawDescGZIP(), []int{2, 4} +} + +func (m *PermissionsType_TopicSelector) GetKind() isPermissionsType_TopicSelector_Kind { + if m != nil { + return m.Kind + } + return nil +} + +func (x *PermissionsType_TopicSelector) GetTopicName() string { + if x, ok := x.GetKind().(*PermissionsType_TopicSelector_TopicName); ok { + return x.TopicName + } + return "" +} + +func (x *PermissionsType_TopicSelector) GetTopicNamePrefix() string { + if x, ok := x.GetKind().(*PermissionsType_TopicSelector_TopicNamePrefix); ok { + return x.TopicNamePrefix + } + return "" +} + +type isPermissionsType_TopicSelector_Kind interface { + isPermissionsType_TopicSelector_Kind() +} + +type PermissionsType_TopicSelector_TopicName struct { + TopicName string `protobuf:"bytes,1,opt,name=topic_name,json=topicName,proto3,oneof"` +} + +type PermissionsType_TopicSelector_TopicNamePrefix struct { + TopicNamePrefix string `protobuf:"bytes,2,opt,name=topic_name_prefix,json=topicNamePrefix,proto3,oneof"` +} + +func (*PermissionsType_TopicSelector_TopicName) isPermissionsType_TopicSelector_Kind() {} + +func (*PermissionsType_TopicSelector_TopicNamePrefix) isPermissionsType_TopicSelector_Kind() {} + +type PermissionsType_TopicPermissions struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Role TopicRole `protobuf:"varint,1,opt,name=role,proto3,enum=permission_messages.TopicRole" json:"role,omitempty"` + // Types that are assignable to Cache: + // + // *PermissionsType_TopicPermissions_AllCaches + // *PermissionsType_TopicPermissions_CacheSelector + Cache isPermissionsType_TopicPermissions_Cache `protobuf_oneof:"cache"` + // Types that are assignable to Topic: + // + // *PermissionsType_TopicPermissions_AllTopics + // *PermissionsType_TopicPermissions_TopicSelector + Topic isPermissionsType_TopicPermissions_Topic `protobuf_oneof:"topic"` +} + +func (x *PermissionsType_TopicPermissions) Reset() { + *x = PermissionsType_TopicPermissions{} + if protoimpl.UnsafeEnabled { + mi := &file_permissionmessages_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PermissionsType_TopicPermissions) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PermissionsType_TopicPermissions) ProtoMessage() {} + +func (x *PermissionsType_TopicPermissions) ProtoReflect() protoreflect.Message { + mi := &file_permissionmessages_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PermissionsType_TopicPermissions.ProtoReflect.Descriptor instead. +func (*PermissionsType_TopicPermissions) Descriptor() ([]byte, []int) { + return file_permissionmessages_proto_rawDescGZIP(), []int{2, 5} +} + +func (x *PermissionsType_TopicPermissions) GetRole() TopicRole { + if x != nil { + return x.Role + } + return TopicRole_TopicPermitNone +} + +func (m *PermissionsType_TopicPermissions) GetCache() isPermissionsType_TopicPermissions_Cache { + if m != nil { + return m.Cache + } + return nil +} + +func (x *PermissionsType_TopicPermissions) GetAllCaches() *PermissionsType_All { + if x, ok := x.GetCache().(*PermissionsType_TopicPermissions_AllCaches); ok { + return x.AllCaches + } + return nil +} + +func (x *PermissionsType_TopicPermissions) GetCacheSelector() *PermissionsType_CacheSelector { + if x, ok := x.GetCache().(*PermissionsType_TopicPermissions_CacheSelector); ok { + return x.CacheSelector + } + return nil +} + +func (m *PermissionsType_TopicPermissions) GetTopic() isPermissionsType_TopicPermissions_Topic { + if m != nil { + return m.Topic + } + return nil +} + +func (x *PermissionsType_TopicPermissions) GetAllTopics() *PermissionsType_All { + if x, ok := x.GetTopic().(*PermissionsType_TopicPermissions_AllTopics); ok { + return x.AllTopics + } + return nil +} + +func (x *PermissionsType_TopicPermissions) GetTopicSelector() *PermissionsType_TopicSelector { + if x, ok := x.GetTopic().(*PermissionsType_TopicPermissions_TopicSelector); ok { + return x.TopicSelector + } + return nil +} + +type isPermissionsType_TopicPermissions_Cache interface { + isPermissionsType_TopicPermissions_Cache() +} + +type PermissionsType_TopicPermissions_AllCaches struct { + AllCaches *PermissionsType_All `protobuf:"bytes,2,opt,name=all_caches,json=allCaches,proto3,oneof"` +} + +type PermissionsType_TopicPermissions_CacheSelector struct { + CacheSelector *PermissionsType_CacheSelector `protobuf:"bytes,3,opt,name=cache_selector,json=cacheSelector,proto3,oneof"` +} + +func (*PermissionsType_TopicPermissions_AllCaches) isPermissionsType_TopicPermissions_Cache() {} + +func (*PermissionsType_TopicPermissions_CacheSelector) isPermissionsType_TopicPermissions_Cache() {} + +type isPermissionsType_TopicPermissions_Topic interface { + isPermissionsType_TopicPermissions_Topic() +} + +type PermissionsType_TopicPermissions_AllTopics struct { + AllTopics *PermissionsType_All `protobuf:"bytes,4,opt,name=all_topics,json=allTopics,proto3,oneof"` +} + +type PermissionsType_TopicPermissions_TopicSelector struct { + TopicSelector *PermissionsType_TopicSelector `protobuf:"bytes,5,opt,name=topic_selector,json=topicSelector,proto3,oneof"` +} + +func (*PermissionsType_TopicPermissions_AllTopics) isPermissionsType_TopicPermissions_Topic() {} + +func (*PermissionsType_TopicPermissions_TopicSelector) isPermissionsType_TopicPermissions_Topic() {} + +var File_permissionmessages_proto protoreflect.FileDescriptor + +var file_permissionmessages_proto_rawDesc = []byte{ + 0x0a, 0x18, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x13, 0x70, 0x65, 0x72, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, + 0xa9, 0x01, 0x0a, 0x0b, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x4a, 0x0a, 0x0a, 0x73, 0x75, 0x70, 0x65, 0x72, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x53, 0x75, 0x70, 0x65, 0x72, 0x55, + 0x73, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, + 0x52, 0x09, 0x73, 0x75, 0x70, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x12, 0x46, 0x0a, 0x08, 0x65, + 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, + 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x73, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x50, 0x65, 0x72, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x08, 0x65, 0x78, 0x70, 0x6c, 0x69, + 0x63, 0x69, 0x74, 0x42, 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0x5d, 0x0a, 0x13, 0x45, + 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x46, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x50, 0x65, + 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x70, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xbb, 0x0a, 0x0a, 0x0f, 0x50, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x64, + 0x0a, 0x11, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x70, 0x65, 0x72, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, + 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x2e, + 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, + 0x48, 0x00, 0x52, 0x10, 0x63, 0x61, 0x63, 0x68, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x64, 0x0a, 0x11, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x5f, 0x70, 0x65, + 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x35, 0x2e, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x73, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x10, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x50, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x05, 0x0a, 0x03, 0x41, 0x6c, + 0x6c, 0x1a, 0x38, 0x0a, 0x0d, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x09, 0x63, 0x61, 0x63, 0x68, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x1a, 0x50, 0x0a, 0x11, 0x43, + 0x61, 0x63, 0x68, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, + 0x12, 0x12, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x0a, 0x6b, 0x65, 0x79, 0x5f, 0x70, 0x72, 0x65, 0x66, + 0x69, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x50, + 0x72, 0x65, 0x66, 0x69, 0x78, 0x42, 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x1a, 0xad, 0x03, + 0x0a, 0x10, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x32, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x1e, 0x2e, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x6f, 0x6c, 0x65, + 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x49, 0x0a, 0x0a, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x61, + 0x63, 0x68, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x65, 0x72, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, + 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, + 0x2e, 0x41, 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x09, 0x61, 0x6c, 0x6c, 0x43, 0x61, 0x63, 0x68, 0x65, + 0x73, 0x12, 0x5b, 0x0a, 0x0e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x70, 0x65, 0x72, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, + 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x2e, + 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x48, 0x00, 0x52, + 0x0d, 0x63, 0x61, 0x63, 0x68, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x47, + 0x0a, 0x09, 0x61, 0x6c, 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x41, 0x6c, 0x6c, 0x48, 0x01, 0x52, 0x08, 0x61, + 0x6c, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x5d, 0x0a, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x5f, + 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, + 0x2e, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, + 0x54, 0x79, 0x70, 0x65, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x48, 0x01, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x53, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x07, 0x0a, 0x05, 0x63, 0x61, 0x63, 0x68, 0x65, 0x42, + 0x0c, 0x0a, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x1a, 0x66, 0x0a, + 0x0d, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x1f, + 0x0a, 0x0a, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x48, 0x00, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x2c, 0x0a, 0x11, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x72, + 0x65, 0x66, 0x69, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0f, 0x74, 0x6f, + 0x70, 0x69, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x42, 0x06, 0x0a, + 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x1a, 0xa8, 0x03, 0x0a, 0x10, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x50, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x32, 0x0a, 0x04, 0x72, 0x6f, + 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x70, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x54, + 0x6f, 0x70, 0x69, 0x63, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x49, + 0x0a, 0x0a, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x41, 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x09, + 0x61, 0x6c, 0x6c, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x12, 0x5b, 0x0a, 0x0e, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x32, 0x2e, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x65, 0x6c, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x0d, 0x63, 0x61, 0x63, 0x68, 0x65, 0x53, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x49, 0x0a, 0x0a, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x6f, + 0x70, 0x69, 0x63, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x65, 0x72, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, + 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, + 0x2e, 0x41, 0x6c, 0x6c, 0x48, 0x01, 0x52, 0x09, 0x61, 0x6c, 0x6c, 0x54, 0x6f, 0x70, 0x69, 0x63, + 0x73, 0x12, 0x5b, 0x0a, 0x0e, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x70, 0x65, 0x72, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, + 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x2e, + 0x54, 0x6f, 0x70, 0x69, 0x63, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x48, 0x01, 0x52, + 0x0d, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x07, + 0x0a, 0x05, 0x63, 0x61, 0x63, 0x68, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, + 0x42, 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x2a, 0x5b, 0x0a, 0x09, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x65, + 0x72, 0x6d, 0x69, 0x74, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x61, + 0x63, 0x68, 0x65, 0x52, 0x65, 0x61, 0x64, 0x57, 0x72, 0x69, 0x74, 0x65, 0x10, 0x01, 0x12, 0x11, + 0x0a, 0x0d, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x6e, 0x6c, 0x79, 0x10, + 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x57, 0x72, 0x69, 0x74, 0x65, 0x4f, + 0x6e, 0x6c, 0x79, 0x10, 0x03, 0x2a, 0x5b, 0x0a, 0x09, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x6f, + 0x6c, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x74, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x6f, 0x70, 0x69, 0x63, + 0x52, 0x65, 0x61, 0x64, 0x57, 0x72, 0x69, 0x74, 0x65, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x54, + 0x6f, 0x70, 0x69, 0x63, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x6e, 0x6c, 0x79, 0x10, 0x02, 0x12, 0x12, + 0x0a, 0x0e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x57, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x6e, 0x6c, 0x79, + 0x10, 0x03, 0x2a, 0x25, 0x0a, 0x14, 0x53, 0x75, 0x70, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x50, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x75, + 0x70, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x10, 0x00, 0x42, 0x72, 0x0a, 0x18, 0x67, 0x72, 0x70, + 0x63, 0x2e, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x73, 0x50, 0x01, 0x5a, 0x30, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x6f, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x68, 0x71, 0x2f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x2d, 0x73, 0x64, 0x6b, 0x2d, 0x67, 0x6f, 0x3b, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x5f, 0x73, 0x64, 0x6b, 0x5f, 0x67, 0x6f, 0xaa, 0x02, 0x21, 0x4d, 0x6f, 0x6d, 0x65, + 0x6e, 0x74, 0x6f, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x62, 0x06, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_permissionmessages_proto_rawDescOnce sync.Once + file_permissionmessages_proto_rawDescData = file_permissionmessages_proto_rawDesc +) + +func file_permissionmessages_proto_rawDescGZIP() []byte { + file_permissionmessages_proto_rawDescOnce.Do(func() { + file_permissionmessages_proto_rawDescData = protoimpl.X.CompressGZIP(file_permissionmessages_proto_rawDescData) + }) + return file_permissionmessages_proto_rawDescData +} + +var file_permissionmessages_proto_enumTypes = make([]protoimpl.EnumInfo, 3) +var file_permissionmessages_proto_msgTypes = make([]protoimpl.MessageInfo, 9) +var file_permissionmessages_proto_goTypes = []interface{}{ + (CacheRole)(0), // 0: permission_messages.CacheRole + (TopicRole)(0), // 1: permission_messages.TopicRole + (SuperUserPermissions)(0), // 2: permission_messages.SuperUserPermissions + (*Permissions)(nil), // 3: permission_messages.Permissions + (*ExplicitPermissions)(nil), // 4: permission_messages.ExplicitPermissions + (*PermissionsType)(nil), // 5: permission_messages.PermissionsType + (*PermissionsType_All)(nil), // 6: permission_messages.PermissionsType.All + (*PermissionsType_CacheSelector)(nil), // 7: permission_messages.PermissionsType.CacheSelector + (*PermissionsType_CacheItemSelector)(nil), // 8: permission_messages.PermissionsType.CacheItemSelector + (*PermissionsType_CachePermissions)(nil), // 9: permission_messages.PermissionsType.CachePermissions + (*PermissionsType_TopicSelector)(nil), // 10: permission_messages.PermissionsType.TopicSelector + (*PermissionsType_TopicPermissions)(nil), // 11: permission_messages.PermissionsType.TopicPermissions +} +var file_permissionmessages_proto_depIdxs = []int32{ + 2, // 0: permission_messages.Permissions.super_user:type_name -> permission_messages.SuperUserPermissions + 4, // 1: permission_messages.Permissions.explicit:type_name -> permission_messages.ExplicitPermissions + 5, // 2: permission_messages.ExplicitPermissions.permissions:type_name -> permission_messages.PermissionsType + 9, // 3: permission_messages.PermissionsType.cache_permissions:type_name -> permission_messages.PermissionsType.CachePermissions + 11, // 4: permission_messages.PermissionsType.topic_permissions:type_name -> permission_messages.PermissionsType.TopicPermissions + 0, // 5: permission_messages.PermissionsType.CachePermissions.role:type_name -> permission_messages.CacheRole + 6, // 6: permission_messages.PermissionsType.CachePermissions.all_caches:type_name -> permission_messages.PermissionsType.All + 7, // 7: permission_messages.PermissionsType.CachePermissions.cache_selector:type_name -> permission_messages.PermissionsType.CacheSelector + 6, // 8: permission_messages.PermissionsType.CachePermissions.all_items:type_name -> permission_messages.PermissionsType.All + 8, // 9: permission_messages.PermissionsType.CachePermissions.item_selector:type_name -> permission_messages.PermissionsType.CacheItemSelector + 1, // 10: permission_messages.PermissionsType.TopicPermissions.role:type_name -> permission_messages.TopicRole + 6, // 11: permission_messages.PermissionsType.TopicPermissions.all_caches:type_name -> permission_messages.PermissionsType.All + 7, // 12: permission_messages.PermissionsType.TopicPermissions.cache_selector:type_name -> permission_messages.PermissionsType.CacheSelector + 6, // 13: permission_messages.PermissionsType.TopicPermissions.all_topics:type_name -> permission_messages.PermissionsType.All + 10, // 14: permission_messages.PermissionsType.TopicPermissions.topic_selector:type_name -> permission_messages.PermissionsType.TopicSelector + 15, // [15:15] is the sub-list for method output_type + 15, // [15:15] is the sub-list for method input_type + 15, // [15:15] is the sub-list for extension type_name + 15, // [15:15] is the sub-list for extension extendee + 0, // [0:15] is the sub-list for field type_name +} + +func init() { file_permissionmessages_proto_init() } +func file_permissionmessages_proto_init() { + if File_permissionmessages_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_permissionmessages_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Permissions); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_permissionmessages_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ExplicitPermissions); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_permissionmessages_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PermissionsType); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_permissionmessages_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PermissionsType_All); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_permissionmessages_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PermissionsType_CacheSelector); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_permissionmessages_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PermissionsType_CacheItemSelector); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_permissionmessages_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PermissionsType_CachePermissions); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_permissionmessages_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PermissionsType_TopicSelector); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_permissionmessages_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PermissionsType_TopicPermissions); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_permissionmessages_proto_msgTypes[0].OneofWrappers = []interface{}{ + (*Permissions_SuperUser)(nil), + (*Permissions_Explicit)(nil), + } + file_permissionmessages_proto_msgTypes[2].OneofWrappers = []interface{}{ + (*PermissionsType_CachePermissions_)(nil), + (*PermissionsType_TopicPermissions_)(nil), + } + file_permissionmessages_proto_msgTypes[4].OneofWrappers = []interface{}{ + (*PermissionsType_CacheSelector_CacheName)(nil), + } + file_permissionmessages_proto_msgTypes[5].OneofWrappers = []interface{}{ + (*PermissionsType_CacheItemSelector_Key)(nil), + (*PermissionsType_CacheItemSelector_KeyPrefix)(nil), + } + file_permissionmessages_proto_msgTypes[6].OneofWrappers = []interface{}{ + (*PermissionsType_CachePermissions_AllCaches)(nil), + (*PermissionsType_CachePermissions_CacheSelector)(nil), + (*PermissionsType_CachePermissions_AllItems)(nil), + (*PermissionsType_CachePermissions_ItemSelector)(nil), + } + file_permissionmessages_proto_msgTypes[7].OneofWrappers = []interface{}{ + (*PermissionsType_TopicSelector_TopicName)(nil), + (*PermissionsType_TopicSelector_TopicNamePrefix)(nil), + } + file_permissionmessages_proto_msgTypes[8].OneofWrappers = []interface{}{ + (*PermissionsType_TopicPermissions_AllCaches)(nil), + (*PermissionsType_TopicPermissions_CacheSelector)(nil), + (*PermissionsType_TopicPermissions_AllTopics)(nil), + (*PermissionsType_TopicPermissions_TopicSelector)(nil), + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_permissionmessages_proto_rawDesc, + NumEnums: 3, + NumMessages: 9, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_permissionmessages_proto_goTypes, + DependencyIndexes: file_permissionmessages_proto_depIdxs, + EnumInfos: file_permissionmessages_proto_enumTypes, + MessageInfos: file_permissionmessages_proto_msgTypes, + }.Build() + File_permissionmessages_proto = out.File + file_permissionmessages_proto_rawDesc = nil + file_permissionmessages_proto_goTypes = nil + file_permissionmessages_proto_depIdxs = nil +} diff --git a/internal/protos/permissionmessages.proto b/internal/protos/permissionmessages.proto new file mode 100644 index 00000000..eade9001 --- /dev/null +++ b/internal/protos/permissionmessages.proto @@ -0,0 +1,99 @@ +syntax = "proto3"; + +option go_package = "github.com/momentohq/client-sdk-go;client_sdk_go"; +option java_multiple_files = true; +option java_package = "grpc.permission_messages"; +option csharp_namespace = "Momento.Protos.PermissionMessages"; + +package permission_messages; + +// Aliases for categories of functionality. +enum CacheRole { + CachePermitNone = 0; + // Restricts access to apis that read and write data from caches: No higher level resource description or modification. + CacheReadWrite = 1; + // Restricts access to apis that read from caches: No higher level resource description or modification. + CacheReadOnly = 2; + // Restricts access to apis that write from caches: No higher level resource description or modification. + // Doesn't allow conditional write APIs (SetIfNotExists, IncreaseTTL etc) + CacheWriteOnly = 3; +} + +// Aliases for categories of functionality. +enum TopicRole { + TopicPermitNone = 0; + // Restricts access to apis that read and write data from topics: No higher level resource description or modification. + TopicReadWrite = 1; + // Restricts access to apis that read from topics: No higher level resource description or modification. + TopicReadOnly = 2; + // Restricts access to apis that write from topics: No higher level resource description or modification. + TopicWriteOnly = 3; +} + +enum SuperUserPermissions { + SuperUser = 0; +} + +message Permissions { + oneof kind { + SuperUserPermissions super_user = 1; + ExplicitPermissions explicit = 2; + } +} + +message ExplicitPermissions { + repeated PermissionsType permissions = 1; +} + +message PermissionsType { + oneof kind { + CachePermissions cache_permissions = 1; + TopicPermissions topic_permissions = 2; + } + + message All {} + + message CacheSelector { + oneof kind { + string cache_name = 1; + } + } + + message CacheItemSelector { + oneof kind { + bytes key = 1; + bytes key_prefix = 2; + } + } + + message CachePermissions { + CacheRole role = 1; + oneof cache { + All all_caches = 2; + CacheSelector cache_selector = 3; + } + oneof cache_item { + All all_items = 4; + CacheItemSelector item_selector = 5; + } + } + + message TopicSelector { + oneof kind { + string topic_name = 1; + string topic_name_prefix = 2; + } + } + + message TopicPermissions { + TopicRole role = 1; + oneof cache { + All all_caches = 2; + CacheSelector cache_selector = 3; + } + oneof topic { + All all_topics = 4; + TopicSelector topic_selector = 5; + } + } +} diff --git a/internal/protos/token.pb.go b/internal/protos/token.pb.go new file mode 100644 index 00000000..7e26bcd5 --- /dev/null +++ b/internal/protos/token.pb.go @@ -0,0 +1,342 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.31.0 +// protoc v3.20.3 +// source: token.proto + +package client_sdk_go + +import ( + reflect "reflect" + sync "sync" + + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type XGenerateDisposableTokenRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Expires *XGenerateDisposableTokenRequest_Expires `protobuf:"bytes,1,opt,name=expires,proto3" json:"expires,omitempty"` + AuthToken string `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"` + Permissions *Permissions `protobuf:"bytes,3,opt,name=permissions,proto3" json:"permissions,omitempty"` +} + +func (x *XGenerateDisposableTokenRequest) Reset() { + *x = XGenerateDisposableTokenRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_token_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XGenerateDisposableTokenRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XGenerateDisposableTokenRequest) ProtoMessage() {} + +func (x *XGenerateDisposableTokenRequest) ProtoReflect() protoreflect.Message { + mi := &file_token_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XGenerateDisposableTokenRequest.ProtoReflect.Descriptor instead. +func (*XGenerateDisposableTokenRequest) Descriptor() ([]byte, []int) { + return file_token_proto_rawDescGZIP(), []int{0} +} + +func (x *XGenerateDisposableTokenRequest) GetExpires() *XGenerateDisposableTokenRequest_Expires { + if x != nil { + return x.Expires + } + return nil +} + +func (x *XGenerateDisposableTokenRequest) GetAuthToken() string { + if x != nil { + return x.AuthToken + } + return "" +} + +func (x *XGenerateDisposableTokenRequest) GetPermissions() *Permissions { + if x != nil { + return x.Permissions + } + return nil +} + +type XGenerateDisposableTokenResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // the new api key used for authentication against Momento backend + ApiKey string `protobuf:"bytes,1,opt,name=api_key,json=apiKey,proto3" json:"api_key,omitempty"` + // the Momento endpoint that this token is allowed to make requests against + Endpoint string `protobuf:"bytes,2,opt,name=endpoint,proto3" json:"endpoint,omitempty"` + // epoch seconds when the api token expires + ValidUntil uint64 `protobuf:"varint,3,opt,name=valid_until,json=validUntil,proto3" json:"valid_until,omitempty"` +} + +func (x *XGenerateDisposableTokenResponse) Reset() { + *x = XGenerateDisposableTokenResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_token_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XGenerateDisposableTokenResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XGenerateDisposableTokenResponse) ProtoMessage() {} + +func (x *XGenerateDisposableTokenResponse) ProtoReflect() protoreflect.Message { + mi := &file_token_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XGenerateDisposableTokenResponse.ProtoReflect.Descriptor instead. +func (*XGenerateDisposableTokenResponse) Descriptor() ([]byte, []int) { + return file_token_proto_rawDescGZIP(), []int{1} +} + +func (x *XGenerateDisposableTokenResponse) GetApiKey() string { + if x != nil { + return x.ApiKey + } + return "" +} + +func (x *XGenerateDisposableTokenResponse) GetEndpoint() string { + if x != nil { + return x.Endpoint + } + return "" +} + +func (x *XGenerateDisposableTokenResponse) GetValidUntil() uint64 { + if x != nil { + return x.ValidUntil + } + return 0 +} + +// generate a token that has an expiry +type XGenerateDisposableTokenRequest_Expires struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // how many seconds do you want the api token to be valid for? + ValidForSeconds uint32 `protobuf:"varint,1,opt,name=valid_for_seconds,json=validForSeconds,proto3" json:"valid_for_seconds,omitempty"` +} + +func (x *XGenerateDisposableTokenRequest_Expires) Reset() { + *x = XGenerateDisposableTokenRequest_Expires{} + if protoimpl.UnsafeEnabled { + mi := &file_token_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XGenerateDisposableTokenRequest_Expires) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XGenerateDisposableTokenRequest_Expires) ProtoMessage() {} + +func (x *XGenerateDisposableTokenRequest_Expires) ProtoReflect() protoreflect.Message { + mi := &file_token_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use XGenerateDisposableTokenRequest_Expires.ProtoReflect.Descriptor instead. +func (*XGenerateDisposableTokenRequest_Expires) Descriptor() ([]byte, []int) { + return file_token_proto_rawDescGZIP(), []int{0, 0} +} + +func (x *XGenerateDisposableTokenRequest_Expires) GetValidForSeconds() uint32 { + if x != nil { + return x.ValidForSeconds + } + return 0 +} + +var File_token_proto protoreflect.FileDescriptor + +var file_token_proto_rawDesc = []byte{ + 0x0a, 0x0b, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x05, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x1a, 0x18, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x85, + 0x02, 0x0a, 0x1f, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x44, 0x69, 0x73, 0x70, + 0x6f, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x48, 0x0a, 0x07, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x2e, 0x5f, 0x47, 0x65, 0x6e, + 0x65, 0x72, 0x61, 0x74, 0x65, 0x44, 0x69, 0x73, 0x70, 0x6f, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x45, 0x78, 0x70, 0x69, + 0x72, 0x65, 0x73, 0x52, 0x07, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, + 0x61, 0x75, 0x74, 0x68, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x42, 0x0a, 0x0b, 0x70, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x20, 0x2e, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x73, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, + 0x35, 0x0a, 0x07, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x46, 0x6f, 0x72, 0x53, + 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x78, 0x0a, 0x20, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x65, 0x44, 0x69, 0x73, 0x70, 0x6f, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 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, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, + 0x1f, 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x55, 0x6e, 0x74, 0x69, 0x6c, + 0x32, 0x75, 0x0a, 0x05, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x6c, 0x0a, 0x17, 0x47, 0x65, 0x6e, + 0x65, 0x72, 0x61, 0x74, 0x65, 0x44, 0x69, 0x73, 0x70, 0x6f, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x26, 0x2e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x2e, 0x5f, 0x47, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x44, 0x69, 0x73, 0x70, 0x6f, 0x73, 0x61, 0x62, 0x6c, 0x65, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x2e, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x44, 0x69, + 0x73, 0x70, 0x6f, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x60, 0x0a, 0x0d, 0x6d, 0x6f, 0x6d, 0x65, 0x6e, + 0x74, 0x6f, 0x2e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x50, 0x01, 0x5a, 0x30, 0x67, 0x69, 0x74, 0x68, + 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x6f, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x68, 0x71, + 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, 0x73, 0x64, 0x6b, 0x2d, 0x67, 0x6f, 0x3b, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x64, 0x6b, 0x5f, 0x67, 0x6f, 0xaa, 0x02, 0x1a, 0x4d, + 0x6f, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x2e, 0x54, 0x6f, + 0x6b, 0x65, 0x6e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, +} + +var ( + file_token_proto_rawDescOnce sync.Once + file_token_proto_rawDescData = file_token_proto_rawDesc +) + +func file_token_proto_rawDescGZIP() []byte { + file_token_proto_rawDescOnce.Do(func() { + file_token_proto_rawDescData = protoimpl.X.CompressGZIP(file_token_proto_rawDescData) + }) + return file_token_proto_rawDescData +} + +var file_token_proto_msgTypes = make([]protoimpl.MessageInfo, 3) +var file_token_proto_goTypes = []interface{}{ + (*XGenerateDisposableTokenRequest)(nil), // 0: token._GenerateDisposableTokenRequest + (*XGenerateDisposableTokenResponse)(nil), // 1: token._GenerateDisposableTokenResponse + (*XGenerateDisposableTokenRequest_Expires)(nil), // 2: token._GenerateDisposableTokenRequest.Expires + (*Permissions)(nil), // 3: permission_messages.Permissions +} +var file_token_proto_depIdxs = []int32{ + 2, // 0: token._GenerateDisposableTokenRequest.expires:type_name -> token._GenerateDisposableTokenRequest.Expires + 3, // 1: token._GenerateDisposableTokenRequest.permissions:type_name -> permission_messages.Permissions + 0, // 2: token.Token.GenerateDisposableToken:input_type -> token._GenerateDisposableTokenRequest + 1, // 3: token.Token.GenerateDisposableToken:output_type -> token._GenerateDisposableTokenResponse + 3, // [3:4] is the sub-list for method output_type + 2, // [2:3] is the sub-list for method input_type + 2, // [2:2] is the sub-list for extension type_name + 2, // [2:2] is the sub-list for extension extendee + 0, // [0:2] is the sub-list for field type_name +} + +func init() { file_token_proto_init() } +func file_token_proto_init() { + if File_token_proto != nil { + return + } + file_permissionmessages_proto_init() + if !protoimpl.UnsafeEnabled { + file_token_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XGenerateDisposableTokenRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_token_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XGenerateDisposableTokenResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_token_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XGenerateDisposableTokenRequest_Expires); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_token_proto_rawDesc, + NumEnums: 0, + NumMessages: 3, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_token_proto_goTypes, + DependencyIndexes: file_token_proto_depIdxs, + MessageInfos: file_token_proto_msgTypes, + }.Build() + File_token_proto = out.File + file_token_proto_rawDesc = nil + file_token_proto_goTypes = nil + file_token_proto_depIdxs = nil +} diff --git a/internal/protos/token.proto b/internal/protos/token.proto new file mode 100644 index 00000000..e69302af --- /dev/null +++ b/internal/protos/token.proto @@ -0,0 +1,38 @@ +syntax = "proto3"; + +import "permissionmessages.proto"; + +option go_package = "github.com/momentohq/client-sdk-go;client_sdk_go"; +option java_multiple_files = true; +option java_package = "momento.token"; +option csharp_namespace = "Momento.Protos.TokenClient"; + +package token; + +service Token { + rpc GenerateDisposableToken (_GenerateDisposableTokenRequest) returns (_GenerateDisposableTokenResponse) {} +} + +message _GenerateDisposableTokenRequest { + // generate a token that has an expiry + message Expires { + // how many seconds do you want the api token to be valid for? + uint32 valid_for_seconds = 1; + } + + Expires expires = 1; + + string auth_token = 2; + + permission_messages.Permissions permissions = 3; +} + +message _GenerateDisposableTokenResponse { + // the new api key used for authentication against Momento backend + string api_key = 1; + // the Momento endpoint that this token is allowed to make requests against + string endpoint = 2; + // epoch seconds when the api token expires + uint64 valid_until = 3; + +} diff --git a/internal/protos/token_grpc.pb.go b/internal/protos/token_grpc.pb.go new file mode 100644 index 00000000..fb8a036d --- /dev/null +++ b/internal/protos/token_grpc.pb.go @@ -0,0 +1,110 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.3.0 +// - protoc v3.20.3 +// source: token.proto + +package client_sdk_go + +import ( + context "context" + + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +const ( + Token_GenerateDisposableToken_FullMethodName = "/token.Token/GenerateDisposableToken" +) + +// TokenClient is the client API for Token service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type TokenClient interface { + GenerateDisposableToken(ctx context.Context, in *XGenerateDisposableTokenRequest, opts ...grpc.CallOption) (*XGenerateDisposableTokenResponse, error) +} + +type tokenClient struct { + cc grpc.ClientConnInterface +} + +func NewTokenClient(cc grpc.ClientConnInterface) TokenClient { + return &tokenClient{cc} +} + +func (c *tokenClient) GenerateDisposableToken(ctx context.Context, in *XGenerateDisposableTokenRequest, opts ...grpc.CallOption) (*XGenerateDisposableTokenResponse, error) { + out := new(XGenerateDisposableTokenResponse) + err := c.cc.Invoke(ctx, Token_GenerateDisposableToken_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// TokenServer is the server API for Token service. +// All implementations must embed UnimplementedTokenServer +// for forward compatibility +type TokenServer interface { + GenerateDisposableToken(context.Context, *XGenerateDisposableTokenRequest) (*XGenerateDisposableTokenResponse, error) + mustEmbedUnimplementedTokenServer() +} + +// UnimplementedTokenServer must be embedded to have forward compatible implementations. +type UnimplementedTokenServer struct { +} + +func (UnimplementedTokenServer) GenerateDisposableToken(context.Context, *XGenerateDisposableTokenRequest) (*XGenerateDisposableTokenResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GenerateDisposableToken not implemented") +} +func (UnimplementedTokenServer) mustEmbedUnimplementedTokenServer() {} + +// UnsafeTokenServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to TokenServer will +// result in compilation errors. +type UnsafeTokenServer interface { + mustEmbedUnimplementedTokenServer() +} + +func RegisterTokenServer(s grpc.ServiceRegistrar, srv TokenServer) { + s.RegisterService(&Token_ServiceDesc, srv) +} + +func _Token_GenerateDisposableToken_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(XGenerateDisposableTokenRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(TokenServer).GenerateDisposableToken(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Token_GenerateDisposableToken_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(TokenServer).GenerateDisposableToken(ctx, req.(*XGenerateDisposableTokenRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// Token_ServiceDesc is the grpc.ServiceDesc for Token service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var Token_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "token.Token", + HandlerType: (*TokenServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "GenerateDisposableToken", + Handler: _Token_GenerateDisposableToken_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "token.proto", +}