// Copyright 2018-2021 CERN
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// In applying this license, CERN does not waive the privileges and immunities
// granted to it by virtue of its status as an Intergovernmental Organization
// or submit itself to any jurisdiction.

// @project        The CERN Tape Archive (CTA)
// @brief          CTA-EOS gRPC API for CASTOR-EOS migration
// @copyright      Copyright 2019 CERN
// @license        This program is free software: you can redistribute it and/or
// modify
//                 it under the terms of the GNU General Public License as
//                 published by the Free Software Foundation, either version 3
//                 of the License, or (at your option) any later version.
//
//                 This program is distributed in the hope that it will be
//                 useful, but WITHOUT ANY WARRANTY; without even the implied
//                 warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
//                 PURPOSE.  See the GNU General Public License for more
//                 details.
//
//                 You should have received a copy of the GNU General Public
//                 License along with this program.  If not, see
//                 <http://www.gnu.org/licenses/>.

// NOTE: Compile for Go with:
// protoc ./eos_grpc.proto --go_out=plugins=grpc:.

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.28.1
// 	protoc        v3.21.7
// source: Rpc.proto

package eos_grpc

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 TYPE int32

const (
	TYPE_FILE      TYPE = 0
	TYPE_CONTAINER TYPE = 1
	TYPE_LISTING   TYPE = 2
	TYPE_STAT      TYPE = 3
)

// Enum value maps for TYPE.
var (
	TYPE_name = map[int32]string{
		0: "FILE",
		1: "CONTAINER",
		2: "LISTING",
		3: "STAT",
	}
	TYPE_value = map[string]int32{
		"FILE":      0,
		"CONTAINER": 1,
		"LISTING":   2,
		"STAT":      3,
	}
)

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

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

func (TYPE) Descriptor() protoreflect.EnumDescriptor {
	return file_Rpc_proto_enumTypes[0].Descriptor()
}

func (TYPE) Type() protoreflect.EnumType {
	return &file_Rpc_proto_enumTypes[0]
}

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

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

type QUOTATYPE int32

const (
	QUOTATYPE_USER    QUOTATYPE = 0
	QUOTATYPE_GROUP   QUOTATYPE = 2
	QUOTATYPE_PROJECT QUOTATYPE = 3
)

// Enum value maps for QUOTATYPE.
var (
	QUOTATYPE_name = map[int32]string{
		0: "USER",
		2: "GROUP",
		3: "PROJECT",
	}
	QUOTATYPE_value = map[string]int32{
		"USER":    0,
		"GROUP":   2,
		"PROJECT": 3,
	}
)

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

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

func (QUOTATYPE) Descriptor() protoreflect.EnumDescriptor {
	return file_Rpc_proto_enumTypes[1].Descriptor()
}

func (QUOTATYPE) Type() protoreflect.EnumType {
	return &file_Rpc_proto_enumTypes[1]
}

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

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

type QUOTAOP int32

const (
	QUOTAOP_GET    QUOTAOP = 0
	QUOTAOP_SET    QUOTAOP = 1
	QUOTAOP_RM     QUOTAOP = 2
	QUOTAOP_RMNODE QUOTAOP = 3
)

// Enum value maps for QUOTAOP.
var (
	QUOTAOP_name = map[int32]string{
		0: "GET",
		1: "SET",
		2: "RM",
		3: "RMNODE",
	}
	QUOTAOP_value = map[string]int32{
		"GET":    0,
		"SET":    1,
		"RM":     2,
		"RMNODE": 3,
	}
)

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

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

func (QUOTAOP) Descriptor() protoreflect.EnumDescriptor {
	return file_Rpc_proto_enumTypes[2].Descriptor()
}

func (QUOTAOP) Type() protoreflect.EnumType {
	return &file_Rpc_proto_enumTypes[2]
}

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

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

type QUOTAENTRY int32

const (
	QUOTAENTRY_NONE   QUOTAENTRY = 0
	QUOTAENTRY_VOLUME QUOTAENTRY = 1
	QUOTAENTRY_INODE  QUOTAENTRY = 2
)

// Enum value maps for QUOTAENTRY.
var (
	QUOTAENTRY_name = map[int32]string{
		0: "NONE",
		1: "VOLUME",
		2: "INODE",
	}
	QUOTAENTRY_value = map[string]int32{
		"NONE":   0,
		"VOLUME": 1,
		"INODE":  2,
	}
)

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

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

func (QUOTAENTRY) Descriptor() protoreflect.EnumDescriptor {
	return file_Rpc_proto_enumTypes[3].Descriptor()
}

func (QUOTAENTRY) Type() protoreflect.EnumType {
	return &file_Rpc_proto_enumTypes[3]
}

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

// Deprecated: Use QUOTAENTRY.Descriptor instead.
func (QUOTAENTRY) EnumDescriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{3}
}

type MANILA_REQUEST_TYPE int32

const (
	MANILA_REQUEST_TYPE_CREATE_SHARE    MANILA_REQUEST_TYPE = 0
	MANILA_REQUEST_TYPE_DELETE_SHARE    MANILA_REQUEST_TYPE = 1
	MANILA_REQUEST_TYPE_EXTEND_SHARE    MANILA_REQUEST_TYPE = 2
	MANILA_REQUEST_TYPE_SHRINK_SHARE    MANILA_REQUEST_TYPE = 3
	MANILA_REQUEST_TYPE_MANAGE_EXISTING MANILA_REQUEST_TYPE = 4
	MANILA_REQUEST_TYPE_UNMANAGE        MANILA_REQUEST_TYPE = 5
	MANILA_REQUEST_TYPE_GET_CAPACITIES  MANILA_REQUEST_TYPE = 6 // EXTRA FUNCTIONS NOT IMPLEMENTED
)

// Enum value maps for MANILA_REQUEST_TYPE.
var (
	MANILA_REQUEST_TYPE_name = map[int32]string{
		0: "CREATE_SHARE",
		1: "DELETE_SHARE",
		2: "EXTEND_SHARE",
		3: "SHRINK_SHARE",
		4: "MANAGE_EXISTING",
		5: "UNMANAGE",
		6: "GET_CAPACITIES",
	}
	MANILA_REQUEST_TYPE_value = map[string]int32{
		"CREATE_SHARE":    0,
		"DELETE_SHARE":    1,
		"EXTEND_SHARE":    2,
		"SHRINK_SHARE":    3,
		"MANAGE_EXISTING": 4,
		"UNMANAGE":        5,
		"GET_CAPACITIES":  6,
	}
)

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

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

func (MANILA_REQUEST_TYPE) Descriptor() protoreflect.EnumDescriptor {
	return file_Rpc_proto_enumTypes[4].Descriptor()
}

func (MANILA_REQUEST_TYPE) Type() protoreflect.EnumType {
	return &file_Rpc_proto_enumTypes[4]
}

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

// Deprecated: Use MANILA_REQUEST_TYPE.Descriptor instead.
func (MANILA_REQUEST_TYPE) EnumDescriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{4}
}

type NSRequest_VersionRequest_VERSION_CMD int32

const (
	NSRequest_VersionRequest_CREATE NSRequest_VersionRequest_VERSION_CMD = 0
	NSRequest_VersionRequest_PURGE  NSRequest_VersionRequest_VERSION_CMD = 1
	NSRequest_VersionRequest_LIST   NSRequest_VersionRequest_VERSION_CMD = 2
	NSRequest_VersionRequest_GRAB   NSRequest_VersionRequest_VERSION_CMD = 3
)

// Enum value maps for NSRequest_VersionRequest_VERSION_CMD.
var (
	NSRequest_VersionRequest_VERSION_CMD_name = map[int32]string{
		0: "CREATE",
		1: "PURGE",
		2: "LIST",
		3: "GRAB",
	}
	NSRequest_VersionRequest_VERSION_CMD_value = map[string]int32{
		"CREATE": 0,
		"PURGE":  1,
		"LIST":   2,
		"GRAB":   3,
	}
)

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

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

func (NSRequest_VersionRequest_VERSION_CMD) Descriptor() protoreflect.EnumDescriptor {
	return file_Rpc_proto_enumTypes[5].Descriptor()
}

func (NSRequest_VersionRequest_VERSION_CMD) Type() protoreflect.EnumType {
	return &file_Rpc_proto_enumTypes[5]
}

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

// Deprecated: Use NSRequest_VersionRequest_VERSION_CMD.Descriptor instead.
func (NSRequest_VersionRequest_VERSION_CMD) EnumDescriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 7, 0}
}

type NSRequest_RecycleRequest_RECYCLE_CMD int32

const (
	NSRequest_RecycleRequest_RESTORE NSRequest_RecycleRequest_RECYCLE_CMD = 0
	NSRequest_RecycleRequest_PURGE   NSRequest_RecycleRequest_RECYCLE_CMD = 1
	NSRequest_RecycleRequest_LIST    NSRequest_RecycleRequest_RECYCLE_CMD = 2
)

// Enum value maps for NSRequest_RecycleRequest_RECYCLE_CMD.
var (
	NSRequest_RecycleRequest_RECYCLE_CMD_name = map[int32]string{
		0: "RESTORE",
		1: "PURGE",
		2: "LIST",
	}
	NSRequest_RecycleRequest_RECYCLE_CMD_value = map[string]int32{
		"RESTORE": 0,
		"PURGE":   1,
		"LIST":    2,
	}
)

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

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

func (NSRequest_RecycleRequest_RECYCLE_CMD) Descriptor() protoreflect.EnumDescriptor {
	return file_Rpc_proto_enumTypes[6].Descriptor()
}

func (NSRequest_RecycleRequest_RECYCLE_CMD) Type() protoreflect.EnumType {
	return &file_Rpc_proto_enumTypes[6]
}

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

// Deprecated: Use NSRequest_RecycleRequest_RECYCLE_CMD.Descriptor instead.
func (NSRequest_RecycleRequest_RECYCLE_CMD) EnumDescriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 8, 0}
}

type NSRequest_AclRequest_ACL_COMMAND int32

const (
	NSRequest_AclRequest_NONE   NSRequest_AclRequest_ACL_COMMAND = 0
	NSRequest_AclRequest_MODIFY NSRequest_AclRequest_ACL_COMMAND = 1
	NSRequest_AclRequest_LIST   NSRequest_AclRequest_ACL_COMMAND = 2
)

// Enum value maps for NSRequest_AclRequest_ACL_COMMAND.
var (
	NSRequest_AclRequest_ACL_COMMAND_name = map[int32]string{
		0: "NONE",
		1: "MODIFY",
		2: "LIST",
	}
	NSRequest_AclRequest_ACL_COMMAND_value = map[string]int32{
		"NONE":   0,
		"MODIFY": 1,
		"LIST":   2,
	}
)

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

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

func (NSRequest_AclRequest_ACL_COMMAND) Descriptor() protoreflect.EnumDescriptor {
	return file_Rpc_proto_enumTypes[7].Descriptor()
}

func (NSRequest_AclRequest_ACL_COMMAND) Type() protoreflect.EnumType {
	return &file_Rpc_proto_enumTypes[7]
}

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

// Deprecated: Use NSRequest_AclRequest_ACL_COMMAND.Descriptor instead.
func (NSRequest_AclRequest_ACL_COMMAND) EnumDescriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 12, 0}
}

type NSRequest_AclRequest_ACL_TYPE int32

const (
	NSRequest_AclRequest_USER_ACL NSRequest_AclRequest_ACL_TYPE = 0
	NSRequest_AclRequest_SYS_ACL  NSRequest_AclRequest_ACL_TYPE = 1
)

// Enum value maps for NSRequest_AclRequest_ACL_TYPE.
var (
	NSRequest_AclRequest_ACL_TYPE_name = map[int32]string{
		0: "USER_ACL",
		1: "SYS_ACL",
	}
	NSRequest_AclRequest_ACL_TYPE_value = map[string]int32{
		"USER_ACL": 0,
		"SYS_ACL":  1,
	}
)

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

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

func (NSRequest_AclRequest_ACL_TYPE) Descriptor() protoreflect.EnumDescriptor {
	return file_Rpc_proto_enumTypes[8].Descriptor()
}

func (NSRequest_AclRequest_ACL_TYPE) Type() protoreflect.EnumType {
	return &file_Rpc_proto_enumTypes[8]
}

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

// Deprecated: Use NSRequest_AclRequest_ACL_TYPE.Descriptor instead.
func (NSRequest_AclRequest_ACL_TYPE) EnumDescriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 12, 1}
}

type NSRequest_ShareRequest_LsShare_OutFormat int32

const (
	NSRequest_ShareRequest_LsShare_NONE       NSRequest_ShareRequest_LsShare_OutFormat = 0 //
	NSRequest_ShareRequest_LsShare_MONITORING NSRequest_ShareRequest_LsShare_OutFormat = 1 // [-m]
	NSRequest_ShareRequest_LsShare_LISTING    NSRequest_ShareRequest_LsShare_OutFormat = 2 // [-l]
	NSRequest_ShareRequest_LsShare_JSON       NSRequest_ShareRequest_LsShare_OutFormat = 3 // [grpc]
)

// Enum value maps for NSRequest_ShareRequest_LsShare_OutFormat.
var (
	NSRequest_ShareRequest_LsShare_OutFormat_name = map[int32]string{
		0: "NONE",
		1: "MONITORING",
		2: "LISTING",
		3: "JSON",
	}
	NSRequest_ShareRequest_LsShare_OutFormat_value = map[string]int32{
		"NONE":       0,
		"MONITORING": 1,
		"LISTING":    2,
		"JSON":       3,
	}
)

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

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

func (NSRequest_ShareRequest_LsShare_OutFormat) Descriptor() protoreflect.EnumDescriptor {
	return file_Rpc_proto_enumTypes[9].Descriptor()
}

func (NSRequest_ShareRequest_LsShare_OutFormat) Type() protoreflect.EnumType {
	return &file_Rpc_proto_enumTypes[9]
}

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

// Deprecated: Use NSRequest_ShareRequest_LsShare_OutFormat.Descriptor instead.
func (NSRequest_ShareRequest_LsShare_OutFormat) EnumDescriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 15, 0, 0}
}

type NSRequest_ShareRequest_OperateShare_Op int32

const (
	NSRequest_ShareRequest_OperateShare_CREATE  NSRequest_ShareRequest_OperateShare_Op = 0
	NSRequest_ShareRequest_OperateShare_REMOVE  NSRequest_ShareRequest_OperateShare_Op = 1
	NSRequest_ShareRequest_OperateShare_SHARE   NSRequest_ShareRequest_OperateShare_Op = 2
	NSRequest_ShareRequest_OperateShare_UNSHARE NSRequest_ShareRequest_OperateShare_Op = 3
	NSRequest_ShareRequest_OperateShare_ACCESS  NSRequest_ShareRequest_OperateShare_Op = 4
	NSRequest_ShareRequest_OperateShare_MODIFY  NSRequest_ShareRequest_OperateShare_Op = 5
)

// Enum value maps for NSRequest_ShareRequest_OperateShare_Op.
var (
	NSRequest_ShareRequest_OperateShare_Op_name = map[int32]string{
		0: "CREATE",
		1: "REMOVE",
		2: "SHARE",
		3: "UNSHARE",
		4: "ACCESS",
		5: "MODIFY",
	}
	NSRequest_ShareRequest_OperateShare_Op_value = map[string]int32{
		"CREATE":  0,
		"REMOVE":  1,
		"SHARE":   2,
		"UNSHARE": 3,
		"ACCESS":  4,
		"MODIFY":  5,
	}
)

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

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

func (NSRequest_ShareRequest_OperateShare_Op) Descriptor() protoreflect.EnumDescriptor {
	return file_Rpc_proto_enumTypes[10].Descriptor()
}

func (NSRequest_ShareRequest_OperateShare_Op) Type() protoreflect.EnumType {
	return &file_Rpc_proto_enumTypes[10]
}

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

// Deprecated: Use NSRequest_ShareRequest_OperateShare_Op.Descriptor instead.
func (NSRequest_ShareRequest_OperateShare_Op) EnumDescriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 15, 1, 0}
}

type NSResponse_RecycleResponse_RecycleInfo_DELETIONTYPE int32

const (
	NSResponse_RecycleResponse_RecycleInfo_FILE NSResponse_RecycleResponse_RecycleInfo_DELETIONTYPE = 0
	NSResponse_RecycleResponse_RecycleInfo_TREE NSResponse_RecycleResponse_RecycleInfo_DELETIONTYPE = 1
)

// Enum value maps for NSResponse_RecycleResponse_RecycleInfo_DELETIONTYPE.
var (
	NSResponse_RecycleResponse_RecycleInfo_DELETIONTYPE_name = map[int32]string{
		0: "FILE",
		1: "TREE",
	}
	NSResponse_RecycleResponse_RecycleInfo_DELETIONTYPE_value = map[string]int32{
		"FILE": 0,
		"TREE": 1,
	}
)

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

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

func (NSResponse_RecycleResponse_RecycleInfo_DELETIONTYPE) Descriptor() protoreflect.EnumDescriptor {
	return file_Rpc_proto_enumTypes[11].Descriptor()
}

func (NSResponse_RecycleResponse_RecycleInfo_DELETIONTYPE) Type() protoreflect.EnumType {
	return &file_Rpc_proto_enumTypes[11]
}

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

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

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

	Authkey string `protobuf:"bytes,1,opt,name=authkey,proto3" json:"authkey,omitempty"`
	Message []byte `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
}

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

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

func (*PingRequest) ProtoMessage() {}

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

func (x *PingRequest) GetAuthkey() string {
	if x != nil {
		return x.Authkey
	}
	return ""
}

func (x *PingRequest) GetMessage() []byte {
	if x != nil {
		return x.Message
	}
	return nil
}

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

	Message []byte `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
}

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

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

func (*PingReply) ProtoMessage() {}

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

func (x *PingReply) GetMessage() []byte {
	if x != nil {
		return x.Message
	}
	return nil
}

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

	Container []*ContainerMdProto `protobuf:"bytes,1,rep,name=container,proto3" json:"container,omitempty"`
	Authkey   string              `protobuf:"bytes,2,opt,name=authkey,proto3" json:"authkey,omitempty"`
	InheritMd bool                `protobuf:"varint,3,opt,name=inherit_md,json=inheritMd,proto3" json:"inherit_md,omitempty"`
}

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

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

func (*ContainerInsertRequest) ProtoMessage() {}

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

func (x *ContainerInsertRequest) GetContainer() []*ContainerMdProto {
	if x != nil {
		return x.Container
	}
	return nil
}

func (x *ContainerInsertRequest) GetAuthkey() string {
	if x != nil {
		return x.Authkey
	}
	return ""
}

func (x *ContainerInsertRequest) GetInheritMd() bool {
	if x != nil {
		return x.InheritMd
	}
	return false
}

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

	Files   []*FileMdProto `protobuf:"bytes,1,rep,name=files,proto3" json:"files,omitempty"`
	Authkey string         `protobuf:"bytes,2,opt,name=authkey,proto3" json:"authkey,omitempty"`
}

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

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

func (*FileInsertRequest) ProtoMessage() {}

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

func (x *FileInsertRequest) GetFiles() []*FileMdProto {
	if x != nil {
		return x.Files
	}
	return nil
}

func (x *FileInsertRequest) GetAuthkey() string {
	if x != nil {
		return x.Authkey
	}
	return ""
}

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

	Message []string `protobuf:"bytes,1,rep,name=message,proto3" json:"message,omitempty"`
	Retc    []uint32 `protobuf:"varint,2,rep,packed,name=retc,proto3" json:"retc,omitempty"`
}

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

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

func (*InsertReply) ProtoMessage() {}

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

func (x *InsertReply) GetMessage() []string {
	if x != nil {
		return x.Message
	}
	return nil
}

func (x *InsertReply) GetRetc() []uint32 {
	if x != nil {
		return x.Retc
	}
	return nil
}

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

	Sec  uint64 `protobuf:"varint,1,opt,name=sec,proto3" json:"sec,omitempty"`
	NSec uint64 `protobuf:"varint,2,opt,name=n_sec,json=nSec,proto3" json:"n_sec,omitempty"`
}

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

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

func (*Time) ProtoMessage() {}

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

func (x *Time) GetSec() uint64 {
	if x != nil {
		return x.Sec
	}
	return 0
}

func (x *Time) GetNSec() uint64 {
	if x != nil {
		return x.NSec
	}
	return 0
}

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

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

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

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

func (*Checksum) ProtoMessage() {}

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

func (x *Checksum) GetValue() []byte {
	if x != nil {
		return x.Value
	}
	return nil
}

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

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

	Id              uint64            `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	ContId          uint64            `protobuf:"varint,2,opt,name=cont_id,json=contId,proto3" json:"cont_id,omitempty"`
	Uid             uint64            `protobuf:"varint,3,opt,name=uid,proto3" json:"uid,omitempty"`
	Gid             uint64            `protobuf:"varint,4,opt,name=gid,proto3" json:"gid,omitempty"`
	Size            uint64            `protobuf:"varint,5,opt,name=size,proto3" json:"size,omitempty"`
	LayoutId        uint32            `protobuf:"varint,6,opt,name=layout_id,json=layoutId,proto3" json:"layout_id,omitempty"`
	Flags           uint32            `protobuf:"varint,7,opt,name=flags,proto3" json:"flags,omitempty"`
	Name            []byte            `protobuf:"bytes,8,opt,name=name,proto3" json:"name,omitempty"`
	LinkName        []byte            `protobuf:"bytes,9,opt,name=link_name,json=linkName,proto3" json:"link_name,omitempty"`
	Ctime           *Time             `protobuf:"bytes,10,opt,name=ctime,proto3" json:"ctime,omitempty"` // change time
	Mtime           *Time             `protobuf:"bytes,11,opt,name=mtime,proto3" json:"mtime,omitempty"` // modification time
	Checksum        *Checksum         `protobuf:"bytes,12,opt,name=checksum,proto3" json:"checksum,omitempty"`
	Locations       []uint32          `protobuf:"varint,13,rep,packed,name=locations,proto3" json:"locations,omitempty"`
	UnlinkLocations []uint32          `protobuf:"varint,14,rep,packed,name=unlink_locations,json=unlinkLocations,proto3" json:"unlink_locations,omitempty"`
	Xattrs          map[string][]byte `protobuf:"bytes,15,rep,name=xattrs,proto3" json:"xattrs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	Path            []byte            `protobuf:"bytes,16,opt,name=path,proto3" json:"path,omitempty"`
	Etag            string            `protobuf:"bytes,17,opt,name=etag,proto3" json:"etag,omitempty"`
	Inode           uint64            `protobuf:"varint,18,opt,name=inode,proto3" json:"inode,omitempty"`
}

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

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

func (*FileMdProto) ProtoMessage() {}

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

func (x *FileMdProto) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *FileMdProto) GetContId() uint64 {
	if x != nil {
		return x.ContId
	}
	return 0
}

func (x *FileMdProto) GetUid() uint64 {
	if x != nil {
		return x.Uid
	}
	return 0
}

func (x *FileMdProto) GetGid() uint64 {
	if x != nil {
		return x.Gid
	}
	return 0
}

func (x *FileMdProto) GetSize() uint64 {
	if x != nil {
		return x.Size
	}
	return 0
}

func (x *FileMdProto) GetLayoutId() uint32 {
	if x != nil {
		return x.LayoutId
	}
	return 0
}

func (x *FileMdProto) GetFlags() uint32 {
	if x != nil {
		return x.Flags
	}
	return 0
}

func (x *FileMdProto) GetName() []byte {
	if x != nil {
		return x.Name
	}
	return nil
}

func (x *FileMdProto) GetLinkName() []byte {
	if x != nil {
		return x.LinkName
	}
	return nil
}

func (x *FileMdProto) GetCtime() *Time {
	if x != nil {
		return x.Ctime
	}
	return nil
}

func (x *FileMdProto) GetMtime() *Time {
	if x != nil {
		return x.Mtime
	}
	return nil
}

func (x *FileMdProto) GetChecksum() *Checksum {
	if x != nil {
		return x.Checksum
	}
	return nil
}

func (x *FileMdProto) GetLocations() []uint32 {
	if x != nil {
		return x.Locations
	}
	return nil
}

func (x *FileMdProto) GetUnlinkLocations() []uint32 {
	if x != nil {
		return x.UnlinkLocations
	}
	return nil
}

func (x *FileMdProto) GetXattrs() map[string][]byte {
	if x != nil {
		return x.Xattrs
	}
	return nil
}

func (x *FileMdProto) GetPath() []byte {
	if x != nil {
		return x.Path
	}
	return nil
}

func (x *FileMdProto) GetEtag() string {
	if x != nil {
		return x.Etag
	}
	return ""
}

func (x *FileMdProto) GetInode() uint64 {
	if x != nil {
		return x.Inode
	}
	return 0
}

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

	Id       uint64            `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	ParentId uint64            `protobuf:"varint,2,opt,name=parent_id,json=parentId,proto3" json:"parent_id,omitempty"`
	Uid      uint64            `protobuf:"varint,3,opt,name=uid,proto3" json:"uid,omitempty"`
	Gid      uint64            `protobuf:"varint,4,opt,name=gid,proto3" json:"gid,omitempty"`
	TreeSize int64             `protobuf:"varint,6,opt,name=tree_size,json=treeSize,proto3" json:"tree_size,omitempty"`
	Mode     uint32            `protobuf:"varint,5,opt,name=mode,proto3" json:"mode,omitempty"`
	Flags    uint32            `protobuf:"varint,7,opt,name=flags,proto3" json:"flags,omitempty"`
	Name     []byte            `protobuf:"bytes,8,opt,name=name,proto3" json:"name,omitempty"`
	Ctime    *Time             `protobuf:"bytes,9,opt,name=ctime,proto3" json:"ctime,omitempty"`  // change time
	Mtime    *Time             `protobuf:"bytes,10,opt,name=mtime,proto3" json:"mtime,omitempty"` // modification time
	Stime    *Time             `protobuf:"bytes,11,opt,name=stime,proto3" json:"stime,omitempty"` // sync time
	Xattrs   map[string][]byte `protobuf:"bytes,12,rep,name=xattrs,proto3" json:"xattrs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	Path     []byte            `protobuf:"bytes,13,opt,name=path,proto3" json:"path,omitempty"`
	Etag     string            `protobuf:"bytes,14,opt,name=etag,proto3" json:"etag,omitempty"`
	Inode    uint64            `protobuf:"varint,15,opt,name=inode,proto3" json:"inode,omitempty"`
}

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

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

func (*ContainerMdProto) ProtoMessage() {}

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

func (x *ContainerMdProto) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *ContainerMdProto) GetParentId() uint64 {
	if x != nil {
		return x.ParentId
	}
	return 0
}

func (x *ContainerMdProto) GetUid() uint64 {
	if x != nil {
		return x.Uid
	}
	return 0
}

func (x *ContainerMdProto) GetGid() uint64 {
	if x != nil {
		return x.Gid
	}
	return 0
}

func (x *ContainerMdProto) GetTreeSize() int64 {
	if x != nil {
		return x.TreeSize
	}
	return 0
}

func (x *ContainerMdProto) GetMode() uint32 {
	if x != nil {
		return x.Mode
	}
	return 0
}

func (x *ContainerMdProto) GetFlags() uint32 {
	if x != nil {
		return x.Flags
	}
	return 0
}

func (x *ContainerMdProto) GetName() []byte {
	if x != nil {
		return x.Name
	}
	return nil
}

func (x *ContainerMdProto) GetCtime() *Time {
	if x != nil {
		return x.Ctime
	}
	return nil
}

func (x *ContainerMdProto) GetMtime() *Time {
	if x != nil {
		return x.Mtime
	}
	return nil
}

func (x *ContainerMdProto) GetStime() *Time {
	if x != nil {
		return x.Stime
	}
	return nil
}

func (x *ContainerMdProto) GetXattrs() map[string][]byte {
	if x != nil {
		return x.Xattrs
	}
	return nil
}

func (x *ContainerMdProto) GetPath() []byte {
	if x != nil {
		return x.Path
	}
	return nil
}

func (x *ContainerMdProto) GetEtag() string {
	if x != nil {
		return x.Etag
	}
	return ""
}

func (x *ContainerMdProto) GetInode() uint64 {
	if x != nil {
		return x.Inode
	}
	return 0
}

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

	Path                []byte    `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`                                  // quota node path
	Name                string    `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`                                  // associated name for the given type
	Type                QUOTATYPE `protobuf:"varint,3,opt,name=type,proto3,enum=eos.rpc.QUOTATYPE" json:"type,omitempty"`          // user,group,project or all quota
	Usedbytes           uint64    `protobuf:"varint,4,opt,name=usedbytes,proto3" json:"usedbytes,omitempty"`                       // bytes used physical
	Usedlogicalbytes    uint64    `protobuf:"varint,5,opt,name=usedlogicalbytes,proto3" json:"usedlogicalbytes,omitempty"`         // bytes used logical
	Usedfiles           uint64    `protobuf:"varint,6,opt,name=usedfiles,proto3" json:"usedfiles,omitempty"`                       // number of files used
	Maxbytes            uint64    `protobuf:"varint,7,opt,name=maxbytes,proto3" json:"maxbytes,omitempty"`                         // maximum number of bytes (volume quota)
	Maxlogicalbytes     uint64    `protobuf:"varint,8,opt,name=maxlogicalbytes,proto3" json:"maxlogicalbytes,omitempty"`           // maximum number of logical bytes (logical volume quota)
	Maxfiles            uint64    `protobuf:"varint,9,opt,name=maxfiles,proto3" json:"maxfiles,omitempty"`                         // maximum number of files (inode quota)
	Percentageusedbytes float32   `protobuf:"fixed32,10,opt,name=percentageusedbytes,proto3" json:"percentageusedbytes,omitempty"` // percentage of volume quota used from 0 to 100
	Percentageusedfiles float32   `protobuf:"fixed32,11,opt,name=percentageusedfiles,proto3" json:"percentageusedfiles,omitempty"` // percentag of inode quota used from 0 to 100
	Statusbytes         string    `protobuf:"bytes,12,opt,name=statusbytes,proto3" json:"statusbytes,omitempty"`                   // status string for volume quota ok,warning,exceeded
	Statusfiles         string    `protobuf:"bytes,13,opt,name=statusfiles,proto3" json:"statusfiles,omitempty"`                   // status string for inode quota ok,warning,exceeded
}

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

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

func (*QuotaProto) ProtoMessage() {}

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

// Deprecated: Use QuotaProto.ProtoReflect.Descriptor instead.
func (*QuotaProto) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{9}
}

func (x *QuotaProto) GetPath() []byte {
	if x != nil {
		return x.Path
	}
	return nil
}

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

func (x *QuotaProto) GetType() QUOTATYPE {
	if x != nil {
		return x.Type
	}
	return QUOTATYPE_USER
}

func (x *QuotaProto) GetUsedbytes() uint64 {
	if x != nil {
		return x.Usedbytes
	}
	return 0
}

func (x *QuotaProto) GetUsedlogicalbytes() uint64 {
	if x != nil {
		return x.Usedlogicalbytes
	}
	return 0
}

func (x *QuotaProto) GetUsedfiles() uint64 {
	if x != nil {
		return x.Usedfiles
	}
	return 0
}

func (x *QuotaProto) GetMaxbytes() uint64 {
	if x != nil {
		return x.Maxbytes
	}
	return 0
}

func (x *QuotaProto) GetMaxlogicalbytes() uint64 {
	if x != nil {
		return x.Maxlogicalbytes
	}
	return 0
}

func (x *QuotaProto) GetMaxfiles() uint64 {
	if x != nil {
		return x.Maxfiles
	}
	return 0
}

func (x *QuotaProto) GetPercentageusedbytes() float32 {
	if x != nil {
		return x.Percentageusedbytes
	}
	return 0
}

func (x *QuotaProto) GetPercentageusedfiles() float32 {
	if x != nil {
		return x.Percentageusedfiles
	}
	return 0
}

func (x *QuotaProto) GetStatusbytes() string {
	if x != nil {
		return x.Statusbytes
	}
	return ""
}

func (x *QuotaProto) GetStatusfiles() string {
	if x != nil {
		return x.Statusfiles
	}
	return ""
}

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

	Uid       uint64 `protobuf:"varint,1,opt,name=uid,proto3" json:"uid,omitempty"`
	Gid       uint64 `protobuf:"varint,2,opt,name=gid,proto3" json:"gid,omitempty"`
	Username  string `protobuf:"bytes,3,opt,name=username,proto3" json:"username,omitempty"`
	Groupname string `protobuf:"bytes,4,opt,name=groupname,proto3" json:"groupname,omitempty"`
}

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

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

func (*RoleId) ProtoMessage() {}

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

// Deprecated: Use RoleId.ProtoReflect.Descriptor instead.
func (*RoleId) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{10}
}

func (x *RoleId) GetUid() uint64 {
	if x != nil {
		return x.Uid
	}
	return 0
}

func (x *RoleId) GetGid() uint64 {
	if x != nil {
		return x.Gid
	}
	return 0
}

func (x *RoleId) GetUsername() string {
	if x != nil {
		return x.Username
	}
	return ""
}

func (x *RoleId) GetGroupname() string {
	if x != nil {
		return x.Groupname
	}
	return ""
}

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

	Path []byte `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	Id   uint64 `protobuf:"fixed64,2,opt,name=id,proto3" json:"id,omitempty"`
	Ino  uint64 `protobuf:"fixed64,3,opt,name=ino,proto3" json:"ino,omitempty"`
	Type TYPE   `protobuf:"varint,4,opt,name=type,proto3,enum=eos.rpc.TYPE" json:"type,omitempty"`
}

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

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

func (*MDId) ProtoMessage() {}

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

func (x *MDId) GetPath() []byte {
	if x != nil {
		return x.Path
	}
	return nil
}

func (x *MDId) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *MDId) GetIno() uint64 {
	if x != nil {
		return x.Ino
	}
	return 0
}

func (x *MDId) GetType() TYPE {
	if x != nil {
		return x.Type
	}
	return TYPE_FILE
}

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

	Zero bool   `protobuf:"varint,1,opt,name=zero,proto3" json:"zero,omitempty"`
	Min  uint64 `protobuf:"varint,2,opt,name=min,proto3" json:"min,omitempty"`
	Max  uint64 `protobuf:"varint,3,opt,name=max,proto3" json:"max,omitempty"`
}

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

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

func (*Limit) ProtoMessage() {}

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

func (x *Limit) GetZero() bool {
	if x != nil {
		return x.Zero
	}
	return false
}

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

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

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

	Select            bool              `protobuf:"varint,1,opt,name=select,proto3" json:"select,omitempty"`
	Ctime             *Limit            `protobuf:"bytes,2,opt,name=ctime,proto3" json:"ctime,omitempty"`
	Mtime             *Limit            `protobuf:"bytes,3,opt,name=mtime,proto3" json:"mtime,omitempty"`
	Stime             *Limit            `protobuf:"bytes,4,opt,name=stime,proto3" json:"stime,omitempty"`
	Size              *Limit            `protobuf:"bytes,5,opt,name=size,proto3" json:"size,omitempty"`
	Treesize          *Limit            `protobuf:"bytes,6,opt,name=treesize,proto3" json:"treesize,omitempty"`
	Children          *Limit            `protobuf:"bytes,7,opt,name=children,proto3" json:"children,omitempty"`
	Locations         *Limit            `protobuf:"bytes,8,opt,name=locations,proto3" json:"locations,omitempty"`
	UnlinkedLocations *Limit            `protobuf:"bytes,9,opt,name=unlinked_locations,json=unlinkedLocations,proto3" json:"unlinked_locations,omitempty"`
	Layoutid          uint64            `protobuf:"varint,10,opt,name=layoutid,proto3" json:"layoutid,omitempty"`
	Flags             uint64            `protobuf:"varint,11,opt,name=flags,proto3" json:"flags,omitempty"`
	Symlink           bool              `protobuf:"varint,12,opt,name=symlink,proto3" json:"symlink,omitempty"`
	Checksum          *Checksum         `protobuf:"bytes,13,opt,name=checksum,proto3" json:"checksum,omitempty"`
	Owner             uint32            `protobuf:"varint,14,opt,name=owner,proto3" json:"owner,omitempty"`
	Group             uint32            `protobuf:"varint,15,opt,name=group,proto3" json:"group,omitempty"`
	OwnerRoot         bool              `protobuf:"varint,16,opt,name=owner_root,json=ownerRoot,proto3" json:"owner_root,omitempty"`
	GroupRoot         bool              `protobuf:"varint,17,opt,name=group_root,json=groupRoot,proto3" json:"group_root,omitempty"`
	RegexpFilename    []byte            `protobuf:"bytes,18,opt,name=regexp_filename,json=regexpFilename,proto3" json:"regexp_filename,omitempty"`
	RegexpDirname     []byte            `protobuf:"bytes,19,opt,name=regexp_dirname,json=regexpDirname,proto3" json:"regexp_dirname,omitempty"`
	Xattr             map[string][]byte `protobuf:"bytes,20,rep,name=xattr,proto3" json:"xattr,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}

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

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

func (*MDSelection) ProtoMessage() {}

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

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

func (x *MDSelection) GetSelect() bool {
	if x != nil {
		return x.Select
	}
	return false
}

func (x *MDSelection) GetCtime() *Limit {
	if x != nil {
		return x.Ctime
	}
	return nil
}

func (x *MDSelection) GetMtime() *Limit {
	if x != nil {
		return x.Mtime
	}
	return nil
}

func (x *MDSelection) GetStime() *Limit {
	if x != nil {
		return x.Stime
	}
	return nil
}

func (x *MDSelection) GetSize() *Limit {
	if x != nil {
		return x.Size
	}
	return nil
}

func (x *MDSelection) GetTreesize() *Limit {
	if x != nil {
		return x.Treesize
	}
	return nil
}

func (x *MDSelection) GetChildren() *Limit {
	if x != nil {
		return x.Children
	}
	return nil
}

func (x *MDSelection) GetLocations() *Limit {
	if x != nil {
		return x.Locations
	}
	return nil
}

func (x *MDSelection) GetUnlinkedLocations() *Limit {
	if x != nil {
		return x.UnlinkedLocations
	}
	return nil
}

func (x *MDSelection) GetLayoutid() uint64 {
	if x != nil {
		return x.Layoutid
	}
	return 0
}

func (x *MDSelection) GetFlags() uint64 {
	if x != nil {
		return x.Flags
	}
	return 0
}

func (x *MDSelection) GetSymlink() bool {
	if x != nil {
		return x.Symlink
	}
	return false
}

func (x *MDSelection) GetChecksum() *Checksum {
	if x != nil {
		return x.Checksum
	}
	return nil
}

func (x *MDSelection) GetOwner() uint32 {
	if x != nil {
		return x.Owner
	}
	return 0
}

func (x *MDSelection) GetGroup() uint32 {
	if x != nil {
		return x.Group
	}
	return 0
}

func (x *MDSelection) GetOwnerRoot() bool {
	if x != nil {
		return x.OwnerRoot
	}
	return false
}

func (x *MDSelection) GetGroupRoot() bool {
	if x != nil {
		return x.GroupRoot
	}
	return false
}

func (x *MDSelection) GetRegexpFilename() []byte {
	if x != nil {
		return x.RegexpFilename
	}
	return nil
}

func (x *MDSelection) GetRegexpDirname() []byte {
	if x != nil {
		return x.RegexpDirname
	}
	return nil
}

func (x *MDSelection) GetXattr() map[string][]byte {
	if x != nil {
		return x.Xattr
	}
	return nil
}

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

	Type      TYPE         `protobuf:"varint,1,opt,name=type,proto3,enum=eos.rpc.TYPE" json:"type,omitempty"`
	Id        *MDId        `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	Authkey   string       `protobuf:"bytes,3,opt,name=authkey,proto3" json:"authkey,omitempty"`
	Role      *RoleId      `protobuf:"bytes,4,opt,name=role,proto3" json:"role,omitempty"`
	Selection *MDSelection `protobuf:"bytes,5,opt,name=selection,proto3" json:"selection,omitempty"`
}

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

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

func (*MDRequest) ProtoMessage() {}

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

// Deprecated: Use MDRequest.ProtoReflect.Descriptor instead.
func (*MDRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{14}
}

func (x *MDRequest) GetType() TYPE {
	if x != nil {
		return x.Type
	}
	return TYPE_FILE
}

func (x *MDRequest) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *MDRequest) GetAuthkey() string {
	if x != nil {
		return x.Authkey
	}
	return ""
}

func (x *MDRequest) GetRole() *RoleId {
	if x != nil {
		return x.Role
	}
	return nil
}

func (x *MDRequest) GetSelection() *MDSelection {
	if x != nil {
		return x.Selection
	}
	return nil
}

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

	Type TYPE              `protobuf:"varint,1,opt,name=type,proto3,enum=eos.rpc.TYPE" json:"type,omitempty"`
	Fmd  *FileMdProto      `protobuf:"bytes,2,opt,name=fmd,proto3" json:"fmd,omitempty"`
	Cmd  *ContainerMdProto `protobuf:"bytes,3,opt,name=cmd,proto3" json:"cmd,omitempty"`
}

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

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

func (*MDResponse) ProtoMessage() {}

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

func (x *MDResponse) GetType() TYPE {
	if x != nil {
		return x.Type
	}
	return TYPE_FILE
}

func (x *MDResponse) GetFmd() *FileMdProto {
	if x != nil {
		return x.Fmd
	}
	return nil
}

func (x *MDResponse) GetCmd() *ContainerMdProto {
	if x != nil {
		return x.Cmd
	}
	return nil
}

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

	Type      TYPE         `protobuf:"varint,1,opt,name=type,proto3,enum=eos.rpc.TYPE" json:"type,omitempty"`
	Id        *MDId        `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	Role      *RoleId      `protobuf:"bytes,3,opt,name=role,proto3" json:"role,omitempty"`
	Authkey   string       `protobuf:"bytes,4,opt,name=authkey,proto3" json:"authkey,omitempty"`
	Maxdepth  uint64       `protobuf:"varint,5,opt,name=maxdepth,proto3" json:"maxdepth,omitempty"`
	Selection *MDSelection `protobuf:"bytes,6,opt,name=selection,proto3" json:"selection,omitempty"`
}

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

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

func (*FindRequest) ProtoMessage() {}

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

func (x *FindRequest) GetType() TYPE {
	if x != nil {
		return x.Type
	}
	return TYPE_FILE
}

func (x *FindRequest) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *FindRequest) GetRole() *RoleId {
	if x != nil {
		return x.Role
	}
	return nil
}

func (x *FindRequest) GetAuthkey() string {
	if x != nil {
		return x.Authkey
	}
	return ""
}

func (x *FindRequest) GetMaxdepth() uint64 {
	if x != nil {
		return x.Maxdepth
	}
	return 0
}

func (x *FindRequest) GetSelection() *MDSelection {
	if x != nil {
		return x.Selection
	}
	return nil
}

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

	Prot string `protobuf:"bytes,1,opt,name=prot,proto3" json:"prot,omitempty"`
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Host string `protobuf:"bytes,3,opt,name=host,proto3" json:"host,omitempty"`
}

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

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

func (*ShareAuth) ProtoMessage() {}

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

func (x *ShareAuth) GetProt() string {
	if x != nil {
		return x.Prot
	}
	return ""
}

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

func (x *ShareAuth) GetHost() string {
	if x != nil {
		return x.Host
	}
	return ""
}

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

	Permission string       `protobuf:"bytes,1,opt,name=permission,proto3" json:"permission,omitempty"`
	Expires    uint64       `protobuf:"varint,2,opt,name=expires,proto3" json:"expires,omitempty"`
	Owner      string       `protobuf:"bytes,3,opt,name=owner,proto3" json:"owner,omitempty"`
	Group      string       `protobuf:"bytes,4,opt,name=group,proto3" json:"group,omitempty"`
	Generation uint64       `protobuf:"varint,5,opt,name=generation,proto3" json:"generation,omitempty"`
	Path       string       `protobuf:"bytes,6,opt,name=path,proto3" json:"path,omitempty"`
	Allowtree  bool         `protobuf:"varint,7,opt,name=allowtree,proto3" json:"allowtree,omitempty"`
	Vtoken     string       `protobuf:"bytes,8,opt,name=vtoken,proto3" json:"vtoken,omitempty"`
	Origins    []*ShareAuth `protobuf:"bytes,9,rep,name=origins,proto3" json:"origins,omitempty"`
}

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

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

func (*ShareProto) ProtoMessage() {}

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

func (x *ShareProto) GetPermission() string {
	if x != nil {
		return x.Permission
	}
	return ""
}

func (x *ShareProto) GetExpires() uint64 {
	if x != nil {
		return x.Expires
	}
	return 0
}

func (x *ShareProto) GetOwner() string {
	if x != nil {
		return x.Owner
	}
	return ""
}

func (x *ShareProto) GetGroup() string {
	if x != nil {
		return x.Group
	}
	return ""
}

func (x *ShareProto) GetGeneration() uint64 {
	if x != nil {
		return x.Generation
	}
	return 0
}

func (x *ShareProto) GetPath() string {
	if x != nil {
		return x.Path
	}
	return ""
}

func (x *ShareProto) GetAllowtree() bool {
	if x != nil {
		return x.Allowtree
	}
	return false
}

func (x *ShareProto) GetVtoken() string {
	if x != nil {
		return x.Vtoken
	}
	return ""
}

func (x *ShareProto) GetOrigins() []*ShareAuth {
	if x != nil {
		return x.Origins
	}
	return nil
}

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

	Token      *ShareProto `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`
	Signature  []byte      `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"`
	Serialized []byte      `protobuf:"bytes,3,opt,name=serialized,proto3" json:"serialized,omitempty"`
	Seed       int32       `protobuf:"varint,4,opt,name=seed,proto3" json:"seed,omitempty"`
}

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

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

func (*ShareToken) ProtoMessage() {}

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

func (x *ShareToken) GetToken() *ShareProto {
	if x != nil {
		return x.Token
	}
	return nil
}

func (x *ShareToken) GetSignature() []byte {
	if x != nil {
		return x.Signature
	}
	return nil
}

func (x *ShareToken) GetSerialized() []byte {
	if x != nil {
		return x.Serialized
	}
	return nil
}

func (x *ShareToken) GetSeed() int32 {
	if x != nil {
		return x.Seed
	}
	return 0
}

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

	Authkey string  `protobuf:"bytes,1,opt,name=authkey,proto3" json:"authkey,omitempty"`
	Role    *RoleId `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"`
	// Actual request data object
	//
	// Types that are assignable to Command:
	//
	//	*NSRequest_Mkdir
	//	*NSRequest_Rmdir
	//	*NSRequest_Touch
	//	*NSRequest_Unlink
	//	*NSRequest_Rm
	//	*NSRequest_Rename
	//	*NSRequest_Symlink
	//	*NSRequest_Version
	//	*NSRequest_Recycle
	//	*NSRequest_Xattr
	//	*NSRequest_Chown
	//	*NSRequest_Chmod
	//	*NSRequest_Acl
	//	*NSRequest_Token
	//	*NSRequest_Quota
	//	*NSRequest_Share
	Command isNSRequest_Command `protobuf_oneof:"command"`
}

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

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

func (*NSRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest.ProtoReflect.Descriptor instead.
func (*NSRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20}
}

func (x *NSRequest) GetAuthkey() string {
	if x != nil {
		return x.Authkey
	}
	return ""
}

func (x *NSRequest) GetRole() *RoleId {
	if x != nil {
		return x.Role
	}
	return nil
}

func (m *NSRequest) GetCommand() isNSRequest_Command {
	if m != nil {
		return m.Command
	}
	return nil
}

func (x *NSRequest) GetMkdir() *NSRequest_MkdirRequest {
	if x, ok := x.GetCommand().(*NSRequest_Mkdir); ok {
		return x.Mkdir
	}
	return nil
}

func (x *NSRequest) GetRmdir() *NSRequest_RmdirRequest {
	if x, ok := x.GetCommand().(*NSRequest_Rmdir); ok {
		return x.Rmdir
	}
	return nil
}

func (x *NSRequest) GetTouch() *NSRequest_TouchRequest {
	if x, ok := x.GetCommand().(*NSRequest_Touch); ok {
		return x.Touch
	}
	return nil
}

func (x *NSRequest) GetUnlink() *NSRequest_UnlinkRequest {
	if x, ok := x.GetCommand().(*NSRequest_Unlink); ok {
		return x.Unlink
	}
	return nil
}

func (x *NSRequest) GetRm() *NSRequest_RmRequest {
	if x, ok := x.GetCommand().(*NSRequest_Rm); ok {
		return x.Rm
	}
	return nil
}

func (x *NSRequest) GetRename() *NSRequest_RenameRequest {
	if x, ok := x.GetCommand().(*NSRequest_Rename); ok {
		return x.Rename
	}
	return nil
}

func (x *NSRequest) GetSymlink() *NSRequest_SymlinkRequest {
	if x, ok := x.GetCommand().(*NSRequest_Symlink); ok {
		return x.Symlink
	}
	return nil
}

func (x *NSRequest) GetVersion() *NSRequest_VersionRequest {
	if x, ok := x.GetCommand().(*NSRequest_Version); ok {
		return x.Version
	}
	return nil
}

func (x *NSRequest) GetRecycle() *NSRequest_RecycleRequest {
	if x, ok := x.GetCommand().(*NSRequest_Recycle); ok {
		return x.Recycle
	}
	return nil
}

func (x *NSRequest) GetXattr() *NSRequest_SetXAttrRequest {
	if x, ok := x.GetCommand().(*NSRequest_Xattr); ok {
		return x.Xattr
	}
	return nil
}

func (x *NSRequest) GetChown() *NSRequest_ChownRequest {
	if x, ok := x.GetCommand().(*NSRequest_Chown); ok {
		return x.Chown
	}
	return nil
}

func (x *NSRequest) GetChmod() *NSRequest_ChmodRequest {
	if x, ok := x.GetCommand().(*NSRequest_Chmod); ok {
		return x.Chmod
	}
	return nil
}

func (x *NSRequest) GetAcl() *NSRequest_AclRequest {
	if x, ok := x.GetCommand().(*NSRequest_Acl); ok {
		return x.Acl
	}
	return nil
}

func (x *NSRequest) GetToken() *NSRequest_TokenRequest {
	if x, ok := x.GetCommand().(*NSRequest_Token); ok {
		return x.Token
	}
	return nil
}

func (x *NSRequest) GetQuota() *NSRequest_QuotaRequest {
	if x, ok := x.GetCommand().(*NSRequest_Quota); ok {
		return x.Quota
	}
	return nil
}

func (x *NSRequest) GetShare() *NSRequest_ShareRequest {
	if x, ok := x.GetCommand().(*NSRequest_Share); ok {
		return x.Share
	}
	return nil
}

type isNSRequest_Command interface {
	isNSRequest_Command()
}

type NSRequest_Mkdir struct {
	Mkdir *NSRequest_MkdirRequest `protobuf:"bytes,21,opt,name=mkdir,proto3,oneof"`
}

type NSRequest_Rmdir struct {
	Rmdir *NSRequest_RmdirRequest `protobuf:"bytes,22,opt,name=rmdir,proto3,oneof"`
}

type NSRequest_Touch struct {
	Touch *NSRequest_TouchRequest `protobuf:"bytes,23,opt,name=touch,proto3,oneof"`
}

type NSRequest_Unlink struct {
	Unlink *NSRequest_UnlinkRequest `protobuf:"bytes,24,opt,name=unlink,proto3,oneof"`
}

type NSRequest_Rm struct {
	Rm *NSRequest_RmRequest `protobuf:"bytes,25,opt,name=rm,proto3,oneof"`
}

type NSRequest_Rename struct {
	Rename *NSRequest_RenameRequest `protobuf:"bytes,26,opt,name=rename,proto3,oneof"`
}

type NSRequest_Symlink struct {
	Symlink *NSRequest_SymlinkRequest `protobuf:"bytes,27,opt,name=symlink,proto3,oneof"`
}

type NSRequest_Version struct {
	Version *NSRequest_VersionRequest `protobuf:"bytes,28,opt,name=version,proto3,oneof"`
}

type NSRequest_Recycle struct {
	Recycle *NSRequest_RecycleRequest `protobuf:"bytes,29,opt,name=recycle,proto3,oneof"`
}

type NSRequest_Xattr struct {
	Xattr *NSRequest_SetXAttrRequest `protobuf:"bytes,30,opt,name=xattr,proto3,oneof"`
}

type NSRequest_Chown struct {
	Chown *NSRequest_ChownRequest `protobuf:"bytes,31,opt,name=chown,proto3,oneof"`
}

type NSRequest_Chmod struct {
	Chmod *NSRequest_ChmodRequest `protobuf:"bytes,32,opt,name=chmod,proto3,oneof"`
}

type NSRequest_Acl struct {
	Acl *NSRequest_AclRequest `protobuf:"bytes,33,opt,name=acl,proto3,oneof"`
}

type NSRequest_Token struct {
	Token *NSRequest_TokenRequest `protobuf:"bytes,34,opt,name=token,proto3,oneof"`
}

type NSRequest_Quota struct {
	Quota *NSRequest_QuotaRequest `protobuf:"bytes,35,opt,name=quota,proto3,oneof"`
}

type NSRequest_Share struct {
	Share *NSRequest_ShareRequest `protobuf:"bytes,36,opt,name=share,proto3,oneof"`
}

func (*NSRequest_Mkdir) isNSRequest_Command() {}

func (*NSRequest_Rmdir) isNSRequest_Command() {}

func (*NSRequest_Touch) isNSRequest_Command() {}

func (*NSRequest_Unlink) isNSRequest_Command() {}

func (*NSRequest_Rm) isNSRequest_Command() {}

func (*NSRequest_Rename) isNSRequest_Command() {}

func (*NSRequest_Symlink) isNSRequest_Command() {}

func (*NSRequest_Version) isNSRequest_Command() {}

func (*NSRequest_Recycle) isNSRequest_Command() {}

func (*NSRequest_Xattr) isNSRequest_Command() {}

func (*NSRequest_Chown) isNSRequest_Command() {}

func (*NSRequest_Chmod) isNSRequest_Command() {}

func (*NSRequest_Acl) isNSRequest_Command() {}

func (*NSRequest_Token) isNSRequest_Command() {}

func (*NSRequest_Quota) isNSRequest_Command() {}

func (*NSRequest_Share) isNSRequest_Command() {}

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

	Error   *NSResponse_ErrorResponse   `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"`
	Version *NSResponse_VersionResponse `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
	Recycle *NSResponse_RecycleResponse `protobuf:"bytes,3,opt,name=recycle,proto3" json:"recycle,omitempty"`
	Acl     *NSResponse_AclResponse     `protobuf:"bytes,4,opt,name=acl,proto3" json:"acl,omitempty"`
	Quota   *NSResponse_QuotaResponse   `protobuf:"bytes,5,opt,name=quota,proto3" json:"quota,omitempty"`
	Share   *NSResponse_ShareResponse   `protobuf:"bytes,6,opt,name=share,proto3" json:"share,omitempty"`
}

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

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

func (*NSResponse) ProtoMessage() {}

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

// Deprecated: Use NSResponse.ProtoReflect.Descriptor instead.
func (*NSResponse) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{21}
}

func (x *NSResponse) GetError() *NSResponse_ErrorResponse {
	if x != nil {
		return x.Error
	}
	return nil
}

func (x *NSResponse) GetVersion() *NSResponse_VersionResponse {
	if x != nil {
		return x.Version
	}
	return nil
}

func (x *NSResponse) GetRecycle() *NSResponse_RecycleResponse {
	if x != nil {
		return x.Recycle
	}
	return nil
}

func (x *NSResponse) GetAcl() *NSResponse_AclResponse {
	if x != nil {
		return x.Acl
	}
	return nil
}

func (x *NSResponse) GetQuota() *NSResponse_QuotaResponse {
	if x != nil {
		return x.Quota
	}
	return nil
}

func (x *NSResponse) GetShare() *NSResponse_ShareResponse {
	if x != nil {
		return x.Share
	}
	return nil
}

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

	Authkey string `protobuf:"bytes,1,opt,name=authkey,proto3" json:"authkey,omitempty"`
}

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

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

func (*NsStatRequest) ProtoMessage() {}

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

// Deprecated: Use NsStatRequest.ProtoReflect.Descriptor instead.
func (*NsStatRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{22}
}

func (x *NsStatRequest) GetAuthkey() string {
	if x != nil {
		return x.Authkey
	}
	return ""
}

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

	Code        int64  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
	Emsg        string `protobuf:"bytes,2,opt,name=emsg,proto3" json:"emsg,omitempty"`
	State       string `protobuf:"bytes,3,opt,name=state,proto3" json:"state,omitempty"`
	Nfiles      uint64 `protobuf:"varint,4,opt,name=nfiles,proto3" json:"nfiles,omitempty"`
	Ncontainers uint64 `protobuf:"varint,5,opt,name=ncontainers,proto3" json:"ncontainers,omitempty"`
	BootTime    uint64 `protobuf:"varint,6,opt,name=boot_time,json=bootTime,proto3" json:"boot_time,omitempty"`
	CurrentFid  uint64 `protobuf:"varint,7,opt,name=current_fid,json=currentFid,proto3" json:"current_fid,omitempty"`
	CurrentCid  uint64 `protobuf:"varint,8,opt,name=current_cid,json=currentCid,proto3" json:"current_cid,omitempty"`
	MemVirtual  uint64 `protobuf:"varint,9,opt,name=mem_virtual,json=memVirtual,proto3" json:"mem_virtual,omitempty"`
	MemResident uint64 `protobuf:"varint,10,opt,name=mem_resident,json=memResident,proto3" json:"mem_resident,omitempty"`
	MemShare    uint64 `protobuf:"varint,11,opt,name=mem_share,json=memShare,proto3" json:"mem_share,omitempty"`
	MemGrowth   uint64 `protobuf:"varint,12,opt,name=mem_growth,json=memGrowth,proto3" json:"mem_growth,omitempty"`
	Threads     uint64 `protobuf:"varint,13,opt,name=threads,proto3" json:"threads,omitempty"`
	Fds         uint64 `protobuf:"varint,14,opt,name=fds,proto3" json:"fds,omitempty"`
	Uptime      uint64 `protobuf:"varint,15,opt,name=uptime,proto3" json:"uptime,omitempty"`
}

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

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

func (*NsStatResponse) ProtoMessage() {}

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

// Deprecated: Use NsStatResponse.ProtoReflect.Descriptor instead.
func (*NsStatResponse) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{23}
}

func (x *NsStatResponse) GetCode() int64 {
	if x != nil {
		return x.Code
	}
	return 0
}

func (x *NsStatResponse) GetEmsg() string {
	if x != nil {
		return x.Emsg
	}
	return ""
}

func (x *NsStatResponse) GetState() string {
	if x != nil {
		return x.State
	}
	return ""
}

func (x *NsStatResponse) GetNfiles() uint64 {
	if x != nil {
		return x.Nfiles
	}
	return 0
}

func (x *NsStatResponse) GetNcontainers() uint64 {
	if x != nil {
		return x.Ncontainers
	}
	return 0
}

func (x *NsStatResponse) GetBootTime() uint64 {
	if x != nil {
		return x.BootTime
	}
	return 0
}

func (x *NsStatResponse) GetCurrentFid() uint64 {
	if x != nil {
		return x.CurrentFid
	}
	return 0
}

func (x *NsStatResponse) GetCurrentCid() uint64 {
	if x != nil {
		return x.CurrentCid
	}
	return 0
}

func (x *NsStatResponse) GetMemVirtual() uint64 {
	if x != nil {
		return x.MemVirtual
	}
	return 0
}

func (x *NsStatResponse) GetMemResident() uint64 {
	if x != nil {
		return x.MemResident
	}
	return 0
}

func (x *NsStatResponse) GetMemShare() uint64 {
	if x != nil {
		return x.MemShare
	}
	return 0
}

func (x *NsStatResponse) GetMemGrowth() uint64 {
	if x != nil {
		return x.MemGrowth
	}
	return 0
}

func (x *NsStatResponse) GetThreads() uint64 {
	if x != nil {
		return x.Threads
	}
	return 0
}

func (x *NsStatResponse) GetFds() uint64 {
	if x != nil {
		return x.Fds
	}
	return 0
}

func (x *NsStatResponse) GetUptime() uint64 {
	if x != nil {
		return x.Uptime
	}
	return 0
}

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

	RequestType   MANILA_REQUEST_TYPE `protobuf:"varint,1,opt,name=request_type,json=requestType,proto3,enum=eos.rpc.MANILA_REQUEST_TYPE" json:"request_type,omitempty"`
	AuthKey       string              `protobuf:"bytes,2,opt,name=auth_key,json=authKey,proto3" json:"auth_key,omitempty"`
	Protocol      string              `protobuf:"bytes,3,opt,name=protocol,proto3" json:"protocol,omitempty"`
	ShareName     string              `protobuf:"bytes,4,opt,name=share_name,json=shareName,proto3" json:"share_name,omitempty"`
	Description   string              `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
	ShareId       string              `protobuf:"bytes,6,opt,name=share_id,json=shareId,proto3" json:"share_id,omitempty"`
	ShareGroupId  string              `protobuf:"bytes,7,opt,name=share_group_id,json=shareGroupId,proto3" json:"share_group_id,omitempty"`
	Quota         int32               `protobuf:"varint,8,opt,name=quota,proto3" json:"quota,omitempty"`
	Creator       string              `protobuf:"bytes,9,opt,name=creator,proto3" json:"creator,omitempty"`
	Egroup        string              `protobuf:"bytes,10,opt,name=egroup,proto3" json:"egroup,omitempty"`
	AdminEgroup   string              `protobuf:"bytes,11,opt,name=admin_egroup,json=adminEgroup,proto3" json:"admin_egroup,omitempty"`
	ShareHost     string              `protobuf:"bytes,12,opt,name=share_host,json=shareHost,proto3" json:"share_host,omitempty"`
	ShareLocation string              `protobuf:"bytes,13,opt,name=share_location,json=shareLocation,proto3" json:"share_location,omitempty"`
}

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

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

func (*ManilaRequest) ProtoMessage() {}

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

// Deprecated: Use ManilaRequest.ProtoReflect.Descriptor instead.
func (*ManilaRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{24}
}

func (x *ManilaRequest) GetRequestType() MANILA_REQUEST_TYPE {
	if x != nil {
		return x.RequestType
	}
	return MANILA_REQUEST_TYPE_CREATE_SHARE
}

func (x *ManilaRequest) GetAuthKey() string {
	if x != nil {
		return x.AuthKey
	}
	return ""
}

func (x *ManilaRequest) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *ManilaRequest) GetShareName() string {
	if x != nil {
		return x.ShareName
	}
	return ""
}

func (x *ManilaRequest) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ManilaRequest) GetShareId() string {
	if x != nil {
		return x.ShareId
	}
	return ""
}

func (x *ManilaRequest) GetShareGroupId() string {
	if x != nil {
		return x.ShareGroupId
	}
	return ""
}

func (x *ManilaRequest) GetQuota() int32 {
	if x != nil {
		return x.Quota
	}
	return 0
}

func (x *ManilaRequest) GetCreator() string {
	if x != nil {
		return x.Creator
	}
	return ""
}

func (x *ManilaRequest) GetEgroup() string {
	if x != nil {
		return x.Egroup
	}
	return ""
}

func (x *ManilaRequest) GetAdminEgroup() string {
	if x != nil {
		return x.AdminEgroup
	}
	return ""
}

func (x *ManilaRequest) GetShareHost() string {
	if x != nil {
		return x.ShareHost
	}
	return ""
}

func (x *ManilaRequest) GetShareLocation() string {
	if x != nil {
		return x.ShareLocation
	}
	return ""
}

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

	Msg           string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`    // for generic messages
	Code          int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` // < 1 is an error -- > 1 is OK
	TotalUsed     int64  `protobuf:"varint,3,opt,name=total_used,json=totalUsed,proto3" json:"total_used,omitempty"`
	TotalCapacity int64  `protobuf:"varint,4,opt,name=total_capacity,json=totalCapacity,proto3" json:"total_capacity,omitempty"`
	NewShareQuota int64  `protobuf:"varint,5,opt,name=new_share_quota,json=newShareQuota,proto3" json:"new_share_quota,omitempty"`
	NewSharePath  string `protobuf:"bytes,6,opt,name=new_share_path,json=newSharePath,proto3" json:"new_share_path,omitempty"`
}

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

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

func (*ManilaResponse) ProtoMessage() {}

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

// Deprecated: Use ManilaResponse.ProtoReflect.Descriptor instead.
func (*ManilaResponse) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{25}
}

func (x *ManilaResponse) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

func (x *ManilaResponse) GetCode() int32 {
	if x != nil {
		return x.Code
	}
	return 0
}

func (x *ManilaResponse) GetTotalUsed() int64 {
	if x != nil {
		return x.TotalUsed
	}
	return 0
}

func (x *ManilaResponse) GetTotalCapacity() int64 {
	if x != nil {
		return x.TotalCapacity
	}
	return 0
}

func (x *ManilaResponse) GetNewShareQuota() int64 {
	if x != nil {
		return x.NewShareQuota
	}
	return 0
}

func (x *ManilaResponse) GetNewSharePath() string {
	if x != nil {
		return x.NewSharePath
	}
	return ""
}

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

	Id        *MDId `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Recursive bool  `protobuf:"varint,2,opt,name=recursive,proto3" json:"recursive,omitempty"`
	Mode      int64 `protobuf:"varint,3,opt,name=mode,proto3" json:"mode,omitempty"`
}

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

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

func (*NSRequest_MkdirRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest_MkdirRequest.ProtoReflect.Descriptor instead.
func (*NSRequest_MkdirRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 0}
}

func (x *NSRequest_MkdirRequest) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *NSRequest_MkdirRequest) GetRecursive() bool {
	if x != nil {
		return x.Recursive
	}
	return false
}

func (x *NSRequest_MkdirRequest) GetMode() int64 {
	if x != nil {
		return x.Mode
	}
	return 0
}

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

	Id *MDId `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
}

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

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

func (*NSRequest_RmdirRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest_RmdirRequest.ProtoReflect.Descriptor instead.
func (*NSRequest_RmdirRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 1}
}

func (x *NSRequest_RmdirRequest) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

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

	Id *MDId `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
}

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

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

func (*NSRequest_TouchRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest_TouchRequest.ProtoReflect.Descriptor instead.
func (*NSRequest_TouchRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 2}
}

func (x *NSRequest_TouchRequest) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

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

	Id        *MDId `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Norecycle bool  `protobuf:"varint,3,opt,name=norecycle,proto3" json:"norecycle,omitempty"`
}

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

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

func (*NSRequest_UnlinkRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest_UnlinkRequest.ProtoReflect.Descriptor instead.
func (*NSRequest_UnlinkRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 3}
}

func (x *NSRequest_UnlinkRequest) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *NSRequest_UnlinkRequest) GetNorecycle() bool {
	if x != nil {
		return x.Norecycle
	}
	return false
}

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

	Id        *MDId `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Recursive bool  `protobuf:"varint,2,opt,name=recursive,proto3" json:"recursive,omitempty"`
	Norecycle bool  `protobuf:"varint,3,opt,name=norecycle,proto3" json:"norecycle,omitempty"`
}

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

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

func (*NSRequest_RmRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest_RmRequest.ProtoReflect.Descriptor instead.
func (*NSRequest_RmRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 4}
}

func (x *NSRequest_RmRequest) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *NSRequest_RmRequest) GetRecursive() bool {
	if x != nil {
		return x.Recursive
	}
	return false
}

func (x *NSRequest_RmRequest) GetNorecycle() bool {
	if x != nil {
		return x.Norecycle
	}
	return false
}

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

	Id     *MDId  `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Target []byte `protobuf:"bytes,2,opt,name=target,proto3" json:"target,omitempty"`
}

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

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

func (*NSRequest_RenameRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest_RenameRequest.ProtoReflect.Descriptor instead.
func (*NSRequest_RenameRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 5}
}

func (x *NSRequest_RenameRequest) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *NSRequest_RenameRequest) GetTarget() []byte {
	if x != nil {
		return x.Target
	}
	return nil
}

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

	Id     *MDId  `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Target []byte `protobuf:"bytes,2,opt,name=target,proto3" json:"target,omitempty"`
}

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

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

func (*NSRequest_SymlinkRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest_SymlinkRequest.ProtoReflect.Descriptor instead.
func (*NSRequest_SymlinkRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 6}
}

func (x *NSRequest_SymlinkRequest) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *NSRequest_SymlinkRequest) GetTarget() []byte {
	if x != nil {
		return x.Target
	}
	return nil
}

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

	Id          *MDId                                `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Cmd         NSRequest_VersionRequest_VERSION_CMD `protobuf:"varint,2,opt,name=cmd,proto3,enum=eos.rpc.NSRequest_VersionRequest_VERSION_CMD" json:"cmd,omitempty"`
	Maxversion  int32                                `protobuf:"varint,3,opt,name=maxversion,proto3" json:"maxversion,omitempty"`
	Grabversion string                               `protobuf:"bytes,4,opt,name=grabversion,proto3" json:"grabversion,omitempty"`
}

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

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

func (*NSRequest_VersionRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest_VersionRequest.ProtoReflect.Descriptor instead.
func (*NSRequest_VersionRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 7}
}

func (x *NSRequest_VersionRequest) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *NSRequest_VersionRequest) GetCmd() NSRequest_VersionRequest_VERSION_CMD {
	if x != nil {
		return x.Cmd
	}
	return NSRequest_VersionRequest_CREATE
}

func (x *NSRequest_VersionRequest) GetMaxversion() int32 {
	if x != nil {
		return x.Maxversion
	}
	return 0
}

func (x *NSRequest_VersionRequest) GetGrabversion() string {
	if x != nil {
		return x.Grabversion
	}
	return ""
}

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

	Key         string                                 `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	Cmd         NSRequest_RecycleRequest_RECYCLE_CMD   `protobuf:"varint,2,opt,name=cmd,proto3,enum=eos.rpc.NSRequest_RecycleRequest_RECYCLE_CMD" json:"cmd,omitempty"`
	Restoreflag *NSRequest_RecycleRequest_RestoreFlags `protobuf:"bytes,3,opt,name=restoreflag,proto3" json:"restoreflag,omitempty"`
	Purgedate   *NSRequest_RecycleRequest_PurgeDate    `protobuf:"bytes,4,opt,name=purgedate,proto3" json:"purgedate,omitempty"`
}

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

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

func (*NSRequest_RecycleRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest_RecycleRequest.ProtoReflect.Descriptor instead.
func (*NSRequest_RecycleRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 8}
}

func (x *NSRequest_RecycleRequest) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

func (x *NSRequest_RecycleRequest) GetCmd() NSRequest_RecycleRequest_RECYCLE_CMD {
	if x != nil {
		return x.Cmd
	}
	return NSRequest_RecycleRequest_RESTORE
}

func (x *NSRequest_RecycleRequest) GetRestoreflag() *NSRequest_RecycleRequest_RestoreFlags {
	if x != nil {
		return x.Restoreflag
	}
	return nil
}

func (x *NSRequest_RecycleRequest) GetPurgedate() *NSRequest_RecycleRequest_PurgeDate {
	if x != nil {
		return x.Purgedate
	}
	return nil
}

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

	Id           *MDId             `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Xattrs       map[string][]byte `protobuf:"bytes,2,rep,name=xattrs,proto3" json:"xattrs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	Recursive    bool              `protobuf:"varint,3,opt,name=recursive,proto3" json:"recursive,omitempty"`
	Keystodelete []string          `protobuf:"bytes,4,rep,name=keystodelete,proto3" json:"keystodelete,omitempty"`
	Create       bool              `protobuf:"varint,5,opt,name=create,proto3" json:"create,omitempty"`
}

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

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

func (*NSRequest_SetXAttrRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest_SetXAttrRequest.ProtoReflect.Descriptor instead.
func (*NSRequest_SetXAttrRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 9}
}

func (x *NSRequest_SetXAttrRequest) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *NSRequest_SetXAttrRequest) GetXattrs() map[string][]byte {
	if x != nil {
		return x.Xattrs
	}
	return nil
}

func (x *NSRequest_SetXAttrRequest) GetRecursive() bool {
	if x != nil {
		return x.Recursive
	}
	return false
}

func (x *NSRequest_SetXAttrRequest) GetKeystodelete() []string {
	if x != nil {
		return x.Keystodelete
	}
	return nil
}

func (x *NSRequest_SetXAttrRequest) GetCreate() bool {
	if x != nil {
		return x.Create
	}
	return false
}

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

	Id    *MDId   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Owner *RoleId `protobuf:"bytes,2,opt,name=owner,proto3" json:"owner,omitempty"`
}

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

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

func (*NSRequest_ChownRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest_ChownRequest.ProtoReflect.Descriptor instead.
func (*NSRequest_ChownRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 10}
}

func (x *NSRequest_ChownRequest) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *NSRequest_ChownRequest) GetOwner() *RoleId {
	if x != nil {
		return x.Owner
	}
	return nil
}

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

	Id   *MDId `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Mode int64 `protobuf:"varint,2,opt,name=mode,proto3" json:"mode,omitempty"`
}

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

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

func (*NSRequest_ChmodRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest_ChmodRequest.ProtoReflect.Descriptor instead.
func (*NSRequest_ChmodRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 11}
}

func (x *NSRequest_ChmodRequest) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *NSRequest_ChmodRequest) GetMode() int64 {
	if x != nil {
		return x.Mode
	}
	return 0
}

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

	Id        *MDId                            `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Cmd       NSRequest_AclRequest_ACL_COMMAND `protobuf:"varint,2,opt,name=cmd,proto3,enum=eos.rpc.NSRequest_AclRequest_ACL_COMMAND" json:"cmd,omitempty"`
	Recursive bool                             `protobuf:"varint,3,opt,name=recursive,proto3" json:"recursive,omitempty"`
	Type      NSRequest_AclRequest_ACL_TYPE    `protobuf:"varint,4,opt,name=type,proto3,enum=eos.rpc.NSRequest_AclRequest_ACL_TYPE" json:"type,omitempty"`
	Rule      string                           `protobuf:"bytes,5,opt,name=rule,proto3" json:"rule,omitempty"`
	Position  uint32                           `protobuf:"varint,6,opt,name=position,proto3" json:"position,omitempty"`
}

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

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

func (*NSRequest_AclRequest) ProtoMessage() {}

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

func (x *NSRequest_AclRequest) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *NSRequest_AclRequest) GetCmd() NSRequest_AclRequest_ACL_COMMAND {
	if x != nil {
		return x.Cmd
	}
	return NSRequest_AclRequest_NONE
}

func (x *NSRequest_AclRequest) GetRecursive() bool {
	if x != nil {
		return x.Recursive
	}
	return false
}

func (x *NSRequest_AclRequest) GetType() NSRequest_AclRequest_ACL_TYPE {
	if x != nil {
		return x.Type
	}
	return NSRequest_AclRequest_USER_ACL
}

func (x *NSRequest_AclRequest) GetRule() string {
	if x != nil {
		return x.Rule
	}
	return ""
}

func (x *NSRequest_AclRequest) GetPosition() uint32 {
	if x != nil {
		return x.Position
	}
	return 0
}

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

	Token *ShareToken `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`
}

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

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

func (*NSRequest_TokenRequest) ProtoMessage() {}

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

func (x *NSRequest_TokenRequest) GetToken() *ShareToken {
	if x != nil {
		return x.Token
	}
	return nil
}

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

	Path     []byte     `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	Id       *RoleId    `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	Op       QUOTAOP    `protobuf:"varint,3,opt,name=op,proto3,enum=eos.rpc.QUOTAOP" json:"op,omitempty"`          // get or set, rm or rmnode
	Maxfiles uint64     `protobuf:"varint,4,opt,name=maxfiles,proto3" json:"maxfiles,omitempty"`                   // maximum number of bytes (volume quota) for setting
	Maxbytes uint64     `protobuf:"varint,5,opt,name=maxbytes,proto3" json:"maxbytes,omitempty"`                   // maximum number of bytes (volume quota) for setting
	Entry    QUOTAENTRY `protobuf:"varint,6,opt,name=entry,proto3,enum=eos.rpc.QUOTAENTRY" json:"entry,omitempty"` // select volume or inode entry for deletion
}

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

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

func (*NSRequest_QuotaRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest_QuotaRequest.ProtoReflect.Descriptor instead.
func (*NSRequest_QuotaRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 14}
}

func (x *NSRequest_QuotaRequest) GetPath() []byte {
	if x != nil {
		return x.Path
	}
	return nil
}

func (x *NSRequest_QuotaRequest) GetId() *RoleId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *NSRequest_QuotaRequest) GetOp() QUOTAOP {
	if x != nil {
		return x.Op
	}
	return QUOTAOP_GET
}

func (x *NSRequest_QuotaRequest) GetMaxfiles() uint64 {
	if x != nil {
		return x.Maxfiles
	}
	return 0
}

func (x *NSRequest_QuotaRequest) GetMaxbytes() uint64 {
	if x != nil {
		return x.Maxbytes
	}
	return 0
}

func (x *NSRequest_QuotaRequest) GetEntry() QUOTAENTRY {
	if x != nil {
		return x.Entry
	}
	return QUOTAENTRY_NONE
}

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

	// Types that are assignable to Subcmd:
	//
	//	*NSRequest_ShareRequest_Ls
	//	*NSRequest_ShareRequest_Op
	Subcmd isNSRequest_ShareRequest_Subcmd `protobuf_oneof:"subcmd"`
}

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

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

func (*NSRequest_ShareRequest) ProtoMessage() {}

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

// Deprecated: Use NSRequest_ShareRequest.ProtoReflect.Descriptor instead.
func (*NSRequest_ShareRequest) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 15}
}

func (m *NSRequest_ShareRequest) GetSubcmd() isNSRequest_ShareRequest_Subcmd {
	if m != nil {
		return m.Subcmd
	}
	return nil
}

func (x *NSRequest_ShareRequest) GetLs() *NSRequest_ShareRequest_LsShare {
	if x, ok := x.GetSubcmd().(*NSRequest_ShareRequest_Ls); ok {
		return x.Ls
	}
	return nil
}

func (x *NSRequest_ShareRequest) GetOp() *NSRequest_ShareRequest_OperateShare {
	if x, ok := x.GetSubcmd().(*NSRequest_ShareRequest_Op); ok {
		return x.Op
	}
	return nil
}

type isNSRequest_ShareRequest_Subcmd interface {
	isNSRequest_ShareRequest_Subcmd()
}

type NSRequest_ShareRequest_Ls struct {
	Ls *NSRequest_ShareRequest_LsShare `protobuf:"bytes,1,opt,name=ls,proto3,oneof"`
}

type NSRequest_ShareRequest_Op struct {
	Op *NSRequest_ShareRequest_OperateShare `protobuf:"bytes,2,opt,name=op,proto3,oneof"`
}

func (*NSRequest_ShareRequest_Ls) isNSRequest_ShareRequest_Subcmd() {}

func (*NSRequest_ShareRequest_Op) isNSRequest_ShareRequest_Subcmd() {}

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

	Force    bool `protobuf:"varint,1,opt,name=force,proto3" json:"force,omitempty"`
	Mkpath   bool `protobuf:"varint,2,opt,name=mkpath,proto3" json:"mkpath,omitempty"`
	Versions bool `protobuf:"varint,3,opt,name=versions,proto3" json:"versions,omitempty"`
}

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

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

func (*NSRequest_RecycleRequest_RestoreFlags) ProtoMessage() {}

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

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

func (x *NSRequest_RecycleRequest_RestoreFlags) GetForce() bool {
	if x != nil {
		return x.Force
	}
	return false
}

func (x *NSRequest_RecycleRequest_RestoreFlags) GetMkpath() bool {
	if x != nil {
		return x.Mkpath
	}
	return false
}

func (x *NSRequest_RecycleRequest_RestoreFlags) GetVersions() bool {
	if x != nil {
		return x.Versions
	}
	return false
}

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

	Year  int32 `protobuf:"varint,1,opt,name=year,proto3" json:"year,omitempty"`
	Month int32 `protobuf:"varint,2,opt,name=month,proto3" json:"month,omitempty"`
	Day   int32 `protobuf:"varint,3,opt,name=day,proto3" json:"day,omitempty"`
}

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

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

func (*NSRequest_RecycleRequest_PurgeDate) ProtoMessage() {}

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

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

func (x *NSRequest_RecycleRequest_PurgeDate) GetYear() int32 {
	if x != nil {
		return x.Year
	}
	return 0
}

func (x *NSRequest_RecycleRequest_PurgeDate) GetMonth() int32 {
	if x != nil {
		return x.Month
	}
	return 0
}

func (x *NSRequest_RecycleRequest_PurgeDate) GetDay() int32 {
	if x != nil {
		return x.Day
	}
	return 0
}

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

	Outformat NSRequest_ShareRequest_LsShare_OutFormat `protobuf:"varint,1,opt,name=outformat,proto3,enum=eos.rpc.NSRequest_ShareRequest_LsShare_OutFormat" json:"outformat,omitempty"` //
	Selection string                                   `protobuf:"bytes,2,opt,name=selection,proto3" json:"selection,omitempty"`                                                        //
}

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

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

func (*NSRequest_ShareRequest_LsShare) ProtoMessage() {}

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

// Deprecated: Use NSRequest_ShareRequest_LsShare.ProtoReflect.Descriptor instead.
func (*NSRequest_ShareRequest_LsShare) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 15, 0}
}

func (x *NSRequest_ShareRequest_LsShare) GetOutformat() NSRequest_ShareRequest_LsShare_OutFormat {
	if x != nil {
		return x.Outformat
	}
	return NSRequest_ShareRequest_LsShare_NONE
}

func (x *NSRequest_ShareRequest_LsShare) GetSelection() string {
	if x != nil {
		return x.Selection
	}
	return ""
}

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

	Op    NSRequest_ShareRequest_OperateShare_Op `protobuf:"varint,1,opt,name=op,proto3,enum=eos.rpc.NSRequest_ShareRequest_OperateShare_Op" json:"op,omitempty"`
	Share string                                 `protobuf:"bytes,2,opt,name=share,proto3" json:"share,omitempty"`
	Acl   string                                 `protobuf:"bytes,3,opt,name=acl,proto3" json:"acl,omitempty"`
	Path  string                                 `protobuf:"bytes,4,opt,name=path,proto3" json:"path,omitempty"`
	User  string                                 `protobuf:"bytes,5,opt,name=user,proto3" json:"user,omitempty"`
	Group string                                 `protobuf:"bytes,6,opt,name=group,proto3" json:"group,omitempty"`
}

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

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

func (*NSRequest_ShareRequest_OperateShare) ProtoMessage() {}

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

// Deprecated: Use NSRequest_ShareRequest_OperateShare.ProtoReflect.Descriptor instead.
func (*NSRequest_ShareRequest_OperateShare) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{20, 15, 1}
}

func (x *NSRequest_ShareRequest_OperateShare) GetOp() NSRequest_ShareRequest_OperateShare_Op {
	if x != nil {
		return x.Op
	}
	return NSRequest_ShareRequest_OperateShare_CREATE
}

func (x *NSRequest_ShareRequest_OperateShare) GetShare() string {
	if x != nil {
		return x.Share
	}
	return ""
}

func (x *NSRequest_ShareRequest_OperateShare) GetAcl() string {
	if x != nil {
		return x.Acl
	}
	return ""
}

func (x *NSRequest_ShareRequest_OperateShare) GetPath() string {
	if x != nil {
		return x.Path
	}
	return ""
}

func (x *NSRequest_ShareRequest_OperateShare) GetUser() string {
	if x != nil {
		return x.User
	}
	return ""
}

func (x *NSRequest_ShareRequest_OperateShare) GetGroup() string {
	if x != nil {
		return x.Group
	}
	return ""
}

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

	Code int64  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
	Msg  string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`
}

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

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

func (*NSResponse_ErrorResponse) ProtoMessage() {}

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

// Deprecated: Use NSResponse_ErrorResponse.ProtoReflect.Descriptor instead.
func (*NSResponse_ErrorResponse) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{21, 0}
}

func (x *NSResponse_ErrorResponse) GetCode() int64 {
	if x != nil {
		return x.Code
	}
	return 0
}

func (x *NSResponse_ErrorResponse) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

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

	Code     int64                                     `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
	Msg      string                                    `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`
	Versions []*NSResponse_VersionResponse_VersionInfo `protobuf:"bytes,3,rep,name=versions,proto3" json:"versions,omitempty"`
}

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

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

func (*NSResponse_VersionResponse) ProtoMessage() {}

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

// Deprecated: Use NSResponse_VersionResponse.ProtoReflect.Descriptor instead.
func (*NSResponse_VersionResponse) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{21, 1}
}

func (x *NSResponse_VersionResponse) GetCode() int64 {
	if x != nil {
		return x.Code
	}
	return 0
}

func (x *NSResponse_VersionResponse) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

func (x *NSResponse_VersionResponse) GetVersions() []*NSResponse_VersionResponse_VersionInfo {
	if x != nil {
		return x.Versions
	}
	return nil
}

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

	Code     int64                                     `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
	Msg      string                                    `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`
	Recycles []*NSResponse_RecycleResponse_RecycleInfo `protobuf:"bytes,3,rep,name=recycles,proto3" json:"recycles,omitempty"`
}

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

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

func (*NSResponse_RecycleResponse) ProtoMessage() {}

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

// Deprecated: Use NSResponse_RecycleResponse.ProtoReflect.Descriptor instead.
func (*NSResponse_RecycleResponse) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{21, 2}
}

func (x *NSResponse_RecycleResponse) GetCode() int64 {
	if x != nil {
		return x.Code
	}
	return 0
}

func (x *NSResponse_RecycleResponse) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

func (x *NSResponse_RecycleResponse) GetRecycles() []*NSResponse_RecycleResponse_RecycleInfo {
	if x != nil {
		return x.Recycles
	}
	return nil
}

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

	Code int64  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
	Msg  string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`
	Rule string `protobuf:"bytes,3,opt,name=rule,proto3" json:"rule,omitempty"`
}

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

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

func (*NSResponse_AclResponse) ProtoMessage() {}

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

// Deprecated: Use NSResponse_AclResponse.ProtoReflect.Descriptor instead.
func (*NSResponse_AclResponse) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{21, 3}
}

func (x *NSResponse_AclResponse) GetCode() int64 {
	if x != nil {
		return x.Code
	}
	return 0
}

func (x *NSResponse_AclResponse) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

func (x *NSResponse_AclResponse) GetRule() string {
	if x != nil {
		return x.Rule
	}
	return ""
}

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

	Code      int64         `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
	Msg       string        `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`
	Quotanode []*QuotaProto `protobuf:"bytes,3,rep,name=quotanode,proto3" json:"quotanode,omitempty"`
}

func (x *NSResponse_QuotaResponse) Reset() {
	*x = NSResponse_QuotaResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_Rpc_proto_msgTypes[54]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*NSResponse_QuotaResponse) ProtoMessage() {}

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

// Deprecated: Use NSResponse_QuotaResponse.ProtoReflect.Descriptor instead.
func (*NSResponse_QuotaResponse) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{21, 4}
}

func (x *NSResponse_QuotaResponse) GetCode() int64 {
	if x != nil {
		return x.Code
	}
	return 0
}

func (x *NSResponse_QuotaResponse) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

func (x *NSResponse_QuotaResponse) GetQuotanode() []*QuotaProto {
	if x != nil {
		return x.Quotanode
	}
	return nil
}

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

	Name    string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Root    string `protobuf:"bytes,2,opt,name=root,proto3" json:"root,omitempty"`
	Rule    string `protobuf:"bytes,3,opt,name=rule,proto3" json:"rule,omitempty"`
	Uid     uint64 `protobuf:"varint,4,opt,name=uid,proto3" json:"uid,omitempty"`
	Nshared uint64 `protobuf:"varint,5,opt,name=nshared,proto3" json:"nshared,omitempty"`
}

func (x *NSResponse_ShareInfo) Reset() {
	*x = NSResponse_ShareInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_Rpc_proto_msgTypes[55]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*NSResponse_ShareInfo) ProtoMessage() {}

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

// Deprecated: Use NSResponse_ShareInfo.ProtoReflect.Descriptor instead.
func (*NSResponse_ShareInfo) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{21, 5}
}

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

func (x *NSResponse_ShareInfo) GetRoot() string {
	if x != nil {
		return x.Root
	}
	return ""
}

func (x *NSResponse_ShareInfo) GetRule() string {
	if x != nil {
		return x.Rule
	}
	return ""
}

func (x *NSResponse_ShareInfo) GetUid() uint64 {
	if x != nil {
		return x.Uid
	}
	return 0
}

func (x *NSResponse_ShareInfo) GetNshared() uint64 {
	if x != nil {
		return x.Nshared
	}
	return 0
}

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

	Name    string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Granted bool   `protobuf:"varint,2,opt,name=granted,proto3" json:"granted,omitempty"`
}

func (x *NSResponse_ShareAccess) Reset() {
	*x = NSResponse_ShareAccess{}
	if protoimpl.UnsafeEnabled {
		mi := &file_Rpc_proto_msgTypes[56]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*NSResponse_ShareAccess) ProtoMessage() {}

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

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

func (x *NSResponse_ShareAccess) GetGranted() bool {
	if x != nil {
		return x.Granted
	}
	return false
}

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

	Code   int64                     `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
	Msg    string                    `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`
	Shares []*NSResponse_ShareInfo   `protobuf:"bytes,3,rep,name=shares,proto3" json:"shares,omitempty"`
	Access []*NSResponse_ShareAccess `protobuf:"bytes,4,rep,name=access,proto3" json:"access,omitempty"`
}

func (x *NSResponse_ShareResponse) Reset() {
	*x = NSResponse_ShareResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_Rpc_proto_msgTypes[57]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*NSResponse_ShareResponse) ProtoMessage() {}

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

func (x *NSResponse_ShareResponse) GetCode() int64 {
	if x != nil {
		return x.Code
	}
	return 0
}

func (x *NSResponse_ShareResponse) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

func (x *NSResponse_ShareResponse) GetShares() []*NSResponse_ShareInfo {
	if x != nil {
		return x.Shares
	}
	return nil
}

func (x *NSResponse_ShareResponse) GetAccess() []*NSResponse_ShareAccess {
	if x != nil {
		return x.Access
	}
	return nil
}

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

	Id    *MDId `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Mtime *Time `protobuf:"bytes,2,opt,name=mtime,proto3" json:"mtime,omitempty"`
}

func (x *NSResponse_VersionResponse_VersionInfo) Reset() {
	*x = NSResponse_VersionResponse_VersionInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_Rpc_proto_msgTypes[58]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*NSResponse_VersionResponse_VersionInfo) ProtoMessage() {}

func (x *NSResponse_VersionResponse_VersionInfo) ProtoReflect() protoreflect.Message {
	mi := &file_Rpc_proto_msgTypes[58]
	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 NSResponse_VersionResponse_VersionInfo.ProtoReflect.Descriptor instead.
func (*NSResponse_VersionResponse_VersionInfo) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{21, 1, 0}
}

func (x *NSResponse_VersionResponse_VersionInfo) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *NSResponse_VersionResponse_VersionInfo) GetMtime() *Time {
	if x != nil {
		return x.Mtime
	}
	return nil
}

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

	Id    *MDId                                               `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Owner *RoleId                                             `protobuf:"bytes,2,opt,name=owner,proto3" json:"owner,omitempty"`
	Dtime *Time                                               `protobuf:"bytes,3,opt,name=dtime,proto3" json:"dtime,omitempty"`
	Size  uint64                                              `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`
	Type  NSResponse_RecycleResponse_RecycleInfo_DELETIONTYPE `protobuf:"varint,5,opt,name=type,proto3,enum=eos.rpc.NSResponse_RecycleResponse_RecycleInfo_DELETIONTYPE" json:"type,omitempty"`
	Key   string                                              `protobuf:"bytes,6,opt,name=key,proto3" json:"key,omitempty"`
}

func (x *NSResponse_RecycleResponse_RecycleInfo) Reset() {
	*x = NSResponse_RecycleResponse_RecycleInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_Rpc_proto_msgTypes[59]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*NSResponse_RecycleResponse_RecycleInfo) ProtoMessage() {}

func (x *NSResponse_RecycleResponse_RecycleInfo) ProtoReflect() protoreflect.Message {
	mi := &file_Rpc_proto_msgTypes[59]
	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 NSResponse_RecycleResponse_RecycleInfo.ProtoReflect.Descriptor instead.
func (*NSResponse_RecycleResponse_RecycleInfo) Descriptor() ([]byte, []int) {
	return file_Rpc_proto_rawDescGZIP(), []int{21, 2, 0}
}

func (x *NSResponse_RecycleResponse_RecycleInfo) GetId() *MDId {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *NSResponse_RecycleResponse_RecycleInfo) GetOwner() *RoleId {
	if x != nil {
		return x.Owner
	}
	return nil
}

func (x *NSResponse_RecycleResponse_RecycleInfo) GetDtime() *Time {
	if x != nil {
		return x.Dtime
	}
	return nil
}

func (x *NSResponse_RecycleResponse_RecycleInfo) GetSize() uint64 {
	if x != nil {
		return x.Size
	}
	return 0
}

func (x *NSResponse_RecycleResponse_RecycleInfo) GetType() NSResponse_RecycleResponse_RecycleInfo_DELETIONTYPE {
	if x != nil {
		return x.Type
	}
	return NSResponse_RecycleResponse_RecycleInfo_FILE
}

func (x *NSResponse_RecycleResponse_RecycleInfo) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

var File_Rpc_proto protoreflect.FileDescriptor

var file_Rpc_proto_rawDesc = []byte{
	0x0a, 0x09, 0x52, 0x70, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x07, 0x65, 0x6f, 0x73,
	0x2e, 0x72, 0x70, 0x63, 0x22, 0x41, 0x0a, 0x0b, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x75, 0x74, 0x68, 0x6b, 0x65, 0x79, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x75, 0x74, 0x68, 0x6b, 0x65, 0x79, 0x12, 0x18, 0x0a,
	0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07,
	0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x25, 0x0a, 0x09, 0x50, 0x69, 0x6e, 0x67, 0x52,
	0x65, 0x70, 0x6c, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x8a,
	0x01, 0x0a, 0x16, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x6e, 0x73, 0x65,
	0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x09, 0x63, 0x6f, 0x6e,
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65,
	0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72,
	0x4d, 0x64, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e,
	0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x75, 0x74, 0x68, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x75, 0x74, 0x68, 0x6b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a,
	0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x5f, 0x6d, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x09, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x4d, 0x64, 0x22, 0x59, 0x0a, 0x11, 0x46,
	0x69, 0x6c, 0x65, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x2a, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x14, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x4d, 0x64,
	0x50, 0x72, 0x6f, 0x74, 0x6f, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07,
	0x61, 0x75, 0x74, 0x68, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61,
	0x75, 0x74, 0x68, 0x6b, 0x65, 0x79, 0x22, 0x3b, 0x0a, 0x0b, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74,
	0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
	0x12, 0x0a, 0x04, 0x72, 0x65, 0x74, 0x63, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04, 0x72,
	0x65, 0x74, 0x63, 0x22, 0x2d, 0x0a, 0x04, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73,
	0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x73, 0x65, 0x63, 0x12, 0x13, 0x0a,
	0x05, 0x6e, 0x5f, 0x73, 0x65, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x6e, 0x53,
	0x65, 0x63, 0x22, 0x34, 0x0a, 0x08, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x12, 0x14,
	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0xc7, 0x04, 0x0a, 0x0b, 0x46, 0x69, 0x6c,
	0x65, 0x4d, 0x64, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74,
	0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x74, 0x49,
	0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03,
	0x75, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04,
	0x52, 0x03, 0x67, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x79,
	0x6f, 0x75, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x61,
	0x79, 0x6f, 0x75, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x12, 0x0a, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a,
	0x05, 0x63, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x65,
	0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x05, 0x63, 0x74, 0x69,
	0x6d, 0x65, 0x12, 0x23, 0x0a, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x69, 0x6d, 0x65,
	0x52, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b,
	0x73, 0x75, 0x6d, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x65, 0x6f, 0x73, 0x2e,
	0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x52, 0x08, 0x63, 0x68,
	0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x75, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x6c,
	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0f,
	0x75, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
	0x38, 0x0a, 0x06, 0x78, 0x61, 0x74, 0x74, 0x72, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x20, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x4d, 0x64,
	0x50, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x58, 0x61, 0x74, 0x74, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72,
	0x79, 0x52, 0x06, 0x78, 0x61, 0x74, 0x74, 0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74,
	0x68, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a,
	0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61,
	0x67, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x04,
	0x52, 0x05, 0x69, 0x6e, 0x6f, 0x64, 0x65, 0x1a, 0x39, 0x0a, 0x0b, 0x58, 0x61, 0x74, 0x74, 0x72,
	0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02,
	0x38, 0x01, 0x22, 0xe5, 0x03, 0x0a, 0x10, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72,
	0x4d, 0x64, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x72, 0x65, 0x6e,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x70, 0x61, 0x72, 0x65,
	0x6e, 0x74, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x04, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x03, 0x67, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x65, 0x65,
	0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x74, 0x72, 0x65,
	0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x0d, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61,
	0x67, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12,
	0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x05, 0x63, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x69, 0x6d,
	0x65, 0x52, 0x05, 0x63, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x05, 0x6d, 0x74, 0x69, 0x6d,
	0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70,
	0x63, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x23, 0x0a,
	0x05, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x65,
	0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x05, 0x73, 0x74, 0x69,
	0x6d, 0x65, 0x12, 0x3d, 0x0a, 0x06, 0x78, 0x61, 0x74, 0x74, 0x72, 0x73, 0x18, 0x0c, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x25, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6e,
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x4d, 0x64, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x58, 0x61,
	0x74, 0x74, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x78, 0x61, 0x74, 0x74, 0x72,
	0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x52,
	0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x0e, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x6f,
	0x64, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x69, 0x6e, 0x6f, 0x64, 0x65, 0x1a,
	0x39, 0x0a, 0x0b, 0x58, 0x61, 0x74, 0x74, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
	0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52,
	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xce, 0x03, 0x0a, 0x0a, 0x51,
	0x75, 0x6f, 0x74, 0x61, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74,
	0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a,
	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x12, 0x26, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x12, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x51, 0x55, 0x4f, 0x54, 0x41, 0x54,
	0x59, 0x50, 0x45, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65,
	0x64, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x75, 0x73,
	0x65, 0x64, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x75, 0x73, 0x65, 0x64, 0x6c,
	0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x04, 0x52, 0x10, 0x75, 0x73, 0x65, 0x64, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x62, 0x79,
	0x74, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x64, 0x66, 0x69, 0x6c, 0x65, 0x73,
	0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x75, 0x73, 0x65, 0x64, 0x66, 0x69, 0x6c, 0x65,
	0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x28, 0x0a,
	0x0f, 0x6d, 0x61, 0x78, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x62, 0x79, 0x74, 0x65, 0x73,
	0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x6c, 0x6f, 0x67, 0x69, 0x63,
	0x61, 0x6c, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x66, 0x69,
	0x6c, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x66, 0x69,
	0x6c, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67,
	0x65, 0x75, 0x73, 0x65, 0x64, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02,
	0x52, 0x13, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x75, 0x73, 0x65, 0x64,
	0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74,
	0x61, 0x67, 0x65, 0x75, 0x73, 0x65, 0x64, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01,
	0x28, 0x02, 0x52, 0x13, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x75, 0x73,
	0x65, 0x64, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x22, 0x66, 0x0a, 0x06, 0x52,
	0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x04, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x67, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65,
	0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65,
	0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x6e,
	0x61, 0x6d, 0x65, 0x22, 0x5f, 0x0a, 0x04, 0x4d, 0x44, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70,
	0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12,
	0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x02, 0x69, 0x64, 0x12,
	0x10, 0x0a, 0x03, 0x69, 0x6e, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x03, 0x69, 0x6e,
	0x6f, 0x12, 0x21, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x59, 0x50, 0x45, 0x52, 0x04,
	0x74, 0x79, 0x70, 0x65, 0x22, 0x3f, 0x0a, 0x05, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a,
	0x04, 0x7a, 0x65, 0x72, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x7a, 0x65, 0x72,
	0x6f, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03,
	0x6d, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04,
	0x52, 0x03, 0x6d, 0x61, 0x78, 0x22, 0xa6, 0x06, 0x0a, 0x0b, 0x4d, 0x44, 0x53, 0x65, 0x6c, 0x65,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x24, 0x0a,
	0x05, 0x63, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x65,
	0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x05, 0x63, 0x74,
	0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x6d,
	0x69, 0x74, 0x52, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x05, 0x73, 0x74, 0x69,
	0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72,
	0x70, 0x63, 0x2e, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x05, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x12,
	0x22, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e,
	0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x04, 0x73,
	0x69, 0x7a, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x74, 0x72, 0x65, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e,
	0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x08, 0x74, 0x72, 0x65, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x12,
	0x2a, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0e, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x6d, 0x69,
	0x74, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, 0x2c, 0x0a, 0x09, 0x6c,
	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e,
	0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x09,
	0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3d, 0x0a, 0x12, 0x75, 0x6e, 0x6c,
	0x69, 0x6e, 0x6b, 0x65, 0x64, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
	0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e,
	0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x11, 0x75, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x4c,
	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x79, 0x6f,
	0x75, 0x74, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6c, 0x61, 0x79, 0x6f,
	0x75, 0x74, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x0b, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x79,
	0x6d, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x79, 0x6d,
	0x6c, 0x69, 0x6e, 0x6b, 0x12, 0x2d, 0x0a, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d,
	0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63,
	0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x52, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b,
	0x73, 0x75, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x0e, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12,
	0x1d, 0x0a, 0x0a, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x10, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x09, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x1d,
	0x0a, 0x0a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x11, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x27, 0x0a,
	0x0f, 0x72, 0x65, 0x67, 0x65, 0x78, 0x70, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x12, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x72, 0x65, 0x67, 0x65, 0x78, 0x70, 0x46, 0x69,
	0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x67, 0x65, 0x78, 0x70,
	0x5f, 0x64, 0x69, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d,
	0x72, 0x65, 0x67, 0x65, 0x78, 0x70, 0x44, 0x69, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x35, 0x0a,
	0x05, 0x78, 0x61, 0x74, 0x74, 0x72, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x65,
	0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x2e, 0x58, 0x61, 0x74, 0x74, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x78,
	0x61, 0x74, 0x74, 0x72, 0x1a, 0x38, 0x0a, 0x0a, 0x58, 0x61, 0x74, 0x74, 0x72, 0x45, 0x6e, 0x74,
	0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc0,
	0x01, 0x0a, 0x09, 0x4d, 0x44, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x04,
	0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73,
	0x2e, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x59, 0x50, 0x45, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12,
	0x1d, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x65, 0x6f,
	0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x49, 0x64, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18,
	0x0a, 0x07, 0x61, 0x75, 0x74, 0x68, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x07, 0x61, 0x75, 0x74, 0x68, 0x6b, 0x65, 0x79, 0x12, 0x23, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63,
	0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x32, 0x0a,
	0x09, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x14, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x53, 0x65, 0x6c,
	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x22, 0x84, 0x01, 0x0a, 0x0a, 0x4d, 0x44, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x21, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0d,
	0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x59, 0x50, 0x45, 0x52, 0x04, 0x74,
	0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x03, 0x66, 0x6d, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x14, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x4d,
	0x64, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x52, 0x03, 0x66, 0x6d, 0x64, 0x12, 0x2b, 0x0a, 0x03, 0x63,
	0x6d, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72,
	0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x4d, 0x64, 0x50, 0x72,
	0x6f, 0x74, 0x6f, 0x52, 0x03, 0x63, 0x6d, 0x64, 0x22, 0xde, 0x01, 0x0a, 0x0b, 0x46, 0x69, 0x6e,
	0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63,
	0x2e, 0x54, 0x59, 0x50, 0x45, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x02, 0x69,
	0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70,
	0x63, 0x2e, 0x4d, 0x44, 0x49, 0x64, 0x52, 0x02, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x04, 0x72, 0x6f,
	0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72,
	0x70, 0x63, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12,
	0x18, 0x0a, 0x07, 0x61, 0x75, 0x74, 0x68, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x07, 0x61, 0x75, 0x74, 0x68, 0x6b, 0x65, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78,
	0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x61, 0x78,
	0x64, 0x65, 0x70, 0x74, 0x68, 0x12, 0x32, 0x0a, 0x09, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72,
	0x70, 0x63, 0x2e, 0x4d, 0x44, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09,
	0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x47, 0x0a, 0x09, 0x53, 0x68, 0x61,
	0x72, 0x65, 0x41, 0x75, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x72, 0x6f, 0x74, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x72, 0x6f, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12,
	0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f,
	0x73, 0x74, 0x22, 0x8a, 0x02, 0x0a, 0x0a, 0x53, 0x68, 0x61, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x74,
	0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f,
	0x6e, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x04, 0x52, 0x07, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6f,
	0x77, 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65,
	0x72, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x67, 0x65, 0x6e,
	0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x1c, 0x0a, 0x09, 0x61,
	0x6c, 0x6c, 0x6f, 0x77, 0x74, 0x72, 0x65, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
	0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x74, 0x72, 0x65, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x74, 0x6f,
	0x6b, 0x65, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x76, 0x74, 0x6f, 0x6b, 0x65,
	0x6e, 0x12, 0x2c, 0x0a, 0x07, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x09, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x12, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x68, 0x61,
	0x72, 0x65, 0x41, 0x75, 0x74, 0x68, 0x52, 0x07, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x73, 0x22,
	0x89, 0x01, 0x0a, 0x0a, 0x53, 0x68, 0x61, 0x72, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x29,
	0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e,
	0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x65, 0x50, 0x72, 0x6f,
	0x74, 0x6f, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67,
	0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69,
	0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x69, 0x61,
	0x6c, 0x69, 0x7a, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x73, 0x65, 0x72,
	0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x65, 0x65, 0x64, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x65, 0x65, 0x64, 0x22, 0x8c, 0x1e, 0x0a, 0x09,
	0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x75, 0x74,
	0x68, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x75, 0x74, 0x68,
	0x6b, 0x65, 0x79, 0x12, 0x23, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0f, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x6f, 0x6c, 0x65,
	0x49, 0x64, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x37, 0x0a, 0x05, 0x6d, 0x6b, 0x64, 0x69,
	0x72, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70,
	0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4d, 0x6b, 0x64, 0x69,
	0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x05, 0x6d, 0x6b, 0x64, 0x69,
	0x72, 0x12, 0x37, 0x0a, 0x05, 0x72, 0x6d, 0x64, 0x69, 0x72, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1f, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x2e, 0x52, 0x6d, 0x64, 0x69, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x48, 0x00, 0x52, 0x05, 0x72, 0x6d, 0x64, 0x69, 0x72, 0x12, 0x37, 0x0a, 0x05, 0x74, 0x6f,
	0x75, 0x63, 0x68, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x65, 0x6f, 0x73, 0x2e,
	0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x54, 0x6f,
	0x75, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x05, 0x74, 0x6f,
	0x75, 0x63, 0x68, 0x12, 0x3a, 0x0a, 0x06, 0x75, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x18, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x55, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x06, 0x75, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x12,
	0x2e, 0x0a, 0x02, 0x72, 0x6d, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x65, 0x6f,
	0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e,
	0x52, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x02, 0x72, 0x6d, 0x12,
	0x3a, 0x0a, 0x06, 0x72, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x20, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x48, 0x00, 0x52, 0x06, 0x72, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3d, 0x0a, 0x07, 0x73,
	0x79, 0x6d, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65,
	0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x2e, 0x53, 0x79, 0x6d, 0x6c, 0x69, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48,
	0x00, 0x52, 0x07, 0x73, 0x79, 0x6d, 0x6c, 0x69, 0x6e, 0x6b, 0x12, 0x3d, 0x0a, 0x07, 0x76, 0x65,
	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6f,
	0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e,
	0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00,
	0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3d, 0x0a, 0x07, 0x72, 0x65, 0x63,
	0x79, 0x63, 0x6c, 0x65, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6f, 0x73,
	0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x52,
	0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52,
	0x07, 0x72, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x12, 0x3a, 0x0a, 0x05, 0x78, 0x61, 0x74, 0x74,
	0x72, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70,
	0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x65, 0x74, 0x58,
	0x41, 0x74, 0x74, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x05, 0x78,
	0x61, 0x74, 0x74, 0x72, 0x12, 0x37, 0x0a, 0x05, 0x63, 0x68, 0x6f, 0x77, 0x6e, 0x18, 0x1f, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x68, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x05, 0x63, 0x68, 0x6f, 0x77, 0x6e, 0x12, 0x37, 0x0a,
	0x05, 0x63, 0x68, 0x6d, 0x6f, 0x64, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x65,
	0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x2e, 0x43, 0x68, 0x6d, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52,
	0x05, 0x63, 0x68, 0x6d, 0x6f, 0x64, 0x12, 0x31, 0x0a, 0x03, 0x61, 0x63, 0x6c, 0x18, 0x21, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x63, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x48, 0x00, 0x52, 0x03, 0x61, 0x63, 0x6c, 0x12, 0x37, 0x0a, 0x05, 0x74, 0x6f, 0x6b,
	0x65, 0x6e, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72,
	0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x6b,
	0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x05, 0x74, 0x6f, 0x6b,
	0x65, 0x6e, 0x12, 0x37, 0x0a, 0x05, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x23, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1f, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x48, 0x00, 0x52, 0x05, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x12, 0x37, 0x0a, 0x05, 0x73,
	0x68, 0x61, 0x72, 0x65, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x65, 0x6f, 0x73,
	0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53,
	0x68, 0x61, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x05, 0x73,
	0x68, 0x61, 0x72, 0x65, 0x1a, 0x5f, 0x0a, 0x0c, 0x4d, 0x6b, 0x64, 0x69, 0x72, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x49, 0x64, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76,
	0x65, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x04, 0x6d, 0x6f, 0x64, 0x65, 0x1a, 0x2d, 0x0a, 0x0c, 0x52, 0x6d, 0x64, 0x69, 0x72, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x49, 0x64,
	0x52, 0x02, 0x69, 0x64, 0x1a, 0x2d, 0x0a, 0x0c, 0x54, 0x6f, 0x75, 0x63, 0x68, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x49, 0x64, 0x52,
	0x02, 0x69, 0x64, 0x1a, 0x4c, 0x0a, 0x0d, 0x55, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x49, 0x64, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x6f, 0x72, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6e, 0x6f, 0x72, 0x65, 0x63, 0x79, 0x63, 0x6c,
	0x65, 0x1a, 0x66, 0x0a, 0x09, 0x52, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d,
	0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73,
	0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x49, 0x64, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a,
	0x09, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x09, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6e,
	0x6f, 0x72, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
	0x6e, 0x6f, 0x72, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x1a, 0x46, 0x0a, 0x0d, 0x52, 0x65, 0x6e,
	0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x02, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63,
	0x2e, 0x4d, 0x44, 0x49, 0x64, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72,
	0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65,
	0x74, 0x1a, 0x47, 0x0a, 0x0e, 0x53, 0x79, 0x6d, 0x6c, 0x69, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x49, 0x64, 0x52, 0x02,
	0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x1a, 0xec, 0x01, 0x0a, 0x0e, 0x56,
	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a,
	0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e,
	0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x49, 0x64, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3f, 0x0a, 0x03,
	0x63, 0x6d, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x65, 0x6f, 0x73, 0x2e,
	0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x56, 0x65,
	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x56, 0x45, 0x52,
	0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4d, 0x44, 0x52, 0x03, 0x63, 0x6d, 0x64, 0x12, 0x1e, 0x0a,
	0x0a, 0x6d, 0x61, 0x78, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a,
	0x0b, 0x67, 0x72, 0x61, 0x62, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0b, 0x67, 0x72, 0x61, 0x62, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22,
	0x38, 0x0a, 0x0b, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4d, 0x44, 0x12, 0x0a,
	0x0a, 0x06, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x55,
	0x52, 0x47, 0x45, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x49, 0x53, 0x54, 0x10, 0x02, 0x12,
	0x08, 0x0a, 0x04, 0x47, 0x52, 0x41, 0x42, 0x10, 0x03, 0x1a, 0xd4, 0x03, 0x0a, 0x0e, 0x52, 0x65,
	0x63, 0x79, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03,
	0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x3f,
	0x0a, 0x03, 0x63, 0x6d, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x65, 0x6f,
	0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e,
	0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x52,
	0x45, 0x43, 0x59, 0x43, 0x4c, 0x45, 0x5f, 0x43, 0x4d, 0x44, 0x52, 0x03, 0x63, 0x6d, 0x64, 0x12,
	0x50, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x66, 0x6c, 0x61, 0x67, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e,
	0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x46,
	0x6c, 0x61, 0x67, 0x73, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x66, 0x6c, 0x61,
	0x67, 0x12, 0x49, 0x0a, 0x09, 0x70, 0x75, 0x72, 0x67, 0x65, 0x64, 0x61, 0x74, 0x65, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e,
	0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x72, 0x67, 0x65, 0x44, 0x61, 0x74,
	0x65, 0x52, 0x09, 0x70, 0x75, 0x72, 0x67, 0x65, 0x64, 0x61, 0x74, 0x65, 0x1a, 0x58, 0x0a, 0x0c,
	0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x14, 0x0a, 0x05,
	0x66, 0x6f, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x66, 0x6f, 0x72,
	0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x6b, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x06, 0x6d, 0x6b, 0x70, 0x61, 0x74, 0x68, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x65,
	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x76, 0x65,
	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x47, 0x0a, 0x09, 0x50, 0x75, 0x72, 0x67, 0x65, 0x44,
	0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x79, 0x65, 0x61, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x04, 0x79, 0x65, 0x61, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x6e, 0x74, 0x68,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x12, 0x10, 0x0a,
	0x03, 0x64, 0x61, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x64, 0x61, 0x79, 0x22,
	0x2f, 0x0a, 0x0b, 0x52, 0x45, 0x43, 0x59, 0x43, 0x4c, 0x45, 0x5f, 0x43, 0x4d, 0x44, 0x12, 0x0b,
	0x0a, 0x07, 0x52, 0x45, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x50,
	0x55, 0x52, 0x47, 0x45, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x49, 0x53, 0x54, 0x10, 0x02,
	0x1a, 0x8d, 0x02, 0x0a, 0x0f, 0x53, 0x65, 0x74, 0x58, 0x41, 0x74, 0x74, 0x72, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x49, 0x64, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x46, 0x0a, 0x06, 0x78, 0x61, 0x74, 0x74, 0x72, 0x73, 0x18, 0x02, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x65, 0x74, 0x58, 0x41, 0x74, 0x74, 0x72,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x58, 0x61, 0x74, 0x74, 0x72, 0x73, 0x45, 0x6e,
	0x74, 0x72, 0x79, 0x52, 0x06, 0x78, 0x61, 0x74, 0x74, 0x72, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x72,
	0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
	0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6b, 0x65, 0x79,
	0x73, 0x74, 0x6f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x0c, 0x6b, 0x65, 0x79, 0x73, 0x74, 0x6f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x16, 0x0a,
	0x06, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x1a, 0x39, 0x0a, 0x0b, 0x58, 0x61, 0x74, 0x74, 0x72, 0x73, 0x45,
	0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01,
	0x1a, 0x54, 0x0a, 0x0c, 0x43, 0x68, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x1d, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x65,
	0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x49, 0x64, 0x52, 0x02, 0x69, 0x64, 0x12,
	0x25, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f,
	0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x52,
	0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x1a, 0x41, 0x0a, 0x0c, 0x43, 0x68, 0x6d, 0x6f, 0x64, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x49,
	0x64, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x03, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x1a, 0xc8, 0x02, 0x0a, 0x0a, 0x41, 0x63,
	0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d,
	0x44, 0x49, 0x64, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3b, 0x0a, 0x03, 0x63, 0x6d, 0x64, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e,
	0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x63, 0x6c, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x2e, 0x41, 0x43, 0x4c, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x41, 0x4e, 0x44, 0x52,
	0x03, 0x63, 0x6d, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69,
	0x76, 0x65, 0x12, 0x3a, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e,
	0x32, 0x26, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x63, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e,
	0x41, 0x43, 0x4c, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12,
	0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x75,
	0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2d,
	0x0a, 0x0b, 0x41, 0x43, 0x4c, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x41, 0x4e, 0x44, 0x12, 0x08, 0x0a,
	0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x4f, 0x44, 0x49, 0x46,
	0x59, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x49, 0x53, 0x54, 0x10, 0x02, 0x22, 0x25, 0x0a,
	0x08, 0x41, 0x43, 0x4c, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x53, 0x45,
	0x52, 0x5f, 0x41, 0x43, 0x4c, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x59, 0x53, 0x5f, 0x41,
	0x43, 0x4c, 0x10, 0x01, 0x1a, 0x39, 0x0a, 0x0c, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x68,
	0x61, 0x72, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x1a,
	0xc8, 0x01, 0x0a, 0x0c, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04,
	0x70, 0x61, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0f, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x49,
	0x64, 0x52, 0x02, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x10, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x51, 0x55, 0x4f, 0x54,
	0x41, 0x4f, 0x50, 0x52, 0x02, 0x6f, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x66, 0x69,
	0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x66, 0x69,
	0x6c, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12,
	0x29, 0x0a, 0x05, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13,
	0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x51, 0x55, 0x4f, 0x54, 0x41, 0x45, 0x4e,
	0x54, 0x52, 0x59, 0x52, 0x05, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x1a, 0xd2, 0x04, 0x0a, 0x0c, 0x53,
	0x68, 0x61, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x39, 0x0a, 0x02, 0x6c,
	0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70,
	0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x68, 0x61, 0x72,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65,
	0x48, 0x00, 0x52, 0x02, 0x6c, 0x73, 0x12, 0x3e, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65,
	0x48, 0x00, 0x52, 0x02, 0x6f, 0x70, 0x1a, 0xb6, 0x01, 0x0a, 0x07, 0x4c, 0x73, 0x53, 0x68, 0x61,
	0x72, 0x65, 0x12, 0x4f, 0x0a, 0x09, 0x6f, 0x75, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e,
	0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x65, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4f,
	0x75, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x61, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x22, 0x3c, 0x0a, 0x09, 0x4f, 0x75, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x08,
	0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4d, 0x4f, 0x4e, 0x49,
	0x54, 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x4c, 0x49, 0x53, 0x54,
	0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x4a, 0x53, 0x4f, 0x4e, 0x10, 0x03, 0x1a,
	0x83, 0x02, 0x0a, 0x0c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65,
	0x12, 0x3f, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x65,
	0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x2e, 0x53, 0x68, 0x61, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x70,
	0x65, 0x72, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4f, 0x70, 0x52, 0x02, 0x6f,
	0x70, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x63, 0x6c, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x61, 0x63, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74,
	0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a,
	0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65,
	0x72, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x4c, 0x0a, 0x02, 0x4f, 0x70, 0x12, 0x0a, 0x0a,
	0x06, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x4d,
	0x4f, 0x56, 0x45, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x48, 0x41, 0x52, 0x45, 0x10, 0x02,
	0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x53, 0x48, 0x41, 0x52, 0x45, 0x10, 0x03, 0x12, 0x0a, 0x0a,
	0x06, 0x41, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x4f, 0x44,
	0x49, 0x46, 0x59, 0x10, 0x05, 0x42, 0x08, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x63, 0x6d, 0x64, 0x42,
	0x09, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x22, 0xa4, 0x0c, 0x0a, 0x0a, 0x4e,
	0x53, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x05, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72,
	0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x72,
	0x72, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x05, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x12, 0x3d, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
	0x6e, 0x12, 0x3d, 0x0a, 0x07, 0x72, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x23, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x72, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65,
	0x12, 0x31, 0x0a, 0x03, 0x61, 0x63, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e,
	0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x2e, 0x41, 0x63, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x03,
	0x61, 0x63, 0x6c, 0x12, 0x37, 0x0a, 0x05, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x05, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x12, 0x37, 0x0a, 0x05,
	0x73, 0x68, 0x61, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6f,
	0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x2e, 0x53, 0x68, 0x61, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x05,
	0x73, 0x68, 0x61, 0x72, 0x65, 0x1a, 0x35, 0x0a, 0x0d, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73,
	0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x1a, 0xd7, 0x01, 0x0a,
	0x0f, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04,
	0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x4b, 0x0a, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
	0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72,
	0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x56, 0x65,
	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x56, 0x65,
	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69,
	0x6f, 0x6e, 0x73, 0x1a, 0x51, 0x0a, 0x0b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e,
	0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d,
	0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x49, 0x64, 0x52, 0x02, 0x69,
	0x64, 0x12, 0x23, 0x0a, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x52,
	0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x1a, 0x9b, 0x03, 0x0a, 0x0f, 0x52, 0x65, 0x63, 0x79, 0x63,
	0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f,
	0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10,
	0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67,
	0x12, 0x4b, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x49,
	0x6e, 0x66, 0x6f, 0x52, 0x08, 0x72, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x73, 0x1a, 0x94, 0x02,
	0x0a, 0x0b, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a,
	0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e,
	0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x49, 0x64, 0x52, 0x02, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x05,
	0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x65, 0x6f,
	0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x52, 0x05, 0x6f, 0x77,
	0x6e, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x05, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x69, 0x6d,
	0x65, 0x52, 0x05, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x50, 0x0a, 0x04,
	0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x65, 0x6f, 0x73,
	0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e,
	0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e,
	0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x44, 0x45, 0x4c, 0x45,
	0x54, 0x49, 0x4f, 0x4e, 0x54, 0x59, 0x50, 0x45, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x10,
	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
	0x22, 0x22, 0x0a, 0x0c, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x49, 0x4f, 0x4e, 0x54, 0x59, 0x50, 0x45,
	0x12, 0x08, 0x0a, 0x04, 0x46, 0x49, 0x4c, 0x45, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x54, 0x52,
	0x45, 0x45, 0x10, 0x01, 0x1a, 0x47, 0x0a, 0x0b, 0x41, 0x63, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x75, 0x6c,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x1a, 0x68, 0x0a,
	0x0d, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12,
	0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x63, 0x6f,
	0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x6d, 0x73, 0x67, 0x12, 0x31, 0x0a, 0x09, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x6e, 0x6f, 0x64,
	0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70,
	0x63, 0x2e, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x52, 0x09, 0x71, 0x75,
	0x6f, 0x74, 0x61, 0x6e, 0x6f, 0x64, 0x65, 0x1a, 0x73, 0x0a, 0x09, 0x53, 0x68, 0x61, 0x72, 0x65,
	0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6f, 0x74,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6f, 0x74, 0x12, 0x12, 0x0a, 0x04,
	0x72, 0x75, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x75, 0x6c, 0x65,
	0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x75,
	0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x07, 0x6e, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x1a, 0x3b, 0x0a, 0x0b,
	0x53, 0x68, 0x61, 0x72, 0x65, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
	0x18, 0x0a, 0x07, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x07, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x1a, 0xa5, 0x01, 0x0a, 0x0d, 0x53, 0x68,
	0x61, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12,
	0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73,
	0x67, 0x12, 0x35, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x1d, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f,
	0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x06, 0x61, 0x63, 0x63, 0x65,
	0x73, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72,
	0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x68,
	0x61, 0x72, 0x65, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x06, 0x61, 0x63, 0x63, 0x65, 0x73,
	0x73, 0x22, 0x29, 0x0a, 0x0d, 0x4e, 0x73, 0x53, 0x74, 0x61, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x75, 0x74, 0x68, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x75, 0x74, 0x68, 0x6b, 0x65, 0x79, 0x22, 0xab, 0x03, 0x0a,
	0x0e, 0x4e, 0x73, 0x53, 0x74, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x65, 0x6d, 0x73, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a,
	0x06, 0x6e, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6e,
	0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
	0x6e, 0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6e, 0x63, 0x6f, 0x6e,
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x74, 0x5f,
	0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x74,
	0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f,
	0x66, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x63, 0x75, 0x72, 0x72, 0x65,
	0x6e, 0x74, 0x46, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74,
	0x5f, 0x63, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x63, 0x75, 0x72, 0x72,
	0x65, 0x6e, 0x74, 0x43, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x65, 0x6d, 0x5f, 0x76, 0x69,
	0x72, 0x74, 0x75, 0x61, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x6d, 0x65, 0x6d,
	0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x6d, 0x5f, 0x72,
	0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6d,
	0x65, 0x6d, 0x52, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x65,
	0x6d, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6d,
	0x65, 0x6d, 0x53, 0x68, 0x61, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x6d, 0x5f, 0x67,
	0x72, 0x6f, 0x77, 0x74, 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6d, 0x65, 0x6d,
	0x47, 0x72, 0x6f, 0x77, 0x74, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64,
	0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73,
	0x12, 0x10, 0x0a, 0x03, 0x66, 0x64, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x66,
	0x64, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01,
	0x28, 0x04, 0x52, 0x06, 0x75, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x22, 0xba, 0x03, 0x0a, 0x0d, 0x4d,
	0x61, 0x6e, 0x69, 0x6c, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x0c,
	0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x41, 0x4e,
	0x49, 0x4c, 0x41, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45,
	0x52, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a,
	0x08, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x07, 0x61, 0x75, 0x74, 0x68, 0x4b, 0x65, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x68, 0x61, 0x72, 0x65, 0x5f, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x68, 0x61, 0x72, 0x65, 0x4e,
	0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x68, 0x61, 0x72, 0x65, 0x5f, 0x69,
	0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x68, 0x61, 0x72, 0x65, 0x49, 0x64,
	0x12, 0x24, 0x0a, 0x0e, 0x73, 0x68, 0x61, 0x72, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f,
	0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, 0x47,
	0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18,
	0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07,
	0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x21,
	0x0a, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x65, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x0b,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x45, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x68, 0x61, 0x72, 0x65, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18,
	0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x68, 0x61, 0x72, 0x65, 0x48, 0x6f, 0x73, 0x74,
	0x12, 0x25, 0x0a, 0x0e, 0x73, 0x68, 0x61, 0x72, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x68, 0x61, 0x72, 0x65, 0x4c,
	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xca, 0x01, 0x0a, 0x0e, 0x4d, 0x61, 0x6e, 0x69,
	0x6c, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73,
	0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04,
	0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65,
	0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x64, 0x12,
	0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74,
	0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x61,
	0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x77, 0x5f, 0x73, 0x68,
	0x61, 0x72, 0x65, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x0d, 0x6e, 0x65, 0x77, 0x53, 0x68, 0x61, 0x72, 0x65, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x12, 0x24,
	0x0a, 0x0e, 0x6e, 0x65, 0x77, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68,
	0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6e, 0x65, 0x77, 0x53, 0x68, 0x61, 0x72, 0x65,
	0x50, 0x61, 0x74, 0x68, 0x2a, 0x36, 0x0a, 0x04, 0x54, 0x59, 0x50, 0x45, 0x12, 0x08, 0x0a, 0x04,
	0x46, 0x49, 0x4c, 0x45, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4f, 0x4e, 0x54, 0x41, 0x49,
	0x4e, 0x45, 0x52, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x4c, 0x49, 0x53, 0x54, 0x49, 0x4e, 0x47,
	0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x54, 0x41, 0x54, 0x10, 0x03, 0x2a, 0x2d, 0x0a, 0x09,
	0x51, 0x55, 0x4f, 0x54, 0x41, 0x54, 0x59, 0x50, 0x45, 0x12, 0x08, 0x0a, 0x04, 0x55, 0x53, 0x45,
	0x52, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x10, 0x02, 0x12, 0x0b,
	0x0a, 0x07, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x10, 0x03, 0x2a, 0x2f, 0x0a, 0x07, 0x51,
	0x55, 0x4f, 0x54, 0x41, 0x4f, 0x50, 0x12, 0x07, 0x0a, 0x03, 0x47, 0x45, 0x54, 0x10, 0x00, 0x12,
	0x07, 0x0a, 0x03, 0x53, 0x45, 0x54, 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02, 0x52, 0x4d, 0x10, 0x02,
	0x12, 0x0a, 0x0a, 0x06, 0x52, 0x4d, 0x4e, 0x4f, 0x44, 0x45, 0x10, 0x03, 0x2a, 0x2d, 0x0a, 0x0a,
	0x51, 0x55, 0x4f, 0x54, 0x41, 0x45, 0x4e, 0x54, 0x52, 0x59, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f,
	0x4e, 0x45, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x56, 0x4f, 0x4c, 0x55, 0x4d, 0x45, 0x10, 0x01,
	0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e, 0x4f, 0x44, 0x45, 0x10, 0x02, 0x2a, 0x94, 0x01, 0x0a, 0x13,
	0x4d, 0x41, 0x4e, 0x49, 0x4c, 0x41, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x54,
	0x59, 0x50, 0x45, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x48,
	0x41, 0x52, 0x45, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x5f,
	0x53, 0x48, 0x41, 0x52, 0x45, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x45, 0x58, 0x54, 0x45, 0x4e,
	0x44, 0x5f, 0x53, 0x48, 0x41, 0x52, 0x45, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x48, 0x52,
	0x49, 0x4e, 0x4b, 0x5f, 0x53, 0x48, 0x41, 0x52, 0x45, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x4d,
	0x41, 0x4e, 0x41, 0x47, 0x45, 0x5f, 0x45, 0x58, 0x49, 0x53, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x04,
	0x12, 0x0c, 0x0a, 0x08, 0x55, 0x4e, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x10, 0x05, 0x12, 0x12,
	0x0a, 0x0e, 0x47, 0x45, 0x54, 0x5f, 0x43, 0x41, 0x50, 0x41, 0x43, 0x49, 0x54, 0x49, 0x45, 0x53,
	0x10, 0x06, 0x32, 0xeb, 0x03, 0x0a, 0x03, 0x45, 0x6f, 0x73, 0x12, 0x32, 0x0a, 0x04, 0x50, 0x69,
	0x6e, 0x67, 0x12, 0x14, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x69, 0x6e,
	0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72,
	0x70, 0x63, 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x31,
	0x0a, 0x02, 0x4d, 0x44, 0x12, 0x12, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d,
	0x44, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72,
	0x70, 0x63, 0x2e, 0x4d, 0x44, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x30,
	0x01, 0x12, 0x35, 0x0a, 0x04, 0x46, 0x69, 0x6e, 0x64, 0x12, 0x14, 0x2e, 0x65, 0x6f, 0x73, 0x2e,
	0x72, 0x70, 0x63, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x13, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x44, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x30, 0x01, 0x12, 0x3b, 0x0a, 0x06, 0x4e, 0x73, 0x53, 0x74,
	0x61, 0x74, 0x12, 0x16, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x73, 0x53,
	0x74, 0x61, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x65, 0x6f, 0x73,
	0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x73, 0x53, 0x74, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x0f, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e,
	0x65, 0x72, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x12, 0x1f, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72,
	0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x6e, 0x73, 0x65,
	0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x65, 0x6f, 0x73, 0x2e,
	0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22,
	0x00, 0x12, 0x40, 0x0a, 0x0a, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x12,
	0x1a, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e,
	0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x65, 0x6f,
	0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c,
	0x79, 0x22, 0x00, 0x12, 0x31, 0x0a, 0x04, 0x45, 0x78, 0x65, 0x63, 0x12, 0x12, 0x2e, 0x65, 0x6f,
	0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x13, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x53, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x13, 0x4d, 0x61, 0x6e, 0x69, 0x6c, 0x61,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x2e,
	0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x6e, 0x69, 0x6c, 0x61, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x65, 0x6f, 0x73, 0x2e, 0x72, 0x70, 0x63, 0x2e,
	0x4d, 0x61, 0x6e, 0x69, 0x6c, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
	0x42, 0x55, 0x0a, 0x0f, 0x69, 0x6f, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x65, 0x6f, 0x73, 0x2e,
	0x72, 0x70, 0x63, 0x42, 0x08, 0x45, 0x6f, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a,
	0x30, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x65, 0x72, 0x6e,
	0x2d, 0x65, 0x6f, 0x73, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x3b, 0x65, 0x6f, 0x73, 0x5f, 0x67, 0x72, 0x70,
	0x63, 0xa2, 0x02, 0x03, 0x45, 0x4f, 0x53, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_Rpc_proto_rawDescOnce sync.Once
	file_Rpc_proto_rawDescData = file_Rpc_proto_rawDesc
)

func file_Rpc_proto_rawDescGZIP() []byte {
	file_Rpc_proto_rawDescOnce.Do(func() {
		file_Rpc_proto_rawDescData = protoimpl.X.CompressGZIP(file_Rpc_proto_rawDescData)
	})
	return file_Rpc_proto_rawDescData
}

var file_Rpc_proto_enumTypes = make([]protoimpl.EnumInfo, 12)
var file_Rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 60)
var file_Rpc_proto_goTypes = []interface{}{
	(TYPE)(0),                // 0: eos.rpc.TYPE
	(QUOTATYPE)(0),           // 1: eos.rpc.QUOTATYPE
	(QUOTAOP)(0),             // 2: eos.rpc.QUOTAOP
	(QUOTAENTRY)(0),          // 3: eos.rpc.QUOTAENTRY
	(MANILA_REQUEST_TYPE)(0), // 4: eos.rpc.MANILA_REQUEST_TYPE
	(NSRequest_VersionRequest_VERSION_CMD)(0),                // 5: eos.rpc.NSRequest.VersionRequest.VERSION_CMD
	(NSRequest_RecycleRequest_RECYCLE_CMD)(0),                // 6: eos.rpc.NSRequest.RecycleRequest.RECYCLE_CMD
	(NSRequest_AclRequest_ACL_COMMAND)(0),                    // 7: eos.rpc.NSRequest.AclRequest.ACL_COMMAND
	(NSRequest_AclRequest_ACL_TYPE)(0),                       // 8: eos.rpc.NSRequest.AclRequest.ACL_TYPE
	(NSRequest_ShareRequest_LsShare_OutFormat)(0),            // 9: eos.rpc.NSRequest.ShareRequest.LsShare.OutFormat
	(NSRequest_ShareRequest_OperateShare_Op)(0),              // 10: eos.rpc.NSRequest.ShareRequest.OperateShare.Op
	(NSResponse_RecycleResponse_RecycleInfo_DELETIONTYPE)(0), // 11: eos.rpc.NSResponse.RecycleResponse.RecycleInfo.DELETIONTYPE
	(*PingRequest)(nil),                                      // 12: eos.rpc.PingRequest
	(*PingReply)(nil),                                        // 13: eos.rpc.PingReply
	(*ContainerInsertRequest)(nil),                           // 14: eos.rpc.ContainerInsertRequest
	(*FileInsertRequest)(nil),                                // 15: eos.rpc.FileInsertRequest
	(*InsertReply)(nil),                                      // 16: eos.rpc.InsertReply
	(*Time)(nil),                                             // 17: eos.rpc.Time
	(*Checksum)(nil),                                         // 18: eos.rpc.Checksum
	(*FileMdProto)(nil),                                      // 19: eos.rpc.FileMdProto
	(*ContainerMdProto)(nil),                                 // 20: eos.rpc.ContainerMdProto
	(*QuotaProto)(nil),                                       // 21: eos.rpc.QuotaProto
	(*RoleId)(nil),                                           // 22: eos.rpc.RoleId
	(*MDId)(nil),                                             // 23: eos.rpc.MDId
	(*Limit)(nil),                                            // 24: eos.rpc.Limit
	(*MDSelection)(nil),                                      // 25: eos.rpc.MDSelection
	(*MDRequest)(nil),                                        // 26: eos.rpc.MDRequest
	(*MDResponse)(nil),                                       // 27: eos.rpc.MDResponse
	(*FindRequest)(nil),                                      // 28: eos.rpc.FindRequest
	(*ShareAuth)(nil),                                        // 29: eos.rpc.ShareAuth
	(*ShareProto)(nil),                                       // 30: eos.rpc.ShareProto
	(*ShareToken)(nil),                                       // 31: eos.rpc.ShareToken
	(*NSRequest)(nil),                                        // 32: eos.rpc.NSRequest
	(*NSResponse)(nil),                                       // 33: eos.rpc.NSResponse
	(*NsStatRequest)(nil),                                    // 34: eos.rpc.NsStatRequest
	(*NsStatResponse)(nil),                                   // 35: eos.rpc.NsStatResponse
	(*ManilaRequest)(nil),                                    // 36: eos.rpc.ManilaRequest
	(*ManilaResponse)(nil),                                   // 37: eos.rpc.ManilaResponse
	nil,                                                      // 38: eos.rpc.FileMdProto.XattrsEntry
	nil,                                                      // 39: eos.rpc.ContainerMdProto.XattrsEntry
	nil,                                                      // 40: eos.rpc.MDSelection.XattrEntry
	(*NSRequest_MkdirRequest)(nil),                           // 41: eos.rpc.NSRequest.MkdirRequest
	(*NSRequest_RmdirRequest)(nil),                           // 42: eos.rpc.NSRequest.RmdirRequest
	(*NSRequest_TouchRequest)(nil),                           // 43: eos.rpc.NSRequest.TouchRequest
	(*NSRequest_UnlinkRequest)(nil),                          // 44: eos.rpc.NSRequest.UnlinkRequest
	(*NSRequest_RmRequest)(nil),                              // 45: eos.rpc.NSRequest.RmRequest
	(*NSRequest_RenameRequest)(nil),                          // 46: eos.rpc.NSRequest.RenameRequest
	(*NSRequest_SymlinkRequest)(nil),                         // 47: eos.rpc.NSRequest.SymlinkRequest
	(*NSRequest_VersionRequest)(nil),                         // 48: eos.rpc.NSRequest.VersionRequest
	(*NSRequest_RecycleRequest)(nil),                         // 49: eos.rpc.NSRequest.RecycleRequest
	(*NSRequest_SetXAttrRequest)(nil),                        // 50: eos.rpc.NSRequest.SetXAttrRequest
	(*NSRequest_ChownRequest)(nil),                           // 51: eos.rpc.NSRequest.ChownRequest
	(*NSRequest_ChmodRequest)(nil),                           // 52: eos.rpc.NSRequest.ChmodRequest
	(*NSRequest_AclRequest)(nil),                             // 53: eos.rpc.NSRequest.AclRequest
	(*NSRequest_TokenRequest)(nil),                           // 54: eos.rpc.NSRequest.TokenRequest
	(*NSRequest_QuotaRequest)(nil),                           // 55: eos.rpc.NSRequest.QuotaRequest
	(*NSRequest_ShareRequest)(nil),                           // 56: eos.rpc.NSRequest.ShareRequest
	(*NSRequest_RecycleRequest_RestoreFlags)(nil),            // 57: eos.rpc.NSRequest.RecycleRequest.RestoreFlags
	(*NSRequest_RecycleRequest_PurgeDate)(nil),               // 58: eos.rpc.NSRequest.RecycleRequest.PurgeDate
	nil,                                    // 59: eos.rpc.NSRequest.SetXAttrRequest.XattrsEntry
	(*NSRequest_ShareRequest_LsShare)(nil), // 60: eos.rpc.NSRequest.ShareRequest.LsShare
	(*NSRequest_ShareRequest_OperateShare)(nil),    // 61: eos.rpc.NSRequest.ShareRequest.OperateShare
	(*NSResponse_ErrorResponse)(nil),               // 62: eos.rpc.NSResponse.ErrorResponse
	(*NSResponse_VersionResponse)(nil),             // 63: eos.rpc.NSResponse.VersionResponse
	(*NSResponse_RecycleResponse)(nil),             // 64: eos.rpc.NSResponse.RecycleResponse
	(*NSResponse_AclResponse)(nil),                 // 65: eos.rpc.NSResponse.AclResponse
	(*NSResponse_QuotaResponse)(nil),               // 66: eos.rpc.NSResponse.QuotaResponse
	(*NSResponse_ShareInfo)(nil),                   // 67: eos.rpc.NSResponse.ShareInfo
	(*NSResponse_ShareAccess)(nil),                 // 68: eos.rpc.NSResponse.ShareAccess
	(*NSResponse_ShareResponse)(nil),               // 69: eos.rpc.NSResponse.ShareResponse
	(*NSResponse_VersionResponse_VersionInfo)(nil), // 70: eos.rpc.NSResponse.VersionResponse.VersionInfo
	(*NSResponse_RecycleResponse_RecycleInfo)(nil), // 71: eos.rpc.NSResponse.RecycleResponse.RecycleInfo
}
var file_Rpc_proto_depIdxs = []int32{
	20,  // 0: eos.rpc.ContainerInsertRequest.container:type_name -> eos.rpc.ContainerMdProto
	19,  // 1: eos.rpc.FileInsertRequest.files:type_name -> eos.rpc.FileMdProto
	17,  // 2: eos.rpc.FileMdProto.ctime:type_name -> eos.rpc.Time
	17,  // 3: eos.rpc.FileMdProto.mtime:type_name -> eos.rpc.Time
	18,  // 4: eos.rpc.FileMdProto.checksum:type_name -> eos.rpc.Checksum
	38,  // 5: eos.rpc.FileMdProto.xattrs:type_name -> eos.rpc.FileMdProto.XattrsEntry
	17,  // 6: eos.rpc.ContainerMdProto.ctime:type_name -> eos.rpc.Time
	17,  // 7: eos.rpc.ContainerMdProto.mtime:type_name -> eos.rpc.Time
	17,  // 8: eos.rpc.ContainerMdProto.stime:type_name -> eos.rpc.Time
	39,  // 9: eos.rpc.ContainerMdProto.xattrs:type_name -> eos.rpc.ContainerMdProto.XattrsEntry
	1,   // 10: eos.rpc.QuotaProto.type:type_name -> eos.rpc.QUOTATYPE
	0,   // 11: eos.rpc.MDId.type:type_name -> eos.rpc.TYPE
	24,  // 12: eos.rpc.MDSelection.ctime:type_name -> eos.rpc.Limit
	24,  // 13: eos.rpc.MDSelection.mtime:type_name -> eos.rpc.Limit
	24,  // 14: eos.rpc.MDSelection.stime:type_name -> eos.rpc.Limit
	24,  // 15: eos.rpc.MDSelection.size:type_name -> eos.rpc.Limit
	24,  // 16: eos.rpc.MDSelection.treesize:type_name -> eos.rpc.Limit
	24,  // 17: eos.rpc.MDSelection.children:type_name -> eos.rpc.Limit
	24,  // 18: eos.rpc.MDSelection.locations:type_name -> eos.rpc.Limit
	24,  // 19: eos.rpc.MDSelection.unlinked_locations:type_name -> eos.rpc.Limit
	18,  // 20: eos.rpc.MDSelection.checksum:type_name -> eos.rpc.Checksum
	40,  // 21: eos.rpc.MDSelection.xattr:type_name -> eos.rpc.MDSelection.XattrEntry
	0,   // 22: eos.rpc.MDRequest.type:type_name -> eos.rpc.TYPE
	23,  // 23: eos.rpc.MDRequest.id:type_name -> eos.rpc.MDId
	22,  // 24: eos.rpc.MDRequest.role:type_name -> eos.rpc.RoleId
	25,  // 25: eos.rpc.MDRequest.selection:type_name -> eos.rpc.MDSelection
	0,   // 26: eos.rpc.MDResponse.type:type_name -> eos.rpc.TYPE
	19,  // 27: eos.rpc.MDResponse.fmd:type_name -> eos.rpc.FileMdProto
	20,  // 28: eos.rpc.MDResponse.cmd:type_name -> eos.rpc.ContainerMdProto
	0,   // 29: eos.rpc.FindRequest.type:type_name -> eos.rpc.TYPE
	23,  // 30: eos.rpc.FindRequest.id:type_name -> eos.rpc.MDId
	22,  // 31: eos.rpc.FindRequest.role:type_name -> eos.rpc.RoleId
	25,  // 32: eos.rpc.FindRequest.selection:type_name -> eos.rpc.MDSelection
	29,  // 33: eos.rpc.ShareProto.origins:type_name -> eos.rpc.ShareAuth
	30,  // 34: eos.rpc.ShareToken.token:type_name -> eos.rpc.ShareProto
	22,  // 35: eos.rpc.NSRequest.role:type_name -> eos.rpc.RoleId
	41,  // 36: eos.rpc.NSRequest.mkdir:type_name -> eos.rpc.NSRequest.MkdirRequest
	42,  // 37: eos.rpc.NSRequest.rmdir:type_name -> eos.rpc.NSRequest.RmdirRequest
	43,  // 38: eos.rpc.NSRequest.touch:type_name -> eos.rpc.NSRequest.TouchRequest
	44,  // 39: eos.rpc.NSRequest.unlink:type_name -> eos.rpc.NSRequest.UnlinkRequest
	45,  // 40: eos.rpc.NSRequest.rm:type_name -> eos.rpc.NSRequest.RmRequest
	46,  // 41: eos.rpc.NSRequest.rename:type_name -> eos.rpc.NSRequest.RenameRequest
	47,  // 42: eos.rpc.NSRequest.symlink:type_name -> eos.rpc.NSRequest.SymlinkRequest
	48,  // 43: eos.rpc.NSRequest.version:type_name -> eos.rpc.NSRequest.VersionRequest
	49,  // 44: eos.rpc.NSRequest.recycle:type_name -> eos.rpc.NSRequest.RecycleRequest
	50,  // 45: eos.rpc.NSRequest.xattr:type_name -> eos.rpc.NSRequest.SetXAttrRequest
	51,  // 46: eos.rpc.NSRequest.chown:type_name -> eos.rpc.NSRequest.ChownRequest
	52,  // 47: eos.rpc.NSRequest.chmod:type_name -> eos.rpc.NSRequest.ChmodRequest
	53,  // 48: eos.rpc.NSRequest.acl:type_name -> eos.rpc.NSRequest.AclRequest
	54,  // 49: eos.rpc.NSRequest.token:type_name -> eos.rpc.NSRequest.TokenRequest
	55,  // 50: eos.rpc.NSRequest.quota:type_name -> eos.rpc.NSRequest.QuotaRequest
	56,  // 51: eos.rpc.NSRequest.share:type_name -> eos.rpc.NSRequest.ShareRequest
	62,  // 52: eos.rpc.NSResponse.error:type_name -> eos.rpc.NSResponse.ErrorResponse
	63,  // 53: eos.rpc.NSResponse.version:type_name -> eos.rpc.NSResponse.VersionResponse
	64,  // 54: eos.rpc.NSResponse.recycle:type_name -> eos.rpc.NSResponse.RecycleResponse
	65,  // 55: eos.rpc.NSResponse.acl:type_name -> eos.rpc.NSResponse.AclResponse
	66,  // 56: eos.rpc.NSResponse.quota:type_name -> eos.rpc.NSResponse.QuotaResponse
	69,  // 57: eos.rpc.NSResponse.share:type_name -> eos.rpc.NSResponse.ShareResponse
	4,   // 58: eos.rpc.ManilaRequest.request_type:type_name -> eos.rpc.MANILA_REQUEST_TYPE
	23,  // 59: eos.rpc.NSRequest.MkdirRequest.id:type_name -> eos.rpc.MDId
	23,  // 60: eos.rpc.NSRequest.RmdirRequest.id:type_name -> eos.rpc.MDId
	23,  // 61: eos.rpc.NSRequest.TouchRequest.id:type_name -> eos.rpc.MDId
	23,  // 62: eos.rpc.NSRequest.UnlinkRequest.id:type_name -> eos.rpc.MDId
	23,  // 63: eos.rpc.NSRequest.RmRequest.id:type_name -> eos.rpc.MDId
	23,  // 64: eos.rpc.NSRequest.RenameRequest.id:type_name -> eos.rpc.MDId
	23,  // 65: eos.rpc.NSRequest.SymlinkRequest.id:type_name -> eos.rpc.MDId
	23,  // 66: eos.rpc.NSRequest.VersionRequest.id:type_name -> eos.rpc.MDId
	5,   // 67: eos.rpc.NSRequest.VersionRequest.cmd:type_name -> eos.rpc.NSRequest.VersionRequest.VERSION_CMD
	6,   // 68: eos.rpc.NSRequest.RecycleRequest.cmd:type_name -> eos.rpc.NSRequest.RecycleRequest.RECYCLE_CMD
	57,  // 69: eos.rpc.NSRequest.RecycleRequest.restoreflag:type_name -> eos.rpc.NSRequest.RecycleRequest.RestoreFlags
	58,  // 70: eos.rpc.NSRequest.RecycleRequest.purgedate:type_name -> eos.rpc.NSRequest.RecycleRequest.PurgeDate
	23,  // 71: eos.rpc.NSRequest.SetXAttrRequest.id:type_name -> eos.rpc.MDId
	59,  // 72: eos.rpc.NSRequest.SetXAttrRequest.xattrs:type_name -> eos.rpc.NSRequest.SetXAttrRequest.XattrsEntry
	23,  // 73: eos.rpc.NSRequest.ChownRequest.id:type_name -> eos.rpc.MDId
	22,  // 74: eos.rpc.NSRequest.ChownRequest.owner:type_name -> eos.rpc.RoleId
	23,  // 75: eos.rpc.NSRequest.ChmodRequest.id:type_name -> eos.rpc.MDId
	23,  // 76: eos.rpc.NSRequest.AclRequest.id:type_name -> eos.rpc.MDId
	7,   // 77: eos.rpc.NSRequest.AclRequest.cmd:type_name -> eos.rpc.NSRequest.AclRequest.ACL_COMMAND
	8,   // 78: eos.rpc.NSRequest.AclRequest.type:type_name -> eos.rpc.NSRequest.AclRequest.ACL_TYPE
	31,  // 79: eos.rpc.NSRequest.TokenRequest.token:type_name -> eos.rpc.ShareToken
	22,  // 80: eos.rpc.NSRequest.QuotaRequest.id:type_name -> eos.rpc.RoleId
	2,   // 81: eos.rpc.NSRequest.QuotaRequest.op:type_name -> eos.rpc.QUOTAOP
	3,   // 82: eos.rpc.NSRequest.QuotaRequest.entry:type_name -> eos.rpc.QUOTAENTRY
	60,  // 83: eos.rpc.NSRequest.ShareRequest.ls:type_name -> eos.rpc.NSRequest.ShareRequest.LsShare
	61,  // 84: eos.rpc.NSRequest.ShareRequest.op:type_name -> eos.rpc.NSRequest.ShareRequest.OperateShare
	9,   // 85: eos.rpc.NSRequest.ShareRequest.LsShare.outformat:type_name -> eos.rpc.NSRequest.ShareRequest.LsShare.OutFormat
	10,  // 86: eos.rpc.NSRequest.ShareRequest.OperateShare.op:type_name -> eos.rpc.NSRequest.ShareRequest.OperateShare.Op
	70,  // 87: eos.rpc.NSResponse.VersionResponse.versions:type_name -> eos.rpc.NSResponse.VersionResponse.VersionInfo
	71,  // 88: eos.rpc.NSResponse.RecycleResponse.recycles:type_name -> eos.rpc.NSResponse.RecycleResponse.RecycleInfo
	21,  // 89: eos.rpc.NSResponse.QuotaResponse.quotanode:type_name -> eos.rpc.QuotaProto
	67,  // 90: eos.rpc.NSResponse.ShareResponse.shares:type_name -> eos.rpc.NSResponse.ShareInfo
	68,  // 91: eos.rpc.NSResponse.ShareResponse.access:type_name -> eos.rpc.NSResponse.ShareAccess
	23,  // 92: eos.rpc.NSResponse.VersionResponse.VersionInfo.id:type_name -> eos.rpc.MDId
	17,  // 93: eos.rpc.NSResponse.VersionResponse.VersionInfo.mtime:type_name -> eos.rpc.Time
	23,  // 94: eos.rpc.NSResponse.RecycleResponse.RecycleInfo.id:type_name -> eos.rpc.MDId
	22,  // 95: eos.rpc.NSResponse.RecycleResponse.RecycleInfo.owner:type_name -> eos.rpc.RoleId
	17,  // 96: eos.rpc.NSResponse.RecycleResponse.RecycleInfo.dtime:type_name -> eos.rpc.Time
	11,  // 97: eos.rpc.NSResponse.RecycleResponse.RecycleInfo.type:type_name -> eos.rpc.NSResponse.RecycleResponse.RecycleInfo.DELETIONTYPE
	12,  // 98: eos.rpc.Eos.Ping:input_type -> eos.rpc.PingRequest
	26,  // 99: eos.rpc.Eos.MD:input_type -> eos.rpc.MDRequest
	28,  // 100: eos.rpc.Eos.Find:input_type -> eos.rpc.FindRequest
	34,  // 101: eos.rpc.Eos.NsStat:input_type -> eos.rpc.NsStatRequest
	14,  // 102: eos.rpc.Eos.ContainerInsert:input_type -> eos.rpc.ContainerInsertRequest
	15,  // 103: eos.rpc.Eos.FileInsert:input_type -> eos.rpc.FileInsertRequest
	32,  // 104: eos.rpc.Eos.Exec:input_type -> eos.rpc.NSRequest
	36,  // 105: eos.rpc.Eos.ManilaServerRequest:input_type -> eos.rpc.ManilaRequest
	13,  // 106: eos.rpc.Eos.Ping:output_type -> eos.rpc.PingReply
	27,  // 107: eos.rpc.Eos.MD:output_type -> eos.rpc.MDResponse
	27,  // 108: eos.rpc.Eos.Find:output_type -> eos.rpc.MDResponse
	35,  // 109: eos.rpc.Eos.NsStat:output_type -> eos.rpc.NsStatResponse
	16,  // 110: eos.rpc.Eos.ContainerInsert:output_type -> eos.rpc.InsertReply
	16,  // 111: eos.rpc.Eos.FileInsert:output_type -> eos.rpc.InsertReply
	33,  // 112: eos.rpc.Eos.Exec:output_type -> eos.rpc.NSResponse
	37,  // 113: eos.rpc.Eos.ManilaServerRequest:output_type -> eos.rpc.ManilaResponse
	106, // [106:114] is the sub-list for method output_type
	98,  // [98:106] is the sub-list for method input_type
	98,  // [98:98] is the sub-list for extension type_name
	98,  // [98:98] is the sub-list for extension extendee
	0,   // [0:98] is the sub-list for field type_name
}

func init() { file_Rpc_proto_init() }
func file_Rpc_proto_init() {
	if File_Rpc_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_Rpc_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PingRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PingReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ContainerInsertRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FileInsertRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InsertReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Time); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Checksum); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FileMdProto); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ContainerMdProto); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*QuotaProto); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RoleId); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MDId); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Limit); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MDSelection); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MDRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MDResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FindRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShareAuth); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShareProto); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShareToken); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NsStatRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NsStatResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ManilaRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ManilaResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_MkdirRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_RmdirRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_TouchRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_UnlinkRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_RmRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_RenameRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_SymlinkRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_VersionRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_RecycleRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_SetXAttrRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_ChownRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_ChmodRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_AclRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_TokenRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_QuotaRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_ShareRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_RecycleRequest_RestoreFlags); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_RecycleRequest_PurgeDate); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_ShareRequest_LsShare); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSRequest_ShareRequest_OperateShare); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSResponse_ErrorResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSResponse_VersionResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSResponse_RecycleResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSResponse_AclResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSResponse_QuotaResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSResponse_ShareInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSResponse_ShareAccess); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSResponse_ShareResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSResponse_VersionResponse_VersionInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_Rpc_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NSResponse_RecycleResponse_RecycleInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	file_Rpc_proto_msgTypes[20].OneofWrappers = []interface{}{
		(*NSRequest_Mkdir)(nil),
		(*NSRequest_Rmdir)(nil),
		(*NSRequest_Touch)(nil),
		(*NSRequest_Unlink)(nil),
		(*NSRequest_Rm)(nil),
		(*NSRequest_Rename)(nil),
		(*NSRequest_Symlink)(nil),
		(*NSRequest_Version)(nil),
		(*NSRequest_Recycle)(nil),
		(*NSRequest_Xattr)(nil),
		(*NSRequest_Chown)(nil),
		(*NSRequest_Chmod)(nil),
		(*NSRequest_Acl)(nil),
		(*NSRequest_Token)(nil),
		(*NSRequest_Quota)(nil),
		(*NSRequest_Share)(nil),
	}
	file_Rpc_proto_msgTypes[44].OneofWrappers = []interface{}{
		(*NSRequest_ShareRequest_Ls)(nil),
		(*NSRequest_ShareRequest_Op)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_Rpc_proto_rawDesc,
			NumEnums:      12,
			NumMessages:   60,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_Rpc_proto_goTypes,
		DependencyIndexes: file_Rpc_proto_depIdxs,
		EnumInfos:         file_Rpc_proto_enumTypes,
		MessageInfos:      file_Rpc_proto_msgTypes,
	}.Build()
	File_Rpc_proto = out.File
	file_Rpc_proto_rawDesc = nil
	file_Rpc_proto_goTypes = nil
	file_Rpc_proto_depIdxs = nil
}
