// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.25.0
// 	protoc        v3.14.0
// source: rpc.proto

// Proto field names should be snake_case, but some plugins don't convert to
// camel like they should, so we use camelCase here.

package service

import (
	_ "github.com/alta/protopatch/patch/gopb"
	proto "github.com/golang/protobuf/proto"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4

type EncryptMode int32

const (
	DefaultEncrypt    EncryptMode = 0
	SaltpackEncrypt   EncryptMode = 1
	SaltpackSigncrypt EncryptMode = 3
)

// Enum value maps for EncryptMode.
var (
	EncryptMode_name = map[int32]string{
		0: "DEFAULT_ENCRYPT",
		1: "SALTPACK_ENCRYPT",
		3: "SALTPACK_SIGNCRYPT",
	}
	EncryptMode_value = map[string]int32{
		"DEFAULT_ENCRYPT":    0,
		"SALTPACK_ENCRYPT":   1,
		"SALTPACK_SIGNCRYPT": 3,
	}
)

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

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

func (EncryptMode) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[0].Descriptor()
}

func (EncryptMode) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[0]
}

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

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

type AuthStatus int32

const (
	AuthUnknown AuthStatus = 0
	// AuthSetupNeeded if setup needed.
	AuthSetupNeeded AuthStatus = 1
	// AuthUnlocked if unlocked.
	AuthUnlocked AuthStatus = 2
	// AuthLocked if locked.
	AuthLocked AuthStatus = 3
)

// Enum value maps for AuthStatus.
var (
	AuthStatus_name = map[int32]string{
		0: "AUTH_UNKNOWN",
		1: "AUTH_SETUP_NEEDED",
		2: "AUTH_UNLOCKED",
		3: "AUTH_LOCKED",
	}
	AuthStatus_value = map[string]int32{
		"AUTH_UNKNOWN":      0,
		"AUTH_SETUP_NEEDED": 1,
		"AUTH_UNLOCKED":     2,
		"AUTH_LOCKED":       3,
	}
)

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

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

func (AuthStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[1].Descriptor()
}

func (AuthStatus) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[1]
}

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

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

type AuthType int32

const (
	UnknownAuth AuthType = 0
	// PasswordAuth uses password with salt (argon2id).
	PasswordAuth AuthType = 10
	// PaperKeyAuth uses a BIP39 phrase representing a key.
	PaperKeyAuth AuthType = 11
	// FIDO2HMACSecretAuth uses a FIDO2 HMAC-Secret extension.
	FIDO2HMACSecretAuth AuthType = 20
)

// Enum value maps for AuthType.
var (
	AuthType_name = map[int32]string{
		0:  "UNKNOWN_AUTH",
		10: "PASSWORD_AUTH",
		11: "PAPER_KEY_AUTH",
		20: "FIDO2_HMAC_SECRET_AUTH",
	}
	AuthType_value = map[string]int32{
		"UNKNOWN_AUTH":           0,
		"PASSWORD_AUTH":          10,
		"PAPER_KEY_AUTH":         11,
		"FIDO2_HMAC_SECRET_AUTH": 20,
	}
)

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

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

func (AuthType) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[2].Descriptor()
}

func (AuthType) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[2]
}

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

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

type ExportType int32

const (
	DefaultExport ExportType = 0
	SSHExport     ExportType = 1
)

// Enum value maps for ExportType.
var (
	ExportType_name = map[int32]string{
		0: "DEFAULT_EXPORT_TYPE",
		1: "SSH_EXPORT_TYPE",
	}
	ExportType_value = map[string]int32{
		"DEFAULT_EXPORT_TYPE": 0,
		"SSH_EXPORT_TYPE":     1,
	}
)

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

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

func (ExportType) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[3].Descriptor()
}

func (ExportType) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[3]
}

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

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

type SortDirection int32

const (
	SortAsc  SortDirection = 0
	SortDesc SortDirection = 1
)

// Enum value maps for SortDirection.
var (
	SortDirection_name = map[int32]string{
		0: "ASC",
		1: "DESC",
	}
	SortDirection_value = map[string]int32{
		"ASC":  0,
		"DESC": 1,
	}
)

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

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

func (SortDirection) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[4].Descriptor()
}

func (SortDirection) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[4]
}

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

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

type SecretType int32

const (
	UnknownSecret  SecretType = 0
	PasswordSecret SecretType = 10
	ContactSecret  SecretType = 11
	CardSecret     SecretType = 12
	NoteSecret     SecretType = 13
)

// Enum value maps for SecretType.
var (
	SecretType_name = map[int32]string{
		0:  "UNKNOWN_SECRET_TYPE",
		10: "PASSWORD_SECRET",
		11: "CONTACT_SECRET",
		12: "CARD_SECRET",
		13: "NOTE_SECRET",
	}
	SecretType_value = map[string]int32{
		"UNKNOWN_SECRET_TYPE": 0,
		"PASSWORD_SECRET":     10,
		"CONTACT_SECRET":      11,
		"CARD_SECRET":         12,
		"NOTE_SECRET":         13,
	}
)

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

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

func (SecretType) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[5].Descriptor()
}

func (SecretType) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[5]
}

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

// Deprecated: Use SecretType.Descriptor instead.
func (SecretType) EnumDescriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{5}
}

type Encoding int32

const (
	Hex      Encoding = 0
	Base62   Encoding = 1
	Base58   Encoding = 2
	Base32   Encoding = 3
	Base16   Encoding = 4
	Base64   Encoding = 5
	Saltpack Encoding = 6
	BIP39    Encoding = 7
)

// Enum value maps for Encoding.
var (
	Encoding_name = map[int32]string{
		0: "HEX",
		1: "BASE62",
		2: "BASE58",
		3: "BASE32",
		4: "BASE16",
		5: "BASE64",
		6: "SALTPACK",
		7: "BIP39",
	}
	Encoding_value = map[string]int32{
		"HEX":      0,
		"BASE62":   1,
		"BASE58":   2,
		"BASE32":   3,
		"BASE16":   4,
		"BASE64":   5,
		"SALTPACK": 6,
		"BIP39":    7,
	}
)

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

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

func (Encoding) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[6].Descriptor()
}

func (Encoding) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[6]
}

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

// Deprecated: Use Encoding.Descriptor instead.
func (Encoding) EnumDescriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{6}
}

type UserStatus int32

const (
	UserStatusUnknown          UserStatus = 0
	UserStatusOK               UserStatus = 1
	UserStatusResourceNotFound UserStatus = 20
	UserStatusContentNotFound  UserStatus = 30
	UserStatusContentInvalid   UserStatus = 31
	UserStatusConnFailure      UserStatus = 40
	UserStatusFailure          UserStatus = 50
)

// Enum value maps for UserStatus.
var (
	UserStatus_name = map[int32]string{
		0:  "USER_UNKNOWN",
		1:  "USER_OK",
		20: "USER_RESOURCE_NOT_FOUND",
		30: "USER_CONTENT_NOT_FOUND",
		31: "USER_CONTENT_INVALID",
		40: "USER_CONN_FAILURE",
		50: "USER_FAILURE",
	}
	UserStatus_value = map[string]int32{
		"USER_UNKNOWN":            0,
		"USER_OK":                 1,
		"USER_RESOURCE_NOT_FOUND": 20,
		"USER_CONTENT_NOT_FOUND":  30,
		"USER_CONTENT_INVALID":    31,
		"USER_CONN_FAILURE":       40,
		"USER_FAILURE":            50,
	}
)

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

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

func (UserStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[7].Descriptor()
}

func (UserStatus) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[7]
}

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

// Deprecated: Use UserStatus.Descriptor instead.
func (UserStatus) EnumDescriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{7}
}

type MessageStatus int32

const (
	MessageSent    MessageStatus = 0
	MessagePending MessageStatus = 1
	MessageError   MessageStatus = 2
)

// Enum value maps for MessageStatus.
var (
	MessageStatus_name = map[int32]string{
		0: "MESSAGE_SENT",
		1: "MESSAGE_PENDING",
		2: "MESSAGE_ERROR",
	}
	MessageStatus_value = map[string]int32{
		"MESSAGE_SENT":    0,
		"MESSAGE_PENDING": 1,
		"MESSAGE_ERROR":   2,
	}
)

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

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

func (MessageStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[8].Descriptor()
}

func (MessageStatus) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[8]
}

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

// Deprecated: Use MessageStatus.Descriptor instead.
func (MessageStatus) EnumDescriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{8}
}

type WormholeStatus int32

const (
	WormholeDefault WormholeStatus = 0
	// WormholeStarting if starting.
	WormholeStarting WormholeStatus = 10
	// WormholeOffering if offering.
	WormholeOffering WormholeStatus = 20
	// WormholeAnswering if answering.
	WormholeAnswering WormholeStatus = 21
	// WormholeHandshake if found offer/answer and trying to SCTP/Noise handshake.
	WormholeHandshake WormholeStatus = 40
	// WormholeConnected if connected
	WormholeConnected WormholeStatus = 100
	// WormholeClosed if closed
	WormholeClosed WormholeStatus = 200
)

// Enum value maps for WormholeStatus.
var (
	WormholeStatus_name = map[int32]string{
		0:   "WORMHOLE_DEFAULT",
		10:  "WORMHOLE_STARTING",
		20:  "WORMHOLE_OFFERING",
		21:  "WORMHOLE_ANSWERING",
		40:  "WORMHOLE_HANDSHAKE",
		100: "WORMHOLE_CONNECTED",
		200: "WORMHOLE_CLOSED",
	}
	WormholeStatus_value = map[string]int32{
		"WORMHOLE_DEFAULT":   0,
		"WORMHOLE_STARTING":  10,
		"WORMHOLE_OFFERING":  20,
		"WORMHOLE_ANSWERING": 21,
		"WORMHOLE_HANDSHAKE": 40,
		"WORMHOLE_CONNECTED": 100,
		"WORMHOLE_CLOSED":    200,
	}
)

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

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

func (WormholeStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[9].Descriptor()
}

func (WormholeStatus) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[9]
}

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

// Deprecated: Use WormholeStatus.Descriptor instead.
func (WormholeStatus) EnumDescriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{9}
}

type WormholeMessageStatus int32

const (
	WormholeMessageSent    WormholeMessageStatus = 0
	WormholeMessagePending WormholeMessageStatus = 1
	WormholeMessageAck     WormholeMessageStatus = 2
)

// Enum value maps for WormholeMessageStatus.
var (
	WormholeMessageStatus_name = map[int32]string{
		0: "WORMHOLE_MESSAGE_SENT",
		1: "WORMHOLE_MESSAGE_PENDING",
		2: "WORMHOLE_MESSAGE_ACK",
	}
	WormholeMessageStatus_value = map[string]int32{
		"WORMHOLE_MESSAGE_SENT":    0,
		"WORMHOLE_MESSAGE_PENDING": 1,
		"WORMHOLE_MESSAGE_ACK":     2,
	}
)

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

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

func (WormholeMessageStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[10].Descriptor()
}

func (WormholeMessageStatus) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[10]
}

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

// Deprecated: Use WormholeMessageStatus.Descriptor instead.
func (WormholeMessageStatus) EnumDescriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{10}
}

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

	Data   []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	Signer string `protobuf:"bytes,5,opt,name=signer,proto3" json:"signer,omitempty"`
	// Armored, if true, output will be armored.
	Armored bool `protobuf:"varint,10,opt,name=armored,proto3" json:"armored,omitempty"`
	// Detached, if true, output will be just the signature.
	Detached bool `protobuf:"varint,11,opt,name=detached,proto3" json:"detached,omitempty"`
}

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

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

func (*SignRequest) ProtoMessage() {}

func (x *SignRequest) 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 SignRequest.ProtoReflect.Descriptor instead.
func (*SignRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{0}
}

func (x *SignRequest) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *SignRequest) GetSigner() string {
	if x != nil {
		return x.Signer
	}
	return ""
}

func (x *SignRequest) GetArmored() bool {
	if x != nil {
		return x.Armored
	}
	return false
}

func (x *SignRequest) GetDetached() bool {
	if x != nil {
		return x.Detached
	}
	return false
}

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

	// Data is signed output.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	KID  string `protobuf:"bytes,2,opt,name=kid,proto3" json:"kid,omitempty"`
}

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

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

func (*SignResponse) ProtoMessage() {}

func (x *SignResponse) 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 SignResponse.ProtoReflect.Descriptor instead.
func (*SignResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{1}
}

func (x *SignResponse) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *SignResponse) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

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

	// In is input file path.
	In string `protobuf:"bytes,1,opt,name=in,proto3" json:"in,omitempty"`
	// Out file path (or sig if detached).
	Out    string `protobuf:"bytes,2,opt,name=out,proto3" json:"out,omitempty"`
	Signer string `protobuf:"bytes,5,opt,name=signer,proto3" json:"signer,omitempty"`
	// Armored, if true, output will be armored.
	Armored bool `protobuf:"varint,10,opt,name=armored,proto3" json:"armored,omitempty"`
	// Detached, if true, output will be just the signature.
	Detached bool `protobuf:"varint,11,opt,name=detached,proto3" json:"detached,omitempty"`
}

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

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

func (*SignFileInput) ProtoMessage() {}

func (x *SignFileInput) 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 SignFileInput.ProtoReflect.Descriptor instead.
func (*SignFileInput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{2}
}

func (x *SignFileInput) GetIn() string {
	if x != nil {
		return x.In
	}
	return ""
}

func (x *SignFileInput) GetOut() string {
	if x != nil {
		return x.Out
	}
	return ""
}

func (x *SignFileInput) GetSigner() string {
	if x != nil {
		return x.Signer
	}
	return ""
}

func (x *SignFileInput) GetArmored() bool {
	if x != nil {
		return x.Armored
	}
	return false
}

func (x *SignFileInput) GetDetached() bool {
	if x != nil {
		return x.Detached
	}
	return false
}

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

	KID   string `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"`
	Out   string `protobuf:"bytes,2,opt,name=out,proto3" json:"out,omitempty"`
	Bytes int32  `protobuf:"varint,10,opt,name=bytes,proto3" json:"bytes,omitempty"`
	Total int32  `protobuf:"varint,11,opt,name=total,proto3" json:"total,omitempty"`
}

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

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

func (*SignFileOutput) ProtoMessage() {}

func (x *SignFileOutput) 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 SignFileOutput.ProtoReflect.Descriptor instead.
func (*SignFileOutput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{3}
}

func (x *SignFileOutput) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

func (x *SignFileOutput) GetOut() string {
	if x != nil {
		return x.Out
	}
	return ""
}

func (x *SignFileOutput) GetBytes() int32 {
	if x != nil {
		return x.Bytes
	}
	return 0
}

func (x *SignFileOutput) GetTotal() int32 {
	if x != nil {
		return x.Total
	}
	return 0
}

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

	// Data is verified output.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
}

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

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

func (*VerifyRequest) ProtoMessage() {}

func (x *VerifyRequest) 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 VerifyRequest.ProtoReflect.Descriptor instead.
func (*VerifyRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{4}
}

func (x *VerifyRequest) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

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

	// Data (if out is not specified in request).
	Data   []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	Signer *Key   `protobuf:"bytes,2,opt,name=signer,proto3" json:"signer,omitempty"`
}

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

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

func (*VerifyResponse) ProtoMessage() {}

func (x *VerifyResponse) 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 VerifyResponse.ProtoReflect.Descriptor instead.
func (*VerifyResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{5}
}

func (x *VerifyResponse) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *VerifyResponse) GetSigner() *Key {
	if x != nil {
		return x.Signer
	}
	return nil
}

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

	// Data to verify.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	Sig  []byte `protobuf:"bytes,2,opt,name=sig,proto3" json:"sig,omitempty"`
}

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

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

func (*VerifyDetachedRequest) ProtoMessage() {}

func (x *VerifyDetachedRequest) 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 VerifyDetachedRequest.ProtoReflect.Descriptor instead.
func (*VerifyDetachedRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{6}
}

func (x *VerifyDetachedRequest) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *VerifyDetachedRequest) GetSig() []byte {
	if x != nil {
		return x.Sig
	}
	return nil
}

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

	Signer *Key `protobuf:"bytes,1,opt,name=signer,proto3" json:"signer,omitempty"`
}

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

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

func (*VerifyDetachedResponse) ProtoMessage() {}

func (x *VerifyDetachedResponse) 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 VerifyDetachedResponse.ProtoReflect.Descriptor instead.
func (*VerifyDetachedResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{7}
}

func (x *VerifyDetachedResponse) GetSigner() *Key {
	if x != nil {
		return x.Signer
	}
	return nil
}

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

	// Data to verify.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
}

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

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

func (*VerifyInput) ProtoMessage() {}

func (x *VerifyInput) 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 VerifyInput.ProtoReflect.Descriptor instead.
func (*VerifyInput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{8}
}

func (x *VerifyInput) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

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

	// Data, verified. If empty, is EOF.
	Data   []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	Signer *Key   `protobuf:"bytes,2,opt,name=signer,proto3" json:"signer,omitempty"`
}

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

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

func (*VerifyOutput) ProtoMessage() {}

func (x *VerifyOutput) 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 VerifyOutput.ProtoReflect.Descriptor instead.
func (*VerifyOutput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{9}
}

func (x *VerifyOutput) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *VerifyOutput) GetSigner() *Key {
	if x != nil {
		return x.Signer
	}
	return nil
}

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

	// In is input file path.
	In string `protobuf:"bytes,1,opt,name=in,proto3" json:"in,omitempty"`
	// Out is the output file name or directory to save to.
	Out string `protobuf:"bytes,2,opt,name=out,proto3" json:"out,omitempty"`
}

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

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

func (*VerifyFileInput) ProtoMessage() {}

func (x *VerifyFileInput) 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 VerifyFileInput.ProtoReflect.Descriptor instead.
func (*VerifyFileInput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{10}
}

func (x *VerifyFileInput) GetIn() string {
	if x != nil {
		return x.In
	}
	return ""
}

func (x *VerifyFileInput) GetOut() string {
	if x != nil {
		return x.Out
	}
	return ""
}

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

	Signer *Key   `protobuf:"bytes,1,opt,name=signer,proto3" json:"signer,omitempty"`
	Out    string `protobuf:"bytes,2,opt,name=out,proto3" json:"out,omitempty"`
}

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

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

func (*VerifyFileOutput) ProtoMessage() {}

func (x *VerifyFileOutput) 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 VerifyFileOutput.ProtoReflect.Descriptor instead.
func (*VerifyFileOutput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{11}
}

func (x *VerifyFileOutput) GetSigner() *Key {
	if x != nil {
		return x.Signer
	}
	return nil
}

func (x *VerifyFileOutput) GetOut() string {
	if x != nil {
		return x.Out
	}
	return ""
}

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

	// In is input file path.
	In string `protobuf:"bytes,1,opt,name=in,proto3" json:"in,omitempty"`
	// Signature (detached).
	Sig []byte `protobuf:"bytes,2,opt,name=sig,proto3" json:"sig,omitempty"`
}

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

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

func (*VerifyDetachedFileInput) ProtoMessage() {}

func (x *VerifyDetachedFileInput) 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 VerifyDetachedFileInput.ProtoReflect.Descriptor instead.
func (*VerifyDetachedFileInput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{12}
}

func (x *VerifyDetachedFileInput) GetIn() string {
	if x != nil {
		return x.In
	}
	return ""
}

func (x *VerifyDetachedFileInput) GetSig() []byte {
	if x != nil {
		return x.Sig
	}
	return nil
}

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

	// Data to verify.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	// Signature (detached).
	Sig []byte `protobuf:"bytes,2,opt,name=sig,proto3" json:"sig,omitempty"`
}

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

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

func (*VerifyDetachedInput) ProtoMessage() {}

func (x *VerifyDetachedInput) 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 VerifyDetachedInput.ProtoReflect.Descriptor instead.
func (*VerifyDetachedInput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{13}
}

func (x *VerifyDetachedInput) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *VerifyDetachedInput) GetSig() []byte {
	if x != nil {
		return x.Sig
	}
	return nil
}

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

	// Sig is the signature bytes.
	Sig []byte `protobuf:"bytes,1,opt,name=sig,proto3" json:"sig,omitempty"`
	// Data that was signed.
	Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
	// KID is the key that signed.
	KID string `protobuf:"bytes,3,opt,name=kid,proto3" json:"kid,omitempty"`
	// Seq in a sigchain (1 is root).
	Seq int32 `protobuf:"varint,4,opt,name=seq,proto3" json:"seq,omitempty"`
	// Prev is a hash of the previous item in the sigchain.
	Prev []byte `protobuf:"bytes,5,opt,name=prev,proto3" json:"prev,omitempty"`
	// Revoke refers to a previous signed seq to revoke.
	Revoke int32 `protobuf:"varint,6,opt,name=revoke,proto3" json:"revoke,omitempty"`
	// Timestamp ...
	Timestamp int64 `protobuf:"varint,7,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	// Type (optional).
	Type string `protobuf:"bytes,8,opt,name=type,proto3" json:"type,omitempty"`
}

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

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

func (*Statement) ProtoMessage() {}

func (x *Statement) 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 Statement.ProtoReflect.Descriptor instead.
func (*Statement) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{14}
}

func (x *Statement) GetSig() []byte {
	if x != nil {
		return x.Sig
	}
	return nil
}

func (x *Statement) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *Statement) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

func (x *Statement) GetSeq() int32 {
	if x != nil {
		return x.Seq
	}
	return 0
}

func (x *Statement) GetPrev() []byte {
	if x != nil {
		return x.Prev
	}
	return nil
}

func (x *Statement) GetRevoke() int32 {
	if x != nil {
		return x.Revoke
	}
	return 0
}

func (x *Statement) GetTimestamp() int64 {
	if x != nil {
		return x.Timestamp
	}
	return 0
}

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

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

	KID string `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"`
}

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

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

func (*SigchainRequest) ProtoMessage() {}

func (x *SigchainRequest) 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 SigchainRequest.ProtoReflect.Descriptor instead.
func (*SigchainRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{15}
}

func (x *SigchainRequest) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

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

	Key        *Key         `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	Statements []*Statement `protobuf:"bytes,2,rep,name=statements,proto3" json:"statements,omitempty"`
}

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

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

func (*SigchainResponse) ProtoMessage() {}

func (x *SigchainResponse) 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 SigchainResponse.ProtoReflect.Descriptor instead.
func (*SigchainResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{16}
}

func (x *SigchainResponse) GetKey() *Key {
	if x != nil {
		return x.Key
	}
	return nil
}

func (x *SigchainResponse) GetStatements() []*Statement {
	if x != nil {
		return x.Statements
	}
	return nil
}

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

	KID string `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"`
	Seq int32  `protobuf:"varint,2,opt,name=seq,proto3" json:"seq,omitempty"`
}

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

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

func (*StatementRequest) ProtoMessage() {}

func (x *StatementRequest) 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 StatementRequest.ProtoReflect.Descriptor instead.
func (*StatementRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{17}
}

func (x *StatementRequest) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

func (x *StatementRequest) GetSeq() int32 {
	if x != nil {
		return x.Seq
	}
	return 0
}

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

	Statement *Statement `protobuf:"bytes,1,opt,name=statement,proto3" json:"statement,omitempty"`
}

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

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

func (*StatementResponse) ProtoMessage() {}

func (x *StatementResponse) 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 StatementResponse.ProtoReflect.Descriptor instead.
func (*StatementResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{18}
}

func (x *StatementResponse) GetStatement() *Statement {
	if x != nil {
		return x.Statement
	}
	return nil
}

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

	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	KID  string `protobuf:"bytes,2,opt,name=kid,proto3" json:"kid,omitempty"`
	// Local, if true, won't save to the current key server.
	Local bool `protobuf:"varint,5,opt,name=local,proto3" json:"local,omitempty"`
}

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

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

func (*StatementCreateRequest) ProtoMessage() {}

func (x *StatementCreateRequest) 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 StatementCreateRequest.ProtoReflect.Descriptor instead.
func (*StatementCreateRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{19}
}

func (x *StatementCreateRequest) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *StatementCreateRequest) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

func (x *StatementCreateRequest) GetLocal() bool {
	if x != nil {
		return x.Local
	}
	return false
}

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

	Statement *Statement `protobuf:"bytes,1,opt,name=statement,proto3" json:"statement,omitempty"`
}

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

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

func (*StatementCreateResponse) ProtoMessage() {}

func (x *StatementCreateResponse) 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 StatementCreateResponse.ProtoReflect.Descriptor instead.
func (*StatementCreateResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{20}
}

func (x *StatementCreateResponse) GetStatement() *Statement {
	if x != nil {
		return x.Statement
	}
	return nil
}

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

	// Seq to revoke.
	Seq int32  `protobuf:"varint,1,opt,name=seq,proto3" json:"seq,omitempty"`
	KID string `protobuf:"bytes,2,opt,name=kid,proto3" json:"kid,omitempty"`
	// Local, if true, won't save to the current key server.
	Local bool `protobuf:"varint,5,opt,name=local,proto3" json:"local,omitempty"`
}

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

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

func (*StatementRevokeRequest) ProtoMessage() {}

func (x *StatementRevokeRequest) 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 StatementRevokeRequest.ProtoReflect.Descriptor instead.
func (*StatementRevokeRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{21}
}

func (x *StatementRevokeRequest) GetSeq() int32 {
	if x != nil {
		return x.Seq
	}
	return 0
}

func (x *StatementRevokeRequest) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

func (x *StatementRevokeRequest) GetLocal() bool {
	if x != nil {
		return x.Local
	}
	return false
}

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

	Statement *Statement `protobuf:"bytes,1,opt,name=statement,proto3" json:"statement,omitempty"`
}

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

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

func (*StatementRevokeResponse) ProtoMessage() {}

func (x *StatementRevokeResponse) 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 StatementRevokeResponse.ProtoReflect.Descriptor instead.
func (*StatementRevokeResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{22}
}

func (x *StatementRevokeResponse) GetStatement() *Statement {
	if x != nil {
		return x.Statement
	}
	return nil
}

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

	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	// In is input file path (if data is not specified).
	In string `protobuf:"bytes,2,opt,name=in,proto3" json:"in,omitempty"`
	// Out is output file path (required if in specified).
	Out    string `protobuf:"bytes,3,opt,name=out,proto3" json:"out,omitempty"`
	Signer string `protobuf:"bytes,5,opt,name=signer,proto3" json:"signer,omitempty"`
	// Armored, if true, output will be armored.
	Armored bool `protobuf:"varint,10,opt,name=armored,proto3" json:"armored,omitempty"`
	// Detached, if true, output will be just the signature.
	Detached bool `protobuf:"varint,11,opt,name=detached,proto3" json:"detached,omitempty"`
}

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

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

func (*SignInput) ProtoMessage() {}

func (x *SignInput) 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 SignInput.ProtoReflect.Descriptor instead.
func (*SignInput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{23}
}

func (x *SignInput) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *SignInput) GetIn() string {
	if x != nil {
		return x.In
	}
	return ""
}

func (x *SignInput) GetOut() string {
	if x != nil {
		return x.Out
	}
	return ""
}

func (x *SignInput) GetSigner() string {
	if x != nil {
		return x.Signer
	}
	return ""
}

func (x *SignInput) GetArmored() bool {
	if x != nil {
		return x.Armored
	}
	return false
}

func (x *SignInput) GetDetached() bool {
	if x != nil {
		return x.Detached
	}
	return false
}

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

	// Data, signed.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	KID  string `protobuf:"bytes,2,opt,name=kid,proto3" json:"kid,omitempty"`
}

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

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

func (*SignOutput) ProtoMessage() {}

func (x *SignOutput) 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 SignOutput.ProtoReflect.Descriptor instead.
func (*SignOutput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{24}
}

func (x *SignOutput) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *SignOutput) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

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

	// Armored, if true will return armored string output.
	Armored bool `protobuf:"varint,1,opt,name=armored,proto3" json:"armored,omitempty"`
	// Mode is the encryption mode.
	Mode EncryptMode `protobuf:"varint,2,opt,name=mode,proto3,enum=service.EncryptMode" json:"mode,omitempty"`
	// NoSenderRecipient if true, won't add sender to recipients list.
	NoSenderRecipient bool `protobuf:"varint,3,opt,name=noSenderRecipient,proto3" json:"noSenderRecipient,omitempty"`
	// NoSign if true, won't sign with sender.
	NoSign bool `protobuf:"varint,4,opt,name=noSign,proto3" json:"noSign,omitempty"`
}

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

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

func (*EncryptOptions) ProtoMessage() {}

func (x *EncryptOptions) 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 EncryptOptions.ProtoReflect.Descriptor instead.
func (*EncryptOptions) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{25}
}

func (x *EncryptOptions) GetArmored() bool {
	if x != nil {
		return x.Armored
	}
	return false
}

func (x *EncryptOptions) GetMode() EncryptMode {
	if x != nil {
		return x.Mode
	}
	return DefaultEncrypt
}

func (x *EncryptOptions) GetNoSenderRecipient() bool {
	if x != nil {
		return x.NoSenderRecipient
	}
	return false
}

func (x *EncryptOptions) GetNoSign() bool {
	if x != nil {
		return x.NoSign
	}
	return false
}

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

	// Data to encrypt.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	// Recipients to encrypt to.
	Recipients []string `protobuf:"bytes,3,rep,name=recipients,proto3" json:"recipients,omitempty"`
	// Sender, or anonymous.
	Sender string `protobuf:"bytes,4,opt,name=sender,proto3" json:"sender,omitempty"`
	// Options for encrypt.
	Options *EncryptOptions `protobuf:"bytes,10,opt,name=options,proto3" json:"options,omitempty"`
}

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

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

func (*EncryptRequest) ProtoMessage() {}

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

// Deprecated: Use EncryptRequest.ProtoReflect.Descriptor instead.
func (*EncryptRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{26}
}

func (x *EncryptRequest) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *EncryptRequest) GetRecipients() []string {
	if x != nil {
		return x.Recipients
	}
	return nil
}

func (x *EncryptRequest) GetSender() string {
	if x != nil {
		return x.Sender
	}
	return ""
}

func (x *EncryptRequest) GetOptions() *EncryptOptions {
	if x != nil {
		return x.Options
	}
	return nil
}

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

	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	Info string `protobuf:"bytes,2,opt,name=info,proto3" json:"info,omitempty"`
}

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

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

func (*EncryptResponse) ProtoMessage() {}

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

// Deprecated: Use EncryptResponse.ProtoReflect.Descriptor instead.
func (*EncryptResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{27}
}

func (x *EncryptResponse) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *EncryptResponse) GetInfo() string {
	if x != nil {
		return x.Info
	}
	return ""
}

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

	// In is input file path.
	In string `protobuf:"bytes,1,opt,name=in,proto3" json:"in,omitempty"`
	// Out is output file path.
	Out string `protobuf:"bytes,2,opt,name=out,proto3" json:"out,omitempty"`
	// Recipients to encrypt to.
	Recipients []string `protobuf:"bytes,3,rep,name=recipients,proto3" json:"recipients,omitempty"`
	// Sender, or anonymous.
	Sender string `protobuf:"bytes,4,opt,name=sender,proto3" json:"sender,omitempty"`
	// Options for encrypt.
	Options *EncryptOptions `protobuf:"bytes,10,opt,name=options,proto3" json:"options,omitempty"`
}

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

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

func (*EncryptFileInput) ProtoMessage() {}

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

// Deprecated: Use EncryptFileInput.ProtoReflect.Descriptor instead.
func (*EncryptFileInput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{28}
}

func (x *EncryptFileInput) GetIn() string {
	if x != nil {
		return x.In
	}
	return ""
}

func (x *EncryptFileInput) GetOut() string {
	if x != nil {
		return x.Out
	}
	return ""
}

func (x *EncryptFileInput) GetRecipients() []string {
	if x != nil {
		return x.Recipients
	}
	return nil
}

func (x *EncryptFileInput) GetSender() string {
	if x != nil {
		return x.Sender
	}
	return ""
}

func (x *EncryptFileInput) GetOptions() *EncryptOptions {
	if x != nil {
		return x.Options
	}
	return nil
}

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

	// Out is the output decrypted file path.
	Out   string `protobuf:"bytes,2,opt,name=out,proto3" json:"out,omitempty"`
	Bytes int32  `protobuf:"varint,10,opt,name=bytes,proto3" json:"bytes,omitempty"`
	Total int32  `protobuf:"varint,11,opt,name=total,proto3" json:"total,omitempty"`
}

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

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

func (*EncryptFileOutput) ProtoMessage() {}

func (x *EncryptFileOutput) 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 EncryptFileOutput.ProtoReflect.Descriptor instead.
func (*EncryptFileOutput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{29}
}

func (x *EncryptFileOutput) GetOut() string {
	if x != nil {
		return x.Out
	}
	return ""
}

func (x *EncryptFileOutput) GetBytes() int32 {
	if x != nil {
		return x.Bytes
	}
	return 0
}

func (x *EncryptFileOutput) GetTotal() int32 {
	if x != nil {
		return x.Total
	}
	return 0
}

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

	// Data to encrypt. Send empty byte slice as last message.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	// Recipients to encrypt to.
	Recipients []string `protobuf:"bytes,3,rep,name=recipients,proto3" json:"recipients,omitempty"`
	// Sender, or anonymous.
	Sender string `protobuf:"bytes,4,opt,name=sender,proto3" json:"sender,omitempty"`
	// Options for encrypt.
	Options *EncryptOptions `protobuf:"bytes,10,opt,name=options,proto3" json:"options,omitempty"`
}

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

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

func (*EncryptInput) ProtoMessage() {}

func (x *EncryptInput) 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 EncryptInput.ProtoReflect.Descriptor instead.
func (*EncryptInput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{30}
}

func (x *EncryptInput) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *EncryptInput) GetRecipients() []string {
	if x != nil {
		return x.Recipients
	}
	return nil
}

func (x *EncryptInput) GetSender() string {
	if x != nil {
		return x.Sender
	}
	return ""
}

func (x *EncryptInput) GetOptions() *EncryptOptions {
	if x != nil {
		return x.Options
	}
	return nil
}

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

	// Data, encrypted.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
}

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

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

func (*EncryptOutput) ProtoMessage() {}

func (x *EncryptOutput) 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 EncryptOutput.ProtoReflect.Descriptor instead.
func (*EncryptOutput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{31}
}

func (x *EncryptOutput) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

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

	// Data to decrypt.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
}

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

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

func (*DecryptRequest) ProtoMessage() {}

func (x *DecryptRequest) 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 DecryptRequest.ProtoReflect.Descriptor instead.
func (*DecryptRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{32}
}

func (x *DecryptRequest) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

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

	// Data decrypted.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	// Sender (if not anonymous)
	Sender *Key `protobuf:"bytes,2,opt,name=sender,proto3" json:"sender,omitempty"`
	// Mode is the encryption mode for the data.
	Mode EncryptMode `protobuf:"varint,5,opt,name=mode,proto3,enum=service.EncryptMode" json:"mode,omitempty"`
}

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

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

func (*DecryptResponse) ProtoMessage() {}

func (x *DecryptResponse) 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 DecryptResponse.ProtoReflect.Descriptor instead.
func (*DecryptResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{33}
}

func (x *DecryptResponse) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *DecryptResponse) GetSender() *Key {
	if x != nil {
		return x.Sender
	}
	return nil
}

func (x *DecryptResponse) GetMode() EncryptMode {
	if x != nil {
		return x.Mode
	}
	return DefaultEncrypt
}

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

	// In is the input encrypted file path.
	In string `protobuf:"bytes,1,opt,name=in,proto3" json:"in,omitempty"`
	// Out is the output file name or directory to save to.
	Out string `protobuf:"bytes,2,opt,name=out,proto3" json:"out,omitempty"`
}

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

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

func (*DecryptFileInput) ProtoMessage() {}

func (x *DecryptFileInput) 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 DecryptFileInput.ProtoReflect.Descriptor instead.
func (*DecryptFileInput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{34}
}

func (x *DecryptFileInput) GetIn() string {
	if x != nil {
		return x.In
	}
	return ""
}

func (x *DecryptFileInput) GetOut() string {
	if x != nil {
		return x.Out
	}
	return ""
}

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

	Sender *Key `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"`
	// Out is the output file path.
	Out   string `protobuf:"bytes,2,opt,name=out,proto3" json:"out,omitempty"`
	Bytes int32  `protobuf:"varint,10,opt,name=bytes,proto3" json:"bytes,omitempty"`
	Total int32  `protobuf:"varint,11,opt,name=total,proto3" json:"total,omitempty"`
	// Mode is the encryption mode we detected.
	Mode EncryptMode `protobuf:"varint,5,opt,name=mode,proto3,enum=service.EncryptMode" json:"mode,omitempty"`
}

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

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

func (*DecryptFileOutput) ProtoMessage() {}

func (x *DecryptFileOutput) 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 DecryptFileOutput.ProtoReflect.Descriptor instead.
func (*DecryptFileOutput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{35}
}

func (x *DecryptFileOutput) GetSender() *Key {
	if x != nil {
		return x.Sender
	}
	return nil
}

func (x *DecryptFileOutput) GetOut() string {
	if x != nil {
		return x.Out
	}
	return ""
}

func (x *DecryptFileOutput) GetBytes() int32 {
	if x != nil {
		return x.Bytes
	}
	return 0
}

func (x *DecryptFileOutput) GetTotal() int32 {
	if x != nil {
		return x.Total
	}
	return 0
}

func (x *DecryptFileOutput) GetMode() EncryptMode {
	if x != nil {
		return x.Mode
	}
	return DefaultEncrypt
}

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

	// Data, encrypted.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
}

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

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

func (*DecryptInput) ProtoMessage() {}

func (x *DecryptInput) 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 DecryptInput.ProtoReflect.Descriptor instead.
func (*DecryptInput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{36}
}

func (x *DecryptInput) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

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

	// Data, decrypted. If empty, is EOF.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	// Sender (if not anonymous)
	Sender *Key `protobuf:"bytes,2,opt,name=sender,proto3" json:"sender,omitempty"`
	// Mode is the encryption mode for the data.
	Mode EncryptMode `protobuf:"varint,5,opt,name=mode,proto3,enum=service.EncryptMode" json:"mode,omitempty"`
}

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

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

func (*DecryptOutput) ProtoMessage() {}

func (x *DecryptOutput) 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 DecryptOutput.ProtoReflect.Descriptor instead.
func (*DecryptOutput) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{37}
}

func (x *DecryptOutput) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *DecryptOutput) GetSender() *Key {
	if x != nil {
		return x.Sender
	}
	return nil
}

func (x *DecryptOutput) GetMode() EncryptMode {
	if x != nil {
		return x.Mode
	}
	return DefaultEncrypt
}

type RuntimeStatusRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*RuntimeStatusRequest) ProtoMessage() {}

func (x *RuntimeStatusRequest) 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 RuntimeStatusRequest.ProtoReflect.Descriptor instead.
func (*RuntimeStatusRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{38}
}

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

	// Version of running service.
	Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
	// AppName app name.
	AppName string `protobuf:"bytes,2,opt,name=appName,proto3" json:"appName,omitempty"`
	// Exe is the service executable path.
	Exe string `protobuf:"bytes,4,opt,name=exe,proto3" json:"exe,omitempty"`
	// AuthStatus is the status of auth.
	AuthStatus AuthStatus `protobuf:"varint,5,opt,name=authStatus,proto3,enum=service.AuthStatus" json:"authStatus,omitempty"`
	// SyncStatus is the status of vault sync.
	Sync bool `protobuf:"varint,6,opt,name=sync,proto3" json:"sync,omitempty"`
	// FIDO2 available.
	FIDO2 bool `protobuf:"varint,20,opt,name=fido2,proto3" json:"fido2,omitempty"`
}

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

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

func (*RuntimeStatusResponse) ProtoMessage() {}

func (x *RuntimeStatusResponse) 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 RuntimeStatusResponse.ProtoReflect.Descriptor instead.
func (*RuntimeStatusResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{39}
}

func (x *RuntimeStatusResponse) GetVersion() string {
	if x != nil {
		return x.Version
	}
	return ""
}

func (x *RuntimeStatusResponse) GetAppName() string {
	if x != nil {
		return x.AppName
	}
	return ""
}

func (x *RuntimeStatusResponse) GetExe() string {
	if x != nil {
		return x.Exe
	}
	return ""
}

func (x *RuntimeStatusResponse) GetAuthStatus() AuthStatus {
	if x != nil {
		return x.AuthStatus
	}
	return AuthUnknown
}

func (x *RuntimeStatusResponse) GetSync() bool {
	if x != nil {
		return x.Sync
	}
	return false
}

func (x *RuntimeStatusResponse) GetFIDO2() bool {
	if x != nil {
		return x.FIDO2
	}
	return false
}

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

	// Secret for auth depending on auth type, e.g. password, FIDO2 pin, etc.
	Secret string `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret,omitempty"`
	// Type for auth.
	Type AuthType `protobuf:"varint,2,opt,name=type,proto3,enum=service.AuthType" json:"type,omitempty"`
	// Device path (for FIDO2).
	Device string `protobuf:"bytes,5,opt,name=device,proto3" json:"device,omitempty"`
}

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

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

func (*AuthSetupRequest) ProtoMessage() {}

func (x *AuthSetupRequest) 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 AuthSetupRequest.ProtoReflect.Descriptor instead.
func (*AuthSetupRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{40}
}

func (x *AuthSetupRequest) GetSecret() string {
	if x != nil {
		return x.Secret
	}
	return ""
}

func (x *AuthSetupRequest) GetType() AuthType {
	if x != nil {
		return x.Type
	}
	return UnknownAuth
}

func (x *AuthSetupRequest) GetDevice() string {
	if x != nil {
		return x.Device
	}
	return ""
}

type AuthSetupResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*AuthSetupResponse) ProtoMessage() {}

func (x *AuthSetupResponse) 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 AuthSetupResponse.ProtoReflect.Descriptor instead.
func (*AuthSetupResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{41}
}

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

	Phrase string `protobuf:"bytes,1,opt,name=phrase,proto3" json:"phrase,omitempty"`
}

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

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

func (*AuthVaultRequest) ProtoMessage() {}

func (x *AuthVaultRequest) 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 AuthVaultRequest.ProtoReflect.Descriptor instead.
func (*AuthVaultRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{42}
}

func (x *AuthVaultRequest) GetPhrase() string {
	if x != nil {
		return x.Phrase
	}
	return ""
}

type AuthVaultResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*AuthVaultResponse) ProtoMessage() {}

func (x *AuthVaultResponse) 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 AuthVaultResponse.ProtoReflect.Descriptor instead.
func (*AuthVaultResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{43}
}

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

	// Secret for auth depending on auth type, e.g. password, pin, etc.
	Secret string `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret,omitempty"`
	// Type for auth.
	Type AuthType `protobuf:"varint,2,opt,name=type,proto3,enum=service.AuthType" json:"type,omitempty"`
	// Client name.
	Client string `protobuf:"bytes,6,opt,name=client,proto3" json:"client,omitempty"`
}

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

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

func (*AuthUnlockRequest) ProtoMessage() {}

func (x *AuthUnlockRequest) 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 AuthUnlockRequest.ProtoReflect.Descriptor instead.
func (*AuthUnlockRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{44}
}

func (x *AuthUnlockRequest) GetSecret() string {
	if x != nil {
		return x.Secret
	}
	return ""
}

func (x *AuthUnlockRequest) GetType() AuthType {
	if x != nil {
		return x.Type
	}
	return UnknownAuth
}

func (x *AuthUnlockRequest) GetClient() string {
	if x != nil {
		return x.Client
	}
	return ""
}

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

	// AuthToken to use for requests.
	AuthToken string `protobuf:"bytes,1,opt,name=authToken,proto3" json:"authToken,omitempty"`
}

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

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

func (*AuthUnlockResponse) ProtoMessage() {}

func (x *AuthUnlockResponse) 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 AuthUnlockResponse.ProtoReflect.Descriptor instead.
func (*AuthUnlockResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{45}
}

func (x *AuthUnlockResponse) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

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

	// Secret for auth depending on auth type, e.g. password, phrase, FIDO2 pin, etc.
	Secret string `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret,omitempty"`
	// Type for auth.
	Type AuthType `protobuf:"varint,2,opt,name=type,proto3,enum=service.AuthType" json:"type,omitempty"`
	// Device path (for FIDO2).
	Device string `protobuf:"bytes,5,opt,name=device,proto3" json:"device,omitempty"`
	// Generate (for FIDO2 make credential).
	Generate bool `protobuf:"varint,7,opt,name=generate,proto3" json:"generate,omitempty"`
}

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

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

func (*AuthProvisionRequest) ProtoMessage() {}

func (x *AuthProvisionRequest) 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 AuthProvisionRequest.ProtoReflect.Descriptor instead.
func (*AuthProvisionRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{46}
}

func (x *AuthProvisionRequest) GetSecret() string {
	if x != nil {
		return x.Secret
	}
	return ""
}

func (x *AuthProvisionRequest) GetType() AuthType {
	if x != nil {
		return x.Type
	}
	return UnknownAuth
}

func (x *AuthProvisionRequest) GetDevice() string {
	if x != nil {
		return x.Device
	}
	return ""
}

func (x *AuthProvisionRequest) GetGenerate() bool {
	if x != nil {
		return x.Generate
	}
	return false
}

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

	Provision *AuthProvision `protobuf:"bytes,1,opt,name=provision,proto3" json:"provision,omitempty"`
}

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

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

func (*AuthProvisionResponse) ProtoMessage() {}

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

// Deprecated: Use AuthProvisionResponse.ProtoReflect.Descriptor instead.
func (*AuthProvisionResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{47}
}

func (x *AuthProvisionResponse) GetProvision() *AuthProvision {
	if x != nil {
		return x.Provision
	}
	return nil
}

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

	ID string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
}

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

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

func (*AuthDeprovisionRequest) ProtoMessage() {}

func (x *AuthDeprovisionRequest) 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 AuthDeprovisionRequest.ProtoReflect.Descriptor instead.
func (*AuthDeprovisionRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{48}
}

func (x *AuthDeprovisionRequest) GetID() string {
	if x != nil {
		return x.ID
	}
	return ""
}

type AuthDeprovisionResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*AuthDeprovisionResponse) ProtoMessage() {}

func (x *AuthDeprovisionResponse) 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 AuthDeprovisionResponse.ProtoReflect.Descriptor instead.
func (*AuthDeprovisionResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{49}
}

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

	Old string `protobuf:"bytes,1,opt,name=old,proto3" json:"old,omitempty"`
	New string `protobuf:"bytes,2,opt,name=new,proto3" json:"new,omitempty"`
}

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

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

func (*AuthPasswordChangeRequest) ProtoMessage() {}

func (x *AuthPasswordChangeRequest) 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 AuthPasswordChangeRequest.ProtoReflect.Descriptor instead.
func (*AuthPasswordChangeRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{50}
}

func (x *AuthPasswordChangeRequest) GetOld() string {
	if x != nil {
		return x.Old
	}
	return ""
}

func (x *AuthPasswordChangeRequest) GetNew() string {
	if x != nil {
		return x.New
	}
	return ""
}

type AuthPasswordChangeResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*AuthPasswordChangeResponse) ProtoMessage() {}

func (x *AuthPasswordChangeResponse) 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 AuthPasswordChangeResponse.ProtoReflect.Descriptor instead.
func (*AuthPasswordChangeResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{51}
}

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

	ID        string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Type      AuthType `protobuf:"varint,2,opt,name=type,proto3,enum=service.AuthType" json:"type,omitempty"`
	CreatedAt int64    `protobuf:"varint,3,opt,name=createdAt,proto3" json:"createdAt,omitempty"`
	// For FIDO2
	// AAGUID is a device "identifier" (only unique across batches for privacy reasons).
	AAGUID string `protobuf:"bytes,100,opt,name=aaguid,proto3" json:"aaguid,omitempty"`
	NoPin  bool   `protobuf:"varint,101,opt,name=noPin,proto3" json:"noPin,omitempty"`
}

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

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

func (*AuthProvision) ProtoMessage() {}

func (x *AuthProvision) 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 AuthProvision.ProtoReflect.Descriptor instead.
func (*AuthProvision) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{52}
}

func (x *AuthProvision) GetID() string {
	if x != nil {
		return x.ID
	}
	return ""
}

func (x *AuthProvision) GetType() AuthType {
	if x != nil {
		return x.Type
	}
	return UnknownAuth
}

func (x *AuthProvision) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *AuthProvision) GetAAGUID() string {
	if x != nil {
		return x.AAGUID
	}
	return ""
}

func (x *AuthProvision) GetNoPin() bool {
	if x != nil {
		return x.NoPin
	}
	return false
}

type AuthProvisionsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*AuthProvisionsRequest) ProtoMessage() {}

func (x *AuthProvisionsRequest) 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 AuthProvisionsRequest.ProtoReflect.Descriptor instead.
func (*AuthProvisionsRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{53}
}

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

	Provisions []*AuthProvision `protobuf:"bytes,1,rep,name=provisions,proto3" json:"provisions,omitempty"`
}

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

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

func (*AuthProvisionsResponse) ProtoMessage() {}

func (x *AuthProvisionsResponse) 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 AuthProvisionsResponse.ProtoReflect.Descriptor instead.
func (*AuthProvisionsResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{54}
}

func (x *AuthProvisionsResponse) GetProvisions() []*AuthProvision {
	if x != nil {
		return x.Provisions
	}
	return nil
}

type AuthLockRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*AuthLockRequest) ProtoMessage() {}

func (x *AuthLockRequest) 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 AuthLockRequest.ProtoReflect.Descriptor instead.
func (*AuthLockRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{55}
}

type AuthLockResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*AuthLockResponse) ProtoMessage() {}

func (x *AuthLockResponse) 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 AuthLockResponse.ProtoReflect.Descriptor instead.
func (*AuthLockResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{56}
}

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

	AppName string `protobuf:"bytes,1,opt,name=appName,proto3" json:"appName,omitempty"`
}

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

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

func (*AuthResetRequest) ProtoMessage() {}

func (x *AuthResetRequest) 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 AuthResetRequest.ProtoReflect.Descriptor instead.
func (*AuthResetRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{57}
}

func (x *AuthResetRequest) GetAppName() string {
	if x != nil {
		return x.AppName
	}
	return ""
}

type AuthResetResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*AuthResetResponse) ProtoMessage() {}

func (x *AuthResetResponse) 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 AuthResetResponse.ProtoReflect.Descriptor instead.
func (*AuthResetResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{58}
}

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

	PaperKey    string `protobuf:"bytes,1,opt,name=paperKey,proto3" json:"paperKey,omitempty"`
	NewPassword string `protobuf:"bytes,2,opt,name=newPassword,proto3" json:"newPassword,omitempty"`
}

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

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

func (*AuthRecoverRequest) ProtoMessage() {}

func (x *AuthRecoverRequest) 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 AuthRecoverRequest.ProtoReflect.Descriptor instead.
func (*AuthRecoverRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{59}
}

func (x *AuthRecoverRequest) GetPaperKey() string {
	if x != nil {
		return x.PaperKey
	}
	return ""
}

func (x *AuthRecoverRequest) GetNewPassword() string {
	if x != nil {
		return x.NewPassword
	}
	return ""
}

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

	AuthToken string `protobuf:"bytes,1,opt,name=authToken,proto3" json:"authToken,omitempty"`
}

func (x *AuthRecoverResponse) Reset() {
	*x = AuthRecoverResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[60]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AuthRecoverResponse) ProtoMessage() {}

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

func (x *AuthRecoverResponse) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

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

	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
}

func (x *KeyGenerateRequest) Reset() {
	*x = KeyGenerateRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[61]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*KeyGenerateRequest) ProtoMessage() {}

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

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

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

	KID string `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"`
}

func (x *KeyGenerateResponse) Reset() {
	*x = KeyGenerateResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[62]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*KeyGenerateResponse) ProtoMessage() {}

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

func (x *KeyGenerateResponse) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

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

	// KID to use, or if empty the current key.
	KID string `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"`
	// Service such as twitter, github.
	Service string `protobuf:"bytes,2,opt,name=service,proto3" json:"service,omitempty"`
}

func (x *UserServiceRequest) Reset() {
	*x = UserServiceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[63]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UserServiceRequest) ProtoMessage() {}

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

func (x *UserServiceRequest) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

func (x *UserServiceRequest) GetService() string {
	if x != nil {
		return x.Service
	}
	return ""
}

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

	// Service such as twitter, github.
	Service string `protobuf:"bytes,1,opt,name=service,proto3" json:"service,omitempty"`
}

func (x *UserServiceResponse) Reset() {
	*x = UserServiceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[64]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UserServiceResponse) ProtoMessage() {}

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

func (x *UserServiceResponse) GetService() string {
	if x != nil {
		return x.Service
	}
	return ""
}

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

	// KID to use, or if empty the current key.
	KID string `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"`
	// Service such as twitter, github.
	Service string `protobuf:"bytes,2,opt,name=service,proto3" json:"service,omitempty"`
	// Name is username on the service.
	Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
}

func (x *UserSignRequest) Reset() {
	*x = UserSignRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[65]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UserSignRequest) ProtoMessage() {}

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

func (x *UserSignRequest) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

func (x *UserSignRequest) GetService() string {
	if x != nil {
		return x.Service
	}
	return ""
}

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

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

	// Message is signed message.
	Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
	// Name in request.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
}

func (x *UserSignResponse) Reset() {
	*x = UserSignResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[66]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UserSignResponse) ProtoMessage() {}

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

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

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

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

	// KID to use, or if empty the current key.
	KID string `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"`
	// Service such as twitter, github.
	Service string `protobuf:"bytes,2,opt,name=service,proto3" json:"service,omitempty"`
	// Name is username on the service.
	Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	// URL is location of signed message on the service.
	URL string `protobuf:"bytes,4,opt,name=url,proto3" json:"url,omitempty"`
	// Local, if true, won't save to the current key server.
	Local bool `protobuf:"varint,5,opt,name=local,proto3" json:"local,omitempty"`
}

func (x *UserAddRequest) Reset() {
	*x = UserAddRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[67]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UserAddRequest) ProtoMessage() {}

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

func (x *UserAddRequest) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

func (x *UserAddRequest) GetService() string {
	if x != nil {
		return x.Service
	}
	return ""
}

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

func (x *UserAddRequest) GetURL() string {
	if x != nil {
		return x.URL
	}
	return ""
}

func (x *UserAddRequest) GetLocal() bool {
	if x != nil {
		return x.Local
	}
	return false
}

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

	User      *User      `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"`
	Statement *Statement `protobuf:"bytes,2,opt,name=statement,proto3" json:"statement,omitempty"`
}

func (x *UserAddResponse) Reset() {
	*x = UserAddResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[68]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UserAddResponse) ProtoMessage() {}

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

func (x *UserAddResponse) GetUser() *User {
	if x != nil {
		return x.User
	}
	return nil
}

func (x *UserAddResponse) GetStatement() *Statement {
	if x != nil {
		return x.Statement
	}
	return nil
}

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

	KID        string     `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"`
	Password   string     `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"`
	Type       ExportType `protobuf:"varint,3,opt,name=type,proto3,enum=service.ExportType" json:"type,omitempty"`
	Public     bool       `protobuf:"varint,4,opt,name=public,proto3" json:"public,omitempty"`
	NoPassword bool       `protobuf:"varint,5,opt,name=noPassword,proto3" json:"noPassword,omitempty"`
}

func (x *KeyExportRequest) Reset() {
	*x = KeyExportRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[69]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*KeyExportRequest) ProtoMessage() {}

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

func (x *KeyExportRequest) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

func (x *KeyExportRequest) GetPassword() string {
	if x != nil {
		return x.Password
	}
	return ""
}

func (x *KeyExportRequest) GetType() ExportType {
	if x != nil {
		return x.Type
	}
	return DefaultExport
}

func (x *KeyExportRequest) GetPublic() bool {
	if x != nil {
		return x.Public
	}
	return false
}

func (x *KeyExportRequest) GetNoPassword() bool {
	if x != nil {
		return x.NoPassword
	}
	return false
}

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

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

func (x *KeyExportResponse) Reset() {
	*x = KeyExportResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[70]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*KeyExportResponse) ProtoMessage() {}

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

func (x *KeyExportResponse) GetExport() []byte {
	if x != nil {
		return x.Export
	}
	return nil
}

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

	In       []byte `protobuf:"bytes,1,opt,name=in,proto3" json:"in,omitempty"`
	Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"`
	Update   bool   `protobuf:"varint,3,opt,name=update,proto3" json:"update,omitempty"`
}

func (x *KeyImportRequest) Reset() {
	*x = KeyImportRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[71]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*KeyImportRequest) ProtoMessage() {}

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

func (x *KeyImportRequest) GetIn() []byte {
	if x != nil {
		return x.In
	}
	return nil
}

func (x *KeyImportRequest) GetPassword() string {
	if x != nil {
		return x.Password
	}
	return ""
}

func (x *KeyImportRequest) GetUpdate() bool {
	if x != nil {
		return x.Update
	}
	return false
}

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

	KID string `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"`
}

func (x *KeyImportResponse) Reset() {
	*x = KeyImportResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[72]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*KeyImportResponse) ProtoMessage() {}

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

func (x *KeyImportResponse) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

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

	// KID of key to remove.
	KID string `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"`
}

func (x *KeyRemoveRequest) Reset() {
	*x = KeyRemoveRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[73]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*KeyRemoveRequest) ProtoMessage() {}

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

func (x *KeyRemoveRequest) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

type KeyRemoveResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *KeyRemoveResponse) Reset() {
	*x = KeyRemoveResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[74]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*KeyRemoveResponse) ProtoMessage() {}

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

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

	// ID identifier.
	ID string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// Type of key.
	Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"`
	// IsPrivate if private key.
	IsPrivate bool `protobuf:"varint,4,opt,name=isPrivate,proto3" json:"isPrivate,omitempty"`
	// User associated with this key.
	User *User `protobuf:"bytes,6,opt,name=user,proto3" json:"user,omitempty"`
	// Saved if saved locally.
	Saved bool `protobuf:"varint,10,opt,name=saved,proto3" json:"saved,omitempty"`
	// SigchainLength is length of sigchain (if any).
	SigchainLength    int32 `protobuf:"varint,40,opt,name=sigchainLength,proto3" json:"sigchainLength,omitempty"`
	SigchainUpdatedAt int64 `protobuf:"varint,41,opt,name=sigchainUpdatedAt,proto3" json:"sigchainUpdatedAt,omitempty"`
}

func (x *Key) Reset() {
	*x = Key{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[75]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Key) ProtoMessage() {}

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

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

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

func (x *Key) GetIsPrivate() bool {
	if x != nil {
		return x.IsPrivate
	}
	return false
}

func (x *Key) GetUser() *User {
	if x != nil {
		return x.User
	}
	return nil
}

func (x *Key) GetSaved() bool {
	if x != nil {
		return x.Saved
	}
	return false
}

func (x *Key) GetSigchainLength() int32 {
	if x != nil {
		return x.SigchainLength
	}
	return 0
}

func (x *Key) GetSigchainUpdatedAt() int64 {
	if x != nil {
		return x.SigchainUpdatedAt
	}
	return 0
}

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

	// Key can be kid or user@service.
	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	// Search, if true, will search for the key on the server.
	Search bool `protobuf:"varint,4,opt,name=search,proto3" json:"search,omitempty"`
	// Update, if true, will update the sigchain from the server.
	Update bool `protobuf:"varint,5,opt,name=update,proto3" json:"update,omitempty"`
}

func (x *KeyRequest) Reset() {
	*x = KeyRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[76]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*KeyRequest) ProtoMessage() {}

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

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

func (x *KeyRequest) GetSearch() bool {
	if x != nil {
		return x.Search
	}
	return false
}

func (x *KeyRequest) GetUpdate() bool {
	if x != nil {
		return x.Update
	}
	return false
}

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

	Key *Key `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
}

func (x *KeyResponse) Reset() {
	*x = KeyResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[77]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*KeyResponse) ProtoMessage() {}

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

// Deprecated: Use KeyResponse.ProtoReflect.Descriptor instead.
func (*KeyResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{77}
}

func (x *KeyResponse) GetKey() *Key {
	if x != nil {
		return x.Key
	}
	return nil
}

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

	Query         string        `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`
	Types         []string      `protobuf:"bytes,2,rep,name=types,proto3" json:"types,omitempty"`
	SortField     string        `protobuf:"bytes,10,opt,name=sortField,proto3" json:"sortField,omitempty"`
	SortDirection SortDirection `protobuf:"varint,11,opt,name=sortDirection,proto3,enum=service.SortDirection" json:"sortDirection,omitempty"`
}

func (x *KeysRequest) Reset() {
	*x = KeysRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[78]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*KeysRequest) ProtoMessage() {}

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

func (x *KeysRequest) GetQuery() string {
	if x != nil {
		return x.Query
	}
	return ""
}

func (x *KeysRequest) GetTypes() []string {
	if x != nil {
		return x.Types
	}
	return nil
}

func (x *KeysRequest) GetSortField() string {
	if x != nil {
		return x.SortField
	}
	return ""
}

func (x *KeysRequest) GetSortDirection() SortDirection {
	if x != nil {
		return x.SortDirection
	}
	return SortAsc
}

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

	Keys          []*Key        `protobuf:"bytes,1,rep,name=keys,proto3" json:"keys,omitempty"`
	SortField     string        `protobuf:"bytes,10,opt,name=sortField,proto3" json:"sortField,omitempty"`
	SortDirection SortDirection `protobuf:"varint,11,opt,name=sortDirection,proto3,enum=service.SortDirection" json:"sortDirection,omitempty"`
}

func (x *KeysResponse) Reset() {
	*x = KeysResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[79]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*KeysResponse) ProtoMessage() {}

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

func (x *KeysResponse) GetKeys() []*Key {
	if x != nil {
		return x.Keys
	}
	return nil
}

func (x *KeysResponse) GetSortField() string {
	if x != nil {
		return x.SortField
	}
	return ""
}

func (x *KeysResponse) GetSortDirection() SortDirection {
	if x != nil {
		return x.SortDirection
	}
	return SortAsc
}

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

	ID        string     `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Name      string     `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Type      SecretType `protobuf:"varint,3,opt,name=type,proto3,enum=service.SecretType" json:"type,omitempty"`
	Username  string     `protobuf:"bytes,10,opt,name=username,proto3" json:"username,omitempty"`
	Password  string     `protobuf:"bytes,11,opt,name=password,proto3" json:"password,omitempty"`
	URL       string     `protobuf:"bytes,20,opt,name=url,proto3" json:"url,omitempty"`
	Notes     string     `protobuf:"bytes,30,opt,name=notes,proto3" json:"notes,omitempty"`
	CreatedAt int64      `protobuf:"varint,100,opt,name=createdAt,proto3" json:"createdAt,omitempty"`
	UpdatedAt int64      `protobuf:"varint,101,opt,name=updatedAt,proto3" json:"updatedAt,omitempty"`
}

func (x *Secret) Reset() {
	*x = Secret{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[80]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Secret) ProtoMessage() {}

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

func (x *Secret) GetID() string {
	if x != nil {
		return x.ID
	}
	return ""
}

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

func (x *Secret) GetType() SecretType {
	if x != nil {
		return x.Type
	}
	return UnknownSecret
}

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

func (x *Secret) GetPassword() string {
	if x != nil {
		return x.Password
	}
	return ""
}

func (x *Secret) GetURL() string {
	if x != nil {
		return x.URL
	}
	return ""
}

func (x *Secret) GetNotes() string {
	if x != nil {
		return x.Notes
	}
	return ""
}

func (x *Secret) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *Secret) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

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

	ID string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
}

func (x *SecretRequest) Reset() {
	*x = SecretRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[81]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SecretRequest) ProtoMessage() {}

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

func (x *SecretRequest) GetID() string {
	if x != nil {
		return x.ID
	}
	return ""
}

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

	Secret *Secret `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret,omitempty"`
}

func (x *SecretResponse) Reset() {
	*x = SecretResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[82]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SecretResponse) ProtoMessage() {}

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

func (x *SecretResponse) GetSecret() *Secret {
	if x != nil {
		return x.Secret
	}
	return nil
}

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

	Secret *Secret `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret,omitempty"`
}

func (x *SecretSaveRequest) Reset() {
	*x = SecretSaveRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[83]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SecretSaveRequest) ProtoMessage() {}

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

func (x *SecretSaveRequest) GetSecret() *Secret {
	if x != nil {
		return x.Secret
	}
	return nil
}

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

	Secret *Secret `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret,omitempty"`
}

func (x *SecretSaveResponse) Reset() {
	*x = SecretSaveResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[84]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SecretSaveResponse) ProtoMessage() {}

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

func (x *SecretSaveResponse) GetSecret() *Secret {
	if x != nil {
		return x.Secret
	}
	return nil
}

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

	ID string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
}

func (x *SecretRemoveRequest) Reset() {
	*x = SecretRemoveRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[85]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SecretRemoveRequest) ProtoMessage() {}

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

// Deprecated: Use SecretRemoveRequest.ProtoReflect.Descriptor instead.
func (*SecretRemoveRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{85}
}

func (x *SecretRemoveRequest) GetID() string {
	if x != nil {
		return x.ID
	}
	return ""
}

type SecretRemoveResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *SecretRemoveResponse) Reset() {
	*x = SecretRemoveResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[86]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SecretRemoveResponse) ProtoMessage() {}

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

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

	Query         string        `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`
	SortField     string        `protobuf:"bytes,10,opt,name=sortField,proto3" json:"sortField,omitempty"`
	SortDirection SortDirection `protobuf:"varint,11,opt,name=sortDirection,proto3,enum=service.SortDirection" json:"sortDirection,omitempty"`
}

func (x *SecretsRequest) Reset() {
	*x = SecretsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[87]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SecretsRequest) ProtoMessage() {}

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

func (x *SecretsRequest) GetQuery() string {
	if x != nil {
		return x.Query
	}
	return ""
}

func (x *SecretsRequest) GetSortField() string {
	if x != nil {
		return x.SortField
	}
	return ""
}

func (x *SecretsRequest) GetSortDirection() SortDirection {
	if x != nil {
		return x.SortDirection
	}
	return SortAsc
}

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

	Secrets       []*Secret     `protobuf:"bytes,1,rep,name=secrets,proto3" json:"secrets,omitempty"`
	SortField     string        `protobuf:"bytes,10,opt,name=sortField,proto3" json:"sortField,omitempty"`
	SortDirection SortDirection `protobuf:"varint,11,opt,name=sortDirection,proto3,enum=service.SortDirection" json:"sortDirection,omitempty"`
}

func (x *SecretsResponse) Reset() {
	*x = SecretsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[88]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SecretsResponse) ProtoMessage() {}

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

func (x *SecretsResponse) GetSecrets() []*Secret {
	if x != nil {
		return x.Secrets
	}
	return nil
}

func (x *SecretsResponse) GetSortField() string {
	if x != nil {
		return x.SortField
	}
	return ""
}

func (x *SecretsResponse) GetSortDirection() SortDirection {
	if x != nil {
		return x.SortDirection
	}
	return SortAsc
}

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

	NumBytes  int32    `protobuf:"varint,1,opt,name=numBytes,proto3" json:"numBytes,omitempty"`
	Encoding  Encoding `protobuf:"varint,2,opt,name=encoding,proto3,enum=service.Encoding" json:"encoding,omitempty"`
	NoPadding bool     `protobuf:"varint,10,opt,name=noPadding,proto3" json:"noPadding,omitempty"`
	Lowercase bool     `protobuf:"varint,11,opt,name=lowercase,proto3" json:"lowercase,omitempty"`
}

func (x *RandRequest) Reset() {
	*x = RandRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[89]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RandRequest) ProtoMessage() {}

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

func (x *RandRequest) GetNumBytes() int32 {
	if x != nil {
		return x.NumBytes
	}
	return 0
}

func (x *RandRequest) GetEncoding() Encoding {
	if x != nil {
		return x.Encoding
	}
	return Hex
}

func (x *RandRequest) GetNoPadding() bool {
	if x != nil {
		return x.NoPadding
	}
	return false
}

func (x *RandRequest) GetLowercase() bool {
	if x != nil {
		return x.Lowercase
	}
	return false
}

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

	Data string `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
}

func (x *RandResponse) Reset() {
	*x = RandResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[90]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RandResponse) ProtoMessage() {}

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

func (x *RandResponse) GetData() string {
	if x != nil {
		return x.Data
	}
	return ""
}

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

	Length int32 `protobuf:"varint,1,opt,name=length,proto3" json:"length,omitempty"`
}

func (x *RandPasswordRequest) Reset() {
	*x = RandPasswordRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[91]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RandPasswordRequest) ProtoMessage() {}

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

func (x *RandPasswordRequest) GetLength() int32 {
	if x != nil {
		return x.Length
	}
	return 0
}

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

	Password string `protobuf:"bytes,1,opt,name=password,proto3" json:"password,omitempty"`
}

func (x *RandPasswordResponse) Reset() {
	*x = RandPasswordResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[92]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RandPasswordResponse) ProtoMessage() {}

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

func (x *RandPasswordResponse) GetPassword() string {
	if x != nil {
		return x.Password
	}
	return ""
}

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

	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
}

func (x *PullRequest) Reset() {
	*x = PullRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[93]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PullRequest) ProtoMessage() {}

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

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

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

	KIDs []string `protobuf:"bytes,1,rep,name=kids,proto3" json:"kids,omitempty"`
}

func (x *PullResponse) Reset() {
	*x = PullResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[94]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PullResponse) ProtoMessage() {}

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

func (x *PullResponse) GetKIDs() []string {
	if x != nil {
		return x.KIDs
	}
	return nil
}

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

	Key         string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	RemoteCheck bool   `protobuf:"varint,2,opt,name=remoteCheck,proto3" json:"remoteCheck,omitempty"`
}

func (x *PushRequest) Reset() {
	*x = PushRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[95]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PushRequest) ProtoMessage() {}

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

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

func (x *PushRequest) GetRemoteCheck() bool {
	if x != nil {
		return x.RemoteCheck
	}
	return false
}

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

	KID  string   `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"`
	URLs []string `protobuf:"bytes,2,rep,name=urls,proto3" json:"urls,omitempty"`
}

func (x *PushResponse) Reset() {
	*x = PushResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[96]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PushResponse) ProtoMessage() {}

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

func (x *PushResponse) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

func (x *PushResponse) GetURLs() []string {
	if x != nil {
		return x.URLs
	}
	return nil
}

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

	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
}

func (x *Collection) Reset() {
	*x = Collection{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[97]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Collection) ProtoMessage() {}

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

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

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

	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// DB is "service" or "vault".
	DB string `protobuf:"bytes,5,opt,name=db,proto3" json:"db,omitempty"`
}

func (x *CollectionsRequest) Reset() {
	*x = CollectionsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[98]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CollectionsRequest) ProtoMessage() {}

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

func (x *CollectionsRequest) GetParent() string {
	if x != nil {
		return x.Parent
	}
	return ""
}

func (x *CollectionsRequest) GetDB() string {
	if x != nil {
		return x.DB
	}
	return ""
}

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

	Collections []*Collection `protobuf:"bytes,1,rep,name=collections,proto3" json:"collections,omitempty"`
}

func (x *CollectionsResponse) Reset() {
	*x = CollectionsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[99]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CollectionsResponse) ProtoMessage() {}

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

func (x *CollectionsResponse) GetCollections() []*Collection {
	if x != nil {
		return x.Collections
	}
	return nil
}

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

	Path      string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	Value     string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	CreatedAt int64  `protobuf:"varint,10,opt,name=createdAt,proto3" json:"createdAt,omitempty"`
	UpdatedAt int64  `protobuf:"varint,11,opt,name=updatedAt,proto3" json:"updatedAt,omitempty"`
}

func (x *Document) Reset() {
	*x = Document{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[100]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Document) ProtoMessage() {}

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

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

func (x *Document) GetValue() string {
	if x != nil {
		return x.Value
	}
	return ""
}

func (x *Document) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *Document) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

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

	Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
	// DB is "service" or "vault".
	DB string `protobuf:"bytes,5,opt,name=db,proto3" json:"db,omitempty"`
}

func (x *DocumentsRequest) Reset() {
	*x = DocumentsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[101]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DocumentsRequest) ProtoMessage() {}

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

func (x *DocumentsRequest) GetPrefix() string {
	if x != nil {
		return x.Prefix
	}
	return ""
}

func (x *DocumentsRequest) GetDB() string {
	if x != nil {
		return x.DB
	}
	return ""
}

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

	Documents []*Document `protobuf:"bytes,1,rep,name=documents,proto3" json:"documents,omitempty"`
}

func (x *DocumentsResponse) Reset() {
	*x = DocumentsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[102]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DocumentsResponse) ProtoMessage() {}

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

func (x *DocumentsResponse) GetDocuments() []*Document {
	if x != nil {
		return x.Documents
	}
	return nil
}

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

	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	DB   string `protobuf:"bytes,5,opt,name=db,proto3" json:"db,omitempty"`
}

func (x *DocumentDeleteRequest) Reset() {
	*x = DocumentDeleteRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[103]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DocumentDeleteRequest) ProtoMessage() {}

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

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

func (x *DocumentDeleteRequest) GetDB() string {
	if x != nil {
		return x.DB
	}
	return ""
}

type DocumentDeleteResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *DocumentDeleteResponse) Reset() {
	*x = DocumentDeleteResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[104]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DocumentDeleteResponse) ProtoMessage() {}

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

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

	ID         string     `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Name       string     `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	KID        string     `protobuf:"bytes,3,opt,name=kid,proto3" json:"kid,omitempty"`
	Seq        int32      `protobuf:"varint,4,opt,name=seq,proto3" json:"seq,omitempty"`
	Service    string     `protobuf:"bytes,5,opt,name=service,proto3" json:"service,omitempty"`
	URL        string     `protobuf:"bytes,6,opt,name=url,proto3" json:"url,omitempty"`
	Status     UserStatus `protobuf:"varint,10,opt,name=status,proto3,enum=service.UserStatus" json:"status,omitempty"`
	VerifiedAt int64      `protobuf:"varint,11,opt,name=verifiedAt,proto3" json:"verifiedAt,omitempty"`
	Timestamp  int64      `protobuf:"varint,12,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	Proxied    bool       `protobuf:"varint,13,opt,name=proxied,proto3" json:"proxied,omitempty"`
	Err        string     `protobuf:"bytes,20,opt,name=err,proto3" json:"err,omitempty"`
}

func (x *User) Reset() {
	*x = User{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[105]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*User) ProtoMessage() {}

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

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

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

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

func (x *User) GetSeq() int32 {
	if x != nil {
		return x.Seq
	}
	return 0
}

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

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

func (x *User) GetStatus() UserStatus {
	if x != nil {
		return x.Status
	}
	return UserStatusUnknown
}

func (x *User) GetVerifiedAt() int64 {
	if x != nil {
		return x.VerifiedAt
	}
	return 0
}

func (x *User) GetTimestamp() int64 {
	if x != nil {
		return x.Timestamp
	}
	return 0
}

func (x *User) GetProxied() bool {
	if x != nil {
		return x.Proxied
	}
	return false
}

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

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

	KID   string `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"`
	Local bool   `protobuf:"varint,4,opt,name=local,proto3" json:"local,omitempty"`
}

func (x *UserRequest) Reset() {
	*x = UserRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[106]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UserRequest) ProtoMessage() {}

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

func (x *UserRequest) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

func (x *UserRequest) GetLocal() bool {
	if x != nil {
		return x.Local
	}
	return false
}

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

	User *User `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"`
}

func (x *UserResponse) Reset() {
	*x = UserResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[107]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UserResponse) ProtoMessage() {}

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

func (x *UserResponse) GetUser() *User {
	if x != nil {
		return x.User
	}
	return nil
}

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

	Query string `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`
	Limit int32  `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`
	Local bool   `protobuf:"varint,4,opt,name=local,proto3" json:"local,omitempty"`
}

func (x *UserSearchRequest) Reset() {
	*x = UserSearchRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[108]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UserSearchRequest) ProtoMessage() {}

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

func (x *UserSearchRequest) GetQuery() string {
	if x != nil {
		return x.Query
	}
	return ""
}

func (x *UserSearchRequest) GetLimit() int32 {
	if x != nil {
		return x.Limit
	}
	return 0
}

func (x *UserSearchRequest) GetLocal() bool {
	if x != nil {
		return x.Local
	}
	return false
}

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

	Users []*User `protobuf:"bytes,1,rep,name=users,proto3" json:"users,omitempty"`
}

func (x *UserSearchResponse) Reset() {
	*x = UserSearchResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[109]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UserSearchResponse) ProtoMessage() {}

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

func (x *UserSearchResponse) GetUsers() []*User {
	if x != nil {
		return x.Users
	}
	return nil
}

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

	Query string `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`
}

func (x *SearchRequest) Reset() {
	*x = SearchRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[110]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SearchRequest) ProtoMessage() {}

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

func (x *SearchRequest) GetQuery() string {
	if x != nil {
		return x.Query
	}
	return ""
}

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

	Keys []*Key `protobuf:"bytes,1,rep,name=keys,proto3" json:"keys,omitempty"`
}

func (x *SearchResponse) Reset() {
	*x = SearchResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[111]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SearchResponse) ProtoMessage() {}

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

func (x *SearchResponse) GetKeys() []*Key {
	if x != nil {
		return x.Keys
	}
	return nil
}

type VaultSyncRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *VaultSyncRequest) Reset() {
	*x = VaultSyncRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[112]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*VaultSyncRequest) ProtoMessage() {}

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

type VaultSyncResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *VaultSyncResponse) Reset() {
	*x = VaultSyncResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[113]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*VaultSyncResponse) ProtoMessage() {}

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

type VaultUnsyncRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *VaultUnsyncRequest) Reset() {
	*x = VaultUnsyncRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[114]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*VaultUnsyncRequest) ProtoMessage() {}

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

type VaultUnsyncResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *VaultUnsyncResponse) Reset() {
	*x = VaultUnsyncResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[115]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*VaultUnsyncResponse) ProtoMessage() {}

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

type VaultAuthRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *VaultAuthRequest) Reset() {
	*x = VaultAuthRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[116]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*VaultAuthRequest) ProtoMessage() {}

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

// Deprecated: Use VaultAuthRequest.ProtoReflect.Descriptor instead.
func (*VaultAuthRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{116}
}

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

	Phrase string `protobuf:"bytes,1,opt,name=phrase,proto3" json:"phrase,omitempty"`
}

func (x *VaultAuthResponse) Reset() {
	*x = VaultAuthResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[117]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*VaultAuthResponse) ProtoMessage() {}

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

// Deprecated: Use VaultAuthResponse.ProtoReflect.Descriptor instead.
func (*VaultAuthResponse) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{117}
}

func (x *VaultAuthResponse) GetPhrase() string {
	if x != nil {
		return x.Phrase
	}
	return ""
}

type VaultStatusRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *VaultStatusRequest) Reset() {
	*x = VaultStatusRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[118]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*VaultStatusRequest) ProtoMessage() {}

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

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

	KID      string `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"`
	SyncedAt int64  `protobuf:"varint,2,opt,name=syncedAt,proto3" json:"syncedAt,omitempty"`
}

func (x *VaultStatusResponse) Reset() {
	*x = VaultStatusResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[119]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*VaultStatusResponse) ProtoMessage() {}

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

func (x *VaultStatusResponse) GetKID() string {
	if x != nil {
		return x.KID
	}
	return ""
}

func (x *VaultStatusResponse) GetSyncedAt() int64 {
	if x != nil {
		return x.SyncedAt
	}
	return 0
}

type VaultUpdateRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *VaultUpdateRequest) Reset() {
	*x = VaultUpdateRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[120]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*VaultUpdateRequest) ProtoMessage() {}

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

type VaultUpdateResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *VaultUpdateResponse) Reset() {
	*x = VaultUpdateResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[121]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*VaultUpdateResponse) ProtoMessage() {}

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

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

	ID        string        `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Sender    *Key          `protobuf:"bytes,2,opt,name=sender,proto3" json:"sender,omitempty"`
	Text      []string      `protobuf:"bytes,10,rep,name=text,proto3" json:"text,omitempty"`
	Status    MessageStatus `protobuf:"varint,20,opt,name=status,proto3,enum=service.MessageStatus" json:"status,omitempty"`
	CreatedAt int64         `protobuf:"varint,31,opt,name=createdAt,proto3" json:"createdAt,omitempty"`
}

func (x *Message) Reset() {
	*x = Message{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[122]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Message) ProtoMessage() {}

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

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

func (x *Message) GetSender() *Key {
	if x != nil {
		return x.Sender
	}
	return nil
}

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

func (x *Message) GetStatus() MessageStatus {
	if x != nil {
		return x.Status
	}
	return MessageSent
}

func (x *Message) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

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

	Sender  string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"`
	Channel string `protobuf:"bytes,2,opt,name=channel,proto3" json:"channel,omitempty"`
	Text    string `protobuf:"bytes,11,opt,name=text,proto3" json:"text,omitempty"`
}

func (x *MessagePrepareRequest) Reset() {
	*x = MessagePrepareRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[123]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MessagePrepareRequest) ProtoMessage() {}

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

func (x *MessagePrepareRequest) GetSender() string {
	if x != nil {
		return x.Sender
	}
	return ""
}

func (x *MessagePrepareRequest) GetChannel() string {
	if x != nil {
		return x.Channel
	}
	return ""
}

func (x *MessagePrepareRequest) GetText() string {
	if x != nil {
		return x.Text
	}
	return ""
}

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

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

func (x *MessagePrepareResponse) Reset() {
	*x = MessagePrepareResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[124]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MessagePrepareResponse) ProtoMessage() {}

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

func (x *MessagePrepareResponse) GetMessage() *Message {
	if x != nil {
		return x.Message
	}
	return nil
}

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

	Sender  string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"`
	Channel string `protobuf:"bytes,2,opt,name=channel,proto3" json:"channel,omitempty"`
	// ID is optional, if message was prepared you can use that ID, otherwise it
	// is autogenerated.
	ID   string `protobuf:"bytes,10,opt,name=id,proto3" json:"id,omitempty"`
	Text string `protobuf:"bytes,11,opt,name=text,proto3" json:"text,omitempty"`
}

func (x *MessageCreateRequest) Reset() {
	*x = MessageCreateRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[125]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MessageCreateRequest) ProtoMessage() {}

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

func (x *MessageCreateRequest) GetSender() string {
	if x != nil {
		return x.Sender
	}
	return ""
}

func (x *MessageCreateRequest) GetChannel() string {
	if x != nil {
		return x.Channel
	}
	return ""
}

func (x *MessageCreateRequest) GetID() string {
	if x != nil {
		return x.ID
	}
	return ""
}

func (x *MessageCreateRequest) GetText() string {
	if x != nil {
		return x.Text
	}
	return ""
}

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

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

func (x *MessageCreateResponse) Reset() {
	*x = MessageCreateResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[126]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MessageCreateResponse) ProtoMessage() {}

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

func (x *MessageCreateResponse) GetMessage() *Message {
	if x != nil {
		return x.Message
	}
	return nil
}

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

	Channel string `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"`
	// Update, if true will update from the server.
	Update bool `protobuf:"varint,5,opt,name=update,proto3" json:"update,omitempty"`
}

func (x *MessagesRequest) Reset() {
	*x = MessagesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[127]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MessagesRequest) ProtoMessage() {}

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

func (x *MessagesRequest) GetChannel() string {
	if x != nil {
		return x.Channel
	}
	return ""
}

func (x *MessagesRequest) GetUpdate() bool {
	if x != nil {
		return x.Update
	}
	return false
}

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

	Messages []*Message `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
}

func (x *MessagesResponse) Reset() {
	*x = MessagesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[128]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MessagesResponse) ProtoMessage() {}

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

func (x *MessagesResponse) GetMessages() []*Message {
	if x != nil {
		return x.Messages
	}
	return nil
}

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

	Keys []string `protobuf:"bytes,1,rep,name=keys,proto3" json:"keys,omitempty"`
	User string   `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
}

func (x *RelayRequest) Reset() {
	*x = RelayRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[129]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RelayRequest) ProtoMessage() {}

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

func (x *RelayRequest) GetKeys() []string {
	if x != nil {
		return x.Keys
	}
	return nil
}

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

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

	Channel string `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"`
	User    string `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
	Index   int64  `protobuf:"varint,3,opt,name=index,proto3" json:"index,omitempty"`
}

func (x *RelayOutput) Reset() {
	*x = RelayOutput{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[130]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RelayOutput) ProtoMessage() {}

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

func (x *RelayOutput) GetChannel() string {
	if x != nil {
		return x.Channel
	}
	return ""
}

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

func (x *RelayOutput) GetIndex() int64 {
	if x != nil {
		return x.Index
	}
	return 0
}

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

	ID        string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Name      string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Snippet   string `protobuf:"bytes,3,opt,name=snippet,proto3" json:"snippet,omitempty"`
	UpdatedAt int64  `protobuf:"varint,4,opt,name=updatedAt,proto3" json:"updatedAt,omitempty"`
	Index     int64  `protobuf:"varint,5,opt,name=index,proto3" json:"index,omitempty"`
	ReadIndex int64  `protobuf:"varint,10,opt,name=readIndex,proto3" json:"readIndex,omitempty"`
}

func (x *Channel) Reset() {
	*x = Channel{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[131]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Channel) ProtoMessage() {}

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

func (x *Channel) GetID() string {
	if x != nil {
		return x.ID
	}
	return ""
}

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

func (x *Channel) GetSnippet() string {
	if x != nil {
		return x.Snippet
	}
	return ""
}

func (x *Channel) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *Channel) GetIndex() int64 {
	if x != nil {
		return x.Index
	}
	return 0
}

func (x *Channel) GetReadIndex() int64 {
	if x != nil {
		return x.ReadIndex
	}
	return 0
}

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

	User string `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"`
}

func (x *ChannelsRequest) Reset() {
	*x = ChannelsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[132]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ChannelsRequest) ProtoMessage() {}

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

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

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

	Channels []*Channel `protobuf:"bytes,1,rep,name=channels,proto3" json:"channels,omitempty"`
}

func (x *ChannelsResponse) Reset() {
	*x = ChannelsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[133]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ChannelsResponse) ProtoMessage() {}

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

func (x *ChannelsResponse) GetChannels() []*Channel {
	if x != nil {
		return x.Channels
	}
	return nil
}

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

	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	User string `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
}

func (x *ChannelCreateRequest) Reset() {
	*x = ChannelCreateRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[134]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ChannelCreateRequest) ProtoMessage() {}

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

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

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

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

	Channel *Channel `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"`
}

func (x *ChannelCreateResponse) Reset() {
	*x = ChannelCreateResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[135]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ChannelCreateResponse) ProtoMessage() {}

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

func (x *ChannelCreateResponse) GetChannel() *Channel {
	if x != nil {
		return x.Channel
	}
	return nil
}

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

	Channel string `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"`
}

func (x *ChannelLeaveRequest) Reset() {
	*x = ChannelLeaveRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[136]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ChannelLeaveRequest) ProtoMessage() {}

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

func (x *ChannelLeaveRequest) GetChannel() string {
	if x != nil {
		return x.Channel
	}
	return ""
}

type ChannelLeaveResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ChannelLeaveResponse) Reset() {
	*x = ChannelLeaveResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[137]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ChannelLeaveResponse) ProtoMessage() {}

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

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

	Channel string `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"`
	Index   int64  `protobuf:"varint,2,opt,name=index,proto3" json:"index,omitempty"`
}

func (x *ChannelReadRequest) Reset() {
	*x = ChannelReadRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[138]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ChannelReadRequest) ProtoMessage() {}

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

func (x *ChannelReadRequest) GetChannel() string {
	if x != nil {
		return x.Channel
	}
	return ""
}

func (x *ChannelReadRequest) GetIndex() int64 {
	if x != nil {
		return x.Index
	}
	return 0
}

type ChannelReadResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ChannelReadResponse) Reset() {
	*x = ChannelReadResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[139]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ChannelReadResponse) ProtoMessage() {}

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

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

	Channel    string   `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"`
	Recipients []string `protobuf:"bytes,2,rep,name=recipients,proto3" json:"recipients,omitempty"`
	Sender     string   `protobuf:"bytes,3,opt,name=sender,proto3" json:"sender,omitempty"`
}

func (x *ChannelInviteRequest) Reset() {
	*x = ChannelInviteRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[140]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ChannelInviteRequest) ProtoMessage() {}

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

func (x *ChannelInviteRequest) GetChannel() string {
	if x != nil {
		return x.Channel
	}
	return ""
}

func (x *ChannelInviteRequest) GetRecipients() []string {
	if x != nil {
		return x.Recipients
	}
	return nil
}

func (x *ChannelInviteRequest) GetSender() string {
	if x != nil {
		return x.Sender
	}
	return ""
}

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

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

func (x *ChannelInviteResponse) Reset() {
	*x = ChannelInviteResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[141]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ChannelInviteResponse) ProtoMessage() {}

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

func (x *ChannelInviteResponse) GetMessage() *Message {
	if x != nil {
		return x.Message
	}
	return nil
}

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

	Recipient string `protobuf:"bytes,1,opt,name=recipient,proto3" json:"recipient,omitempty"`
	Sender    string `protobuf:"bytes,2,opt,name=sender,proto3" json:"sender,omitempty"`
}

func (x *Follow) Reset() {
	*x = Follow{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[142]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Follow) ProtoMessage() {}

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

func (x *Follow) GetRecipient() string {
	if x != nil {
		return x.Recipient
	}
	return ""
}

func (x *Follow) GetSender() string {
	if x != nil {
		return x.Sender
	}
	return ""
}

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

	Recipient string `protobuf:"bytes,1,opt,name=recipient,proto3" json:"recipient,omitempty"`
	Sender    string `protobuf:"bytes,2,opt,name=sender,proto3" json:"sender,omitempty"`
}

func (x *FollowRequest) Reset() {
	*x = FollowRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[143]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FollowRequest) ProtoMessage() {}

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

func (x *FollowRequest) GetRecipient() string {
	if x != nil {
		return x.Recipient
	}
	return ""
}

func (x *FollowRequest) GetSender() string {
	if x != nil {
		return x.Sender
	}
	return ""
}

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

	Follow *Follow `protobuf:"bytes,1,opt,name=follow,proto3" json:"follow,omitempty"`
}

func (x *FollowResponse) Reset() {
	*x = FollowResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[144]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FollowResponse) ProtoMessage() {}

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

func (x *FollowResponse) GetFollow() *Follow {
	if x != nil {
		return x.Follow
	}
	return nil
}

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

	Recipient string `protobuf:"bytes,1,opt,name=recipient,proto3" json:"recipient,omitempty"`
	Update    bool   `protobuf:"varint,2,opt,name=update,proto3" json:"update,omitempty"`
}

func (x *FollowsRequest) Reset() {
	*x = FollowsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[145]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FollowsRequest) ProtoMessage() {}

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

func (x *FollowsRequest) GetRecipient() string {
	if x != nil {
		return x.Recipient
	}
	return ""
}

func (x *FollowsRequest) GetUpdate() bool {
	if x != nil {
		return x.Update
	}
	return false
}

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

	Follows []*Follow `protobuf:"bytes,1,rep,name=follows,proto3" json:"follows,omitempty"`
}

func (x *FollowsResponse) Reset() {
	*x = FollowsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[146]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FollowsResponse) ProtoMessage() {}

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

func (x *FollowsResponse) GetFollows() []*Follow {
	if x != nil {
		return x.Follows
	}
	return nil
}

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

	Signer string `protobuf:"bytes,1,opt,name=signer,proto3" json:"signer,omitempty"`
	Method string `protobuf:"bytes,2,opt,name=method,proto3" json:"method,omitempty"`
	URL    string `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"`
}

func (x *AdminSignURLRequest) Reset() {
	*x = AdminSignURLRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[147]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AdminSignURLRequest) ProtoMessage() {}

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

func (x *AdminSignURLRequest) GetSigner() string {
	if x != nil {
		return x.Signer
	}
	return ""
}

func (x *AdminSignURLRequest) GetMethod() string {
	if x != nil {
		return x.Method
	}
	return ""
}

func (x *AdminSignURLRequest) GetURL() string {
	if x != nil {
		return x.URL
	}
	return ""
}

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

	Auth string `protobuf:"bytes,1,opt,name=auth,proto3" json:"auth,omitempty"`
	URL  string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"`
	CURL string `protobuf:"bytes,3,opt,name=curl,proto3" json:"curl,omitempty"`
}

func (x *AdminSignURLResponse) Reset() {
	*x = AdminSignURLResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[148]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AdminSignURLResponse) ProtoMessage() {}

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

func (x *AdminSignURLResponse) GetAuth() string {
	if x != nil {
		return x.Auth
	}
	return ""
}

func (x *AdminSignURLResponse) GetURL() string {
	if x != nil {
		return x.URL
	}
	return ""
}

func (x *AdminSignURLResponse) GetCURL() string {
	if x != nil {
		return x.CURL
	}
	return ""
}

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

	Signer string `protobuf:"bytes,1,opt,name=signer,proto3" json:"signer,omitempty"`
	Check  string `protobuf:"bytes,2,opt,name=check,proto3" json:"check,omitempty"`
}

func (x *AdminCheckRequest) Reset() {
	*x = AdminCheckRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[149]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AdminCheckRequest) ProtoMessage() {}

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

func (x *AdminCheckRequest) GetSigner() string {
	if x != nil {
		return x.Signer
	}
	return ""
}

func (x *AdminCheckRequest) GetCheck() string {
	if x != nil {
		return x.Check
	}
	return ""
}

type AdminCheckResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *AdminCheckResponse) Reset() {
	*x = AdminCheckResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[150]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AdminCheckResponse) ProtoMessage() {}

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

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

	App     *Config_App     `protobuf:"bytes,1,opt,name=app,proto3" json:"app,omitempty"`
	Encrypt *Config_Encrypt `protobuf:"bytes,10,opt,name=encrypt,proto3" json:"encrypt,omitempty"`
	Sign    *Config_Sign    `protobuf:"bytes,11,opt,name=sign,proto3" json:"sign,omitempty"`
}

func (x *Config) Reset() {
	*x = Config{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[151]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Config) ProtoMessage() {}

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

func (x *Config) GetApp() *Config_App {
	if x != nil {
		return x.App
	}
	return nil
}

func (x *Config) GetEncrypt() *Config_Encrypt {
	if x != nil {
		return x.Encrypt
	}
	return nil
}

func (x *Config) GetSign() *Config_Sign {
	if x != nil {
		return x.Sign
	}
	return nil
}

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

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

func (x *ConfigGetRequest) Reset() {
	*x = ConfigGetRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[152]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ConfigGetRequest) ProtoMessage() {}

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

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

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

	Config *Config `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
}

func (x *ConfigGetResponse) Reset() {
	*x = ConfigGetResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[153]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ConfigGetResponse) ProtoMessage() {}

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

func (x *ConfigGetResponse) GetConfig() *Config {
	if x != nil {
		return x.Config
	}
	return nil
}

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

	Name   string  `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Config *Config `protobuf:"bytes,2,opt,name=config,proto3" json:"config,omitempty"`
}

func (x *ConfigSetRequest) Reset() {
	*x = ConfigSetRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[154]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ConfigSetRequest) ProtoMessage() {}

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

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

func (x *ConfigSetRequest) GetConfig() *Config {
	if x != nil {
		return x.Config
	}
	return nil
}

type ConfigSetResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ConfigSetResponse) Reset() {
	*x = ConfigSetResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[155]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ConfigSetResponse) ProtoMessage() {}

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

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

	Sender    string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"`
	Recipient string `protobuf:"bytes,2,opt,name=recipient,proto3" json:"recipient,omitempty"`
	Invite    string `protobuf:"bytes,3,opt,name=invite,proto3" json:"invite,omitempty"`
	ID        string `protobuf:"bytes,10,opt,name=id,proto3" json:"id,omitempty"`
	Text      string `protobuf:"bytes,11,opt,name=text,proto3" json:"text,omitempty"`
}

func (x *WormholeInput) Reset() {
	*x = WormholeInput{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[156]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*WormholeInput) ProtoMessage() {}

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

func (x *WormholeInput) GetSender() string {
	if x != nil {
		return x.Sender
	}
	return ""
}

func (x *WormholeInput) GetRecipient() string {
	if x != nil {
		return x.Recipient
	}
	return ""
}

func (x *WormholeInput) GetInvite() string {
	if x != nil {
		return x.Invite
	}
	return ""
}

func (x *WormholeInput) GetID() string {
	if x != nil {
		return x.ID
	}
	return ""
}

func (x *WormholeInput) GetText() string {
	if x != nil {
		return x.Text
	}
	return ""
}

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

	ID        string                `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Sender    *Key                  `protobuf:"bytes,2,opt,name=sender,proto3" json:"sender,omitempty"`
	Recipient *Key                  `protobuf:"bytes,3,opt,name=recipient,proto3" json:"recipient,omitempty"`
	Status    WormholeMessageStatus `protobuf:"varint,5,opt,name=status,proto3,enum=service.WormholeMessageStatus" json:"status,omitempty"`
	Text      string                `protobuf:"bytes,10,opt,name=text,proto3" json:"text,omitempty"`
	CreatedAt int64                 `protobuf:"varint,21,opt,name=createdAt,proto3" json:"createdAt,omitempty"`
}

func (x *WormholeMessage) Reset() {
	*x = WormholeMessage{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[157]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*WormholeMessage) ProtoMessage() {}

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

func (x *WormholeMessage) GetID() string {
	if x != nil {
		return x.ID
	}
	return ""
}

func (x *WormholeMessage) GetSender() *Key {
	if x != nil {
		return x.Sender
	}
	return nil
}

func (x *WormholeMessage) GetRecipient() *Key {
	if x != nil {
		return x.Recipient
	}
	return nil
}

func (x *WormholeMessage) GetStatus() WormholeMessageStatus {
	if x != nil {
		return x.Status
	}
	return WormholeMessageSent
}

func (x *WormholeMessage) GetText() string {
	if x != nil {
		return x.Text
	}
	return ""
}

func (x *WormholeMessage) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

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

	Message *WormholeMessage `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
	Status  WormholeStatus   `protobuf:"varint,2,opt,name=status,proto3,enum=service.WormholeStatus" json:"status,omitempty"`
}

func (x *WormholeOutput) Reset() {
	*x = WormholeOutput{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[158]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*WormholeOutput) ProtoMessage() {}

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

func (x *WormholeOutput) GetMessage() *WormholeMessage {
	if x != nil {
		return x.Message
	}
	return nil
}

func (x *WormholeOutput) GetStatus() WormholeStatus {
	if x != nil {
		return x.Status
	}
	return WormholeDefault
}

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

	Location     string   `protobuf:"bytes,1,opt,name=location,proto3" json:"location,omitempty"`
	History      []string `protobuf:"bytes,2,rep,name=history,proto3" json:"history,omitempty"`
	NavMinimized bool     `protobuf:"varint,100,opt,name=navMinimized,proto3" json:"navMinimized,omitempty"`
}

func (x *Config_App) Reset() {
	*x = Config_App{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[159]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Config_App) ProtoMessage() {}

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

func (x *Config_App) GetLocation() string {
	if x != nil {
		return x.Location
	}
	return ""
}

func (x *Config_App) GetHistory() []string {
	if x != nil {
		return x.History
	}
	return nil
}

func (x *Config_App) GetNavMinimized() bool {
	if x != nil {
		return x.NavMinimized
	}
	return false
}

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

	Recipients        []string `protobuf:"bytes,1,rep,name=recipients,proto3" json:"recipients,omitempty"`
	Sender            string   `protobuf:"bytes,2,opt,name=sender,proto3" json:"sender,omitempty"`
	NoSenderRecipient bool     `protobuf:"varint,3,opt,name=noSenderRecipient,proto3" json:"noSenderRecipient,omitempty"`
	NoSign            bool     `protobuf:"varint,4,opt,name=noSign,proto3" json:"noSign,omitempty"`
}

func (x *Config_Encrypt) Reset() {
	*x = Config_Encrypt{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[160]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Config_Encrypt) ProtoMessage() {}

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

func (x *Config_Encrypt) GetRecipients() []string {
	if x != nil {
		return x.Recipients
	}
	return nil
}

func (x *Config_Encrypt) GetSender() string {
	if x != nil {
		return x.Sender
	}
	return ""
}

func (x *Config_Encrypt) GetNoSenderRecipient() bool {
	if x != nil {
		return x.NoSenderRecipient
	}
	return false
}

func (x *Config_Encrypt) GetNoSign() bool {
	if x != nil {
		return x.NoSign
	}
	return false
}

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

	Signer string `protobuf:"bytes,1,opt,name=signer,proto3" json:"signer,omitempty"`
}

func (x *Config_Sign) Reset() {
	*x = Config_Sign{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[161]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Config_Sign) ProtoMessage() {}

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

func (x *Config_Sign) GetSigner() string {
	if x != nil {
		return x.Signer
	}
	return ""
}

var File_rpc_proto protoreflect.FileDescriptor

var file_rpc_proto_rawDesc = []byte{
	0x0a, 0x09, 0x72, 0x70, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x07, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x1a, 0x0e, 0x70, 0x61, 0x74, 0x63, 0x68, 0x2f, 0x67, 0x6f, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x22, 0x6f, 0x0a, 0x0b, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65,
	0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x12,
	0x18, 0x0a, 0x07, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x07, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x65, 0x74,
	0x61, 0x63, 0x68, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x65, 0x74,
	0x61, 0x63, 0x68, 0x65, 0x64, 0x22, 0x3f, 0x0a, 0x0c, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49,
	0x44, 0x52, 0x03, 0x6b, 0x69, 0x64, 0x22, 0x7f, 0x0a, 0x0d, 0x53, 0x69, 0x67, 0x6e, 0x46, 0x69,
	0x6c, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6f, 0x75, 0x74, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x75, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x69, 0x67,
	0x6e, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65,
	0x72, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x07, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64,
	0x65, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64,
	0x65, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x22, 0x6b, 0x0a, 0x0e, 0x53, 0x69, 0x67, 0x6e, 0x46,
	0x69, 0x6c, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49,
	0x44, 0x52, 0x03, 0x6b, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x75, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65,
	0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x14,
	0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74,
	0x6f, 0x74, 0x61, 0x6c, 0x22, 0x23, 0x0a, 0x0d, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x4a, 0x0a, 0x0e, 0x56, 0x65, 0x72,
	0x69, 0x66, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64,
	0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12,
	0x24, 0x0a, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x73,
	0x69, 0x67, 0x6e, 0x65, 0x72, 0x22, 0x3d, 0x0a, 0x15, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x44,
	0x65, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12,
	0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61,
	0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52,
	0x03, 0x73, 0x69, 0x67, 0x22, 0x3e, 0x0a, 0x16, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x44, 0x65,
	0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24,
	0x0a, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x73, 0x69,
	0x67, 0x6e, 0x65, 0x72, 0x22, 0x21, 0x0a, 0x0b, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x49, 0x6e,
	0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x48, 0x0a, 0x0c, 0x56, 0x65, 0x72, 0x69, 0x66,
	0x79, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x24, 0x0a, 0x06, 0x73,
	0x69, 0x67, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x73, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65,
	0x72, 0x22, 0x33, 0x0a, 0x0f, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x49,
	0x6e, 0x70, 0x75, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x02, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x6f, 0x75, 0x74, 0x22, 0x4a, 0x0a, 0x10, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79,
	0x46, 0x69, 0x6c, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x24, 0x0a, 0x06, 0x73, 0x69,
	0x67, 0x6e, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72,
	0x12, 0x10, 0x0a, 0x03, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f,
	0x75, 0x74, 0x22, 0x3b, 0x0a, 0x17, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61,
	0x63, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x0e, 0x0a,
	0x02, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x10, 0x0a,
	0x03, 0x73, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x73, 0x69, 0x67, 0x22,
	0x3b, 0x0a, 0x13, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x65,
	0x64, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x69,
	0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x73, 0x69, 0x67, 0x22, 0xbe, 0x01, 0x0a,
	0x09, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x69,
	0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x73, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04,
	0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61,
	0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca,
	0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49, 0x44, 0x52, 0x03, 0x6b, 0x69, 0x64, 0x12, 0x10, 0x0a,
	0x03, 0x73, 0x65, 0x71, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x73, 0x65, 0x71, 0x12,
	0x12, 0x0a, 0x04, 0x70, 0x72, 0x65, 0x76, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x70,
	0x72, 0x65, 0x76, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x05, 0x52, 0x06, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74,
	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09,
	0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2e, 0x0a,
	0x0f, 0x53, 0x69, 0x67, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca,
	0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49, 0x44, 0x52, 0x03, 0x6b, 0x69, 0x64, 0x22, 0x66, 0x0a,
	0x10, 0x53, 0x69, 0x67, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x1e, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x03, 0x6b, 0x65,
	0x79, 0x12, 0x32, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18,
	0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x65,
	0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x41, 0x0a, 0x10, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65,
	0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49,
	0x44, 0x52, 0x03, 0x6b, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x05, 0x52, 0x03, 0x73, 0x65, 0x71, 0x22, 0x45, 0x0a, 0x11, 0x53, 0x74, 0x61, 0x74,
	0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a,
	0x09, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x12, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65,
	0x6d, 0x65, 0x6e, 0x74, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x22,
	0x5f, 0x0a, 0x16, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74,
	0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a,
	0x03, 0x6b, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05,
	0x0a, 0x03, 0x4b, 0x49, 0x44, 0x52, 0x03, 0x6b, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x6f,
	0x63, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
	0x22, 0x4b, 0x0a, 0x17, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x09, 0x73,
	0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65,
	0x6e, 0x74, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x5d, 0x0a,
	0x16, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x73, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49,
	0x44, 0x52, 0x03, 0x6b, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x22, 0x4b, 0x0a, 0x17,
	0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x74, 0x65,
	0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x09,
	0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x8f, 0x01, 0x0a, 0x09, 0x53, 0x69,
	0x67, 0x6e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x69,
	0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6f,
	0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x75, 0x74, 0x12, 0x16, 0x0a,
	0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73,
	0x69, 0x67, 0x6e, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x65, 0x64,
	0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x65, 0x64, 0x12,
	0x1a, 0x0a, 0x08, 0x64, 0x65, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x08, 0x64, 0x65, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x22, 0x3d, 0x0a, 0x0a, 0x53,
	0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74,
	0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a,
	0x03, 0x6b, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05,
	0x0a, 0x03, 0x4b, 0x49, 0x44, 0x52, 0x03, 0x6b, 0x69, 0x64, 0x22, 0x9a, 0x01, 0x0a, 0x0e, 0x45,
	0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a,
	0x07, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07,
	0x61, 0x72, 0x6d, 0x6f, 0x72, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64,
	0x65, 0x12, 0x2c, 0x0a, 0x11, 0x6e, 0x6f, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x52, 0x65, 0x63,
	0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x6e, 0x6f,
	0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12,
	0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x53, 0x69, 0x67, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x06, 0x6e, 0x6f, 0x53, 0x69, 0x67, 0x6e, 0x22, 0x8f, 0x01, 0x0a, 0x0e, 0x45, 0x6e, 0x63, 0x72,
	0x79, 0x70, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61,
	0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1e,
	0x0a, 0x0a, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03,
	0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x31, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
	0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x39, 0x0a, 0x0f, 0x45, 0x6e, 0x63,
	0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04,
	0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61,
	0x12, 0x12, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x69, 0x6e, 0x66, 0x6f, 0x22, 0x9f, 0x01, 0x0a, 0x10, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74,
	0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6f, 0x75, 0x74,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x75, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x72,
	0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x0a, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73,
	0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e,
	0x64, 0x65, 0x72, 0x12, 0x31, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x45,
	0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x51, 0x0a, 0x11, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70,
	0x74, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6f,
	0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x75, 0x74, 0x12, 0x14, 0x0a,
	0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x62, 0x79,
	0x74, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x0b, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x22, 0x8d, 0x01, 0x0a, 0x0c, 0x45, 0x6e,
	0x63, 0x72, 0x79, 0x70, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61,
	0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1e,
	0x0a, 0x0a, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03,
	0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x31, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
	0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x23, 0x0a, 0x0d, 0x45, 0x6e, 0x63,
	0x72, 0x79, 0x70, 0x74, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61,
	0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x24,
	0x0a, 0x0e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04,
	0x64, 0x61, 0x74, 0x61, 0x22, 0x75, 0x0a, 0x0f, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x24, 0x0a, 0x06, 0x73,
	0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x73, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65,
	0x72, 0x12, 0x28, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70,
	0x74, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0x34, 0x0a, 0x10, 0x44,
	0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12,
	0x0e, 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x6e, 0x12,
	0x10, 0x0a, 0x03, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x75,
	0x74, 0x22, 0xa1, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x46, 0x69, 0x6c,
	0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x24, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65,
	0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x10, 0x0a,
	0x03, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x75, 0x74, 0x12,
	0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
	0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x0b,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x28, 0x0a, 0x04, 0x6d,
	0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x52,
	0x04, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0x22, 0x0a, 0x0c, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74,
	0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x73, 0x0a, 0x0d, 0x44, 0x65, 0x63,
	0x72, 0x79, 0x70, 0x74, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61,
	0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x24,
	0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x73, 0x65,
	0x6e, 0x64, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x45, 0x6e, 0x63,
	0x72, 0x79, 0x70, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0x16,
	0x0a, 0x14, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xc9, 0x01, 0x0a, 0x15, 0x52, 0x75, 0x6e, 0x74, 0x69,
	0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x70,
	0x70, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x70, 0x70,
	0x4e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x78, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x65, 0x78, 0x65, 0x12, 0x33, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
	0x0a, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x73,
	0x79, 0x6e, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x73, 0x79, 0x6e, 0x63, 0x12,
	0x21, 0x0a, 0x05, 0x66, 0x69, 0x64, 0x6f, 0x32, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x42, 0x0b,
	0xca, 0xb5, 0x03, 0x07, 0x0a, 0x05, 0x46, 0x49, 0x44, 0x4f, 0x32, 0x52, 0x05, 0x66, 0x69, 0x64,
	0x6f, 0x32, 0x22, 0x69, 0x0a, 0x10, 0x41, 0x75, 0x74, 0x68, 0x53, 0x65, 0x74, 0x75, 0x70, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x25,
	0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x54, 0x79, 0x70, 0x65, 0x52,
	0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x22, 0x13, 0x0a,
	0x11, 0x41, 0x75, 0x74, 0x68, 0x53, 0x65, 0x74, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x2a, 0x0a, 0x10, 0x41, 0x75, 0x74, 0x68, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x22, 0x13,
	0x0a, 0x11, 0x41, 0x75, 0x74, 0x68, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x6a, 0x0a, 0x11, 0x41, 0x75, 0x74, 0x68, 0x55, 0x6e, 0x6c, 0x6f, 0x63,
	0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x72,
	0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74,
	0x12, 0x25, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x54, 0x79, 0x70,
	0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6c, 0x69, 0x65, 0x6e,
	0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x22,
	0x32, 0x0a, 0x12, 0x41, 0x75, 0x74, 0x68, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x54, 0x6f, 0x6b,
	0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x54, 0x6f,
	0x6b, 0x65, 0x6e, 0x22, 0x89, 0x01, 0x0a, 0x14, 0x41, 0x75, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x76,
	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06,
	0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65,
	0x63, 0x72, 0x65, 0x74, 0x12, 0x25, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x11, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74,
	0x68, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64,
	0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x76,
	0x69, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x22,
	0x4d, 0x0a, 0x15, 0x41, 0x75, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x76,
	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x73, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73,
	0x69, 0x6f, 0x6e, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x32,
	0x0a, 0x16, 0x41, 0x75, 0x74, 0x68, 0x44, 0x65, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f,
	0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xca, 0xb5, 0x03, 0x04, 0x0a, 0x02, 0x49, 0x44, 0x52, 0x02,
	0x69, 0x64, 0x22, 0x19, 0x0a, 0x17, 0x41, 0x75, 0x74, 0x68, 0x44, 0x65, 0x70, 0x72, 0x6f, 0x76,
	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3f, 0x0a,
	0x19, 0x41, 0x75, 0x74, 0x68, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x43, 0x68, 0x61,
	0x6e, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6f, 0x6c,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x6c, 0x64, 0x12, 0x10, 0x0a, 0x03,
	0x6e, 0x65, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6e, 0x65, 0x77, 0x22, 0x1c,
	0x0a, 0x1a, 0x41, 0x75, 0x74, 0x68, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x43, 0x68,
	0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xaa, 0x01, 0x0a,
	0x0d, 0x41, 0x75, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x18,
	0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xca, 0xb5, 0x03, 0x04,
	0x0a, 0x02, 0x49, 0x44, 0x52, 0x02, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x2e, 0x41, 0x75, 0x74, 0x68, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12,
	0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x24, 0x0a,
	0x06, 0x61, 0x61, 0x67, 0x75, 0x69, 0x64, 0x18, 0x64, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0c, 0xca,
	0xb5, 0x03, 0x08, 0x0a, 0x06, 0x41, 0x41, 0x47, 0x55, 0x49, 0x44, 0x52, 0x06, 0x61, 0x61, 0x67,
	0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x50, 0x69, 0x6e, 0x18, 0x65, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x05, 0x6e, 0x6f, 0x50, 0x69, 0x6e, 0x22, 0x17, 0x0a, 0x15, 0x41, 0x75, 0x74,
	0x68, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x22, 0x50, 0x0a, 0x16, 0x41, 0x75, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73,
	0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x0a,
	0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x16, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x50,
	0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73,
	0x69, 0x6f, 0x6e, 0x73, 0x22, 0x11, 0x0a, 0x0f, 0x41, 0x75, 0x74, 0x68, 0x4c, 0x6f, 0x63, 0x6b,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x12, 0x0a, 0x10, 0x41, 0x75, 0x74, 0x68, 0x4c,
	0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x0a, 0x10, 0x41,
	0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x18, 0x0a, 0x07, 0x61, 0x70, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x07, 0x61, 0x70, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x13, 0x0a, 0x11, 0x41, 0x75, 0x74,
	0x68, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x52,
	0x0a, 0x12, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x70, 0x65, 0x72, 0x4b, 0x65, 0x79,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x70, 0x65, 0x72, 0x4b, 0x65, 0x79,
	0x12, 0x20, 0x0a, 0x0b, 0x6e, 0x65, 0x77, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f,
	0x72, 0x64, 0x22, 0x33, 0x0a, 0x13, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65,
	0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x74,
	0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x75,
	0x74, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x28, 0x0a, 0x12, 0x4b, 0x65, 0x79, 0x47, 0x65,
	0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a,
	0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70,
	0x65, 0x22, 0x32, 0x0a, 0x13, 0x4b, 0x65, 0x79, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49, 0x44,
	0x52, 0x03, 0x6b, 0x69, 0x64, 0x22, 0x4b, 0x0a, 0x12, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x03, 0x6b,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03,
	0x4b, 0x49, 0x44, 0x52, 0x03, 0x6b, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x22, 0x2f, 0x0a, 0x13, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x22, 0x5c, 0x0a, 0x0f, 0x55, 0x73, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49, 0x44, 0x52, 0x03,
	0x6b, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x12, 0x0a,
	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x22, 0x40, 0x0a, 0x10, 0x55, 0x73, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
	0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x22, 0x8e, 0x01, 0x0a, 0x0e, 0x55, 0x73, 0x65, 0x72, 0x41, 0x64, 0x64, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49, 0x44, 0x52, 0x03,
	0x6b, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x12, 0x0a,
	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x12, 0x1b, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09,
	0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x55, 0x52, 0x4c, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x14,
	0x0a, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x6c,
	0x6f, 0x63, 0x61, 0x6c, 0x22, 0x66, 0x0a, 0x0f, 0x55, 0x73, 0x65, 0x72, 0x41, 0x64, 0x64, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x30, 0x0a, 0x09, 0x73, 0x74,
	0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e,
	0x74, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xac, 0x01, 0x0a,
	0x10, 0x4b, 0x65, 0x79, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09,
	0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49, 0x44, 0x52, 0x03, 0x6b, 0x69, 0x64, 0x12, 0x1a,
	0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x27, 0x0a, 0x04, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74,
	0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x12, 0x1e, 0x0a, 0x0a, 0x6e,
	0x6f, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x0a, 0x6e, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x2b, 0x0a, 0x11, 0x4b,
	0x65, 0x79, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x56, 0x0a, 0x10, 0x4b, 0x65, 0x79, 0x49,
	0x6d, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02,
	0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08,
	0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x22, 0x30, 0x0a, 0x11, 0x4b, 0x65, 0x79, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49, 0x44, 0x52, 0x03, 0x6b,
	0x69, 0x64, 0x22, 0x2f, 0x0a, 0x10, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49, 0x44, 0x52, 0x03,
	0x6b, 0x69, 0x64, 0x22, 0x13, 0x0a, 0x11, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe0, 0x01, 0x0a, 0x03, 0x4b, 0x65, 0x79,
	0x12, 0x18, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xca, 0xb5,
	0x03, 0x04, 0x0a, 0x02, 0x49, 0x44, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1c,
	0x0a, 0x09, 0x69, 0x73, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x09, 0x69, 0x73, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x04,
	0x75, 0x73, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12,
	0x14, 0x0a, 0x05, 0x73, 0x61, 0x76, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05,
	0x73, 0x61, 0x76, 0x65, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x69, 0x67, 0x63, 0x68, 0x61, 0x69,
	0x6e, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x28, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73,
	0x69, 0x67, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x2c, 0x0a,
	0x11, 0x73, 0x69, 0x67, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
	0x41, 0x74, 0x18, 0x29, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x73, 0x69, 0x67, 0x63, 0x68, 0x61,
	0x69, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x4e, 0x0a, 0x0a, 0x4b,
	0x65, 0x79, 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, 0x16, 0x0a, 0x06, 0x73,
	0x65, 0x61, 0x72, 0x63, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x65, 0x61,
	0x72, 0x63, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x2d, 0x0a, 0x0b, 0x4b,
	0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x03, 0x6b, 0x65,
	0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x22, 0x95, 0x01, 0x0a, 0x0b, 0x4b,
	0x65, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75,
	0x65, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79,
	0x12, 0x14, 0x0a, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x6f, 0x72, 0x74, 0x46, 0x69,
	0x65, 0x6c, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x6f, 0x72, 0x74, 0x46,
	0x69, 0x65, 0x6c, 0x64, 0x12, 0x3c, 0x0a, 0x0d, 0x73, 0x6f, 0x72, 0x74, 0x44, 0x69, 0x72, 0x65,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x6f, 0x72, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x73, 0x6f, 0x72, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x22, 0x8c, 0x01, 0x0a, 0x0c, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x0c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52,
	0x04, 0x6b, 0x65, 0x79, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x6f, 0x72, 0x74, 0x46, 0x69, 0x65,
	0x6c, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x6f, 0x72, 0x74, 0x46, 0x69,
	0x65, 0x6c, 0x64, 0x12, 0x3c, 0x0a, 0x0d, 0x73, 0x6f, 0x72, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x6f, 0x72, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x52, 0x0d, 0x73, 0x6f, 0x72, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x22, 0x86, 0x02, 0x0a, 0x06, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x02,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xca, 0xb5, 0x03, 0x04, 0x0a, 0x02,
	0x49, 0x44, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x04, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74,
	0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12,
	0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1b, 0x0a, 0x03, 0x75,
	0x72, 0x6c, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03,
	0x55, 0x52, 0x4c, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x74, 0x65,
	0x73, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x12, 0x1c,
	0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x64, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09,
	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x65, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x29, 0x0a, 0x0d, 0x53, 0x65,
	0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x02, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xca, 0xb5, 0x03, 0x04, 0x0a, 0x02, 0x49,
	0x44, 0x52, 0x02, 0x69, 0x64, 0x22, 0x39, 0x0a, 0x0e, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65,
	0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74,
	0x22, 0x3c, 0x0a, 0x11, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x53, 0x61, 0x76, 0x65, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x3d,
	0x0a, 0x12, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x53, 0x61, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53,
	0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x2f, 0x0a,
	0x13, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x42, 0x08, 0xca, 0xb5, 0x03, 0x04, 0x0a, 0x02, 0x49, 0x44, 0x52, 0x02, 0x69, 0x64, 0x22, 0x16,
	0x0a, 0x14, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x82, 0x01, 0x0a, 0x0e, 0x53, 0x65, 0x63, 0x72, 0x65,
	0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65,
	0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12,
	0x1c, 0x0a, 0x09, 0x73, 0x6f, 0x72, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x0a, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x09, 0x73, 0x6f, 0x72, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x3c, 0x0a,
	0x0d, 0x73, 0x6f, 0x72, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53,
	0x6f, 0x72, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x73, 0x6f,
	0x72, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x98, 0x01, 0x0a, 0x0f,
	0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x29, 0x0a, 0x07, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x0f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x65, 0x63, 0x72, 0x65,
	0x74, 0x52, 0x07, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x6f,
	0x72, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73,
	0x6f, 0x72, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x3c, 0x0a, 0x0d, 0x73, 0x6f, 0x72, 0x74,
	0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x16, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x6f, 0x72, 0x74, 0x44, 0x69,
	0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x73, 0x6f, 0x72, 0x74, 0x44, 0x69, 0x72,
	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x94, 0x01, 0x0a, 0x0b, 0x52, 0x61, 0x6e, 0x64, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x75, 0x6d, 0x42, 0x79, 0x74,
	0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6e, 0x75, 0x6d, 0x42, 0x79, 0x74,
	0x65, 0x73, 0x12, 0x2d, 0x0a, 0x08, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x45,
	0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e,
	0x67, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x6f, 0x50, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x0a,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6e, 0x6f, 0x50, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x12,
	0x1c, 0x0a, 0x09, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x63, 0x61, 0x73, 0x65, 0x18, 0x0b, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x09, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x63, 0x61, 0x73, 0x65, 0x22, 0x22, 0x0a,
	0x0c, 0x52, 0x61, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a,
	0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74,
	0x61, 0x22, 0x2d, 0x0a, 0x13, 0x52, 0x61, 0x6e, 0x64, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72,
	0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, 0x6e, 0x67,
	0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68,
	0x22, 0x32, 0x0a, 0x14, 0x52, 0x61, 0x6e, 0x64, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73,
	0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73,
	0x77, 0x6f, 0x72, 0x64, 0x22, 0x1f, 0x0a, 0x0b, 0x50, 0x75, 0x6c, 0x6c, 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, 0x22, 0x2e, 0x0a, 0x0c, 0x50, 0x75, 0x6c, 0x6c, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x04, 0x6b, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x09, 0x42, 0x0a, 0xca, 0xb5, 0x03, 0x06, 0x0a, 0x04, 0x4b, 0x49, 0x44, 0x73, 0x52,
	0x04, 0x6b, 0x69, 0x64, 0x73, 0x22, 0x41, 0x0a, 0x0b, 0x50, 0x75, 0x73, 0x68, 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, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65,
	0x43, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x72, 0x65, 0x6d,
	0x6f, 0x74, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x22, 0x4b, 0x0a, 0x0c, 0x50, 0x75, 0x73, 0x68,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49, 0x44,
	0x52, 0x03, 0x6b, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x04, 0x75, 0x72, 0x6c, 0x73, 0x18, 0x02, 0x20,
	0x03, 0x28, 0x09, 0x42, 0x0a, 0xca, 0xb5, 0x03, 0x06, 0x0a, 0x04, 0x55, 0x52, 0x4c, 0x73, 0x52,
	0x04, 0x75, 0x72, 0x6c, 0x73, 0x22, 0x20, 0x0a, 0x0a, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x22, 0x46, 0x0a, 0x12, 0x43, 0x6f, 0x6c, 0x6c, 0x65,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a,
	0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70,
	0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x02, 0x64, 0x62, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x09, 0x42, 0x08, 0xca, 0xb5, 0x03, 0x04, 0x0a, 0x02, 0x44, 0x42, 0x52, 0x02, 0x64, 0x62, 0x22,
	0x4c, 0x0a, 0x13, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x0b, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x73, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x52, 0x0b, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x70, 0x0a,
	0x08, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74,
	0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x14, 0x0a,
	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61,
	0x6c, 0x75, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74,
	0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41,
	0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x0b,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22,
	0x44, 0x0a, 0x10, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x18, 0x0a, 0x02, 0x64,
	0x62, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xca, 0xb5, 0x03, 0x04, 0x0a, 0x02, 0x44,
	0x42, 0x52, 0x02, 0x64, 0x62, 0x22, 0x44, 0x0a, 0x11, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
	0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x09, 0x64, 0x6f,
	0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
	0x52, 0x09, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x45, 0x0a, 0x15, 0x44,
	0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x18, 0x0a, 0x02, 0x64, 0x62, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xca, 0xb5, 0x03, 0x04, 0x0a, 0x02, 0x44, 0x42, 0x52, 0x02,
	0x64, 0x62, 0x22, 0x18, 0x0a, 0x16, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65,
	0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb1, 0x02, 0x0a,
	0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x42, 0x08, 0xca, 0xb5, 0x03, 0x04, 0x0a, 0x02, 0x49, 0x44, 0x52, 0x02, 0x69, 0x64, 0x12,
	0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49, 0x44, 0x52, 0x03, 0x6b, 0x69, 0x64,
	0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x73,
	0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x03,
	0x75, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a,
	0x03, 0x55, 0x52, 0x4c, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x2b, 0x0a, 0x06, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69,
	0x65, 0x64, 0x41, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x65, 0x72, 0x69,
	0x66, 0x69, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
	0x61, 0x6d, 0x70, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73,
	0x74, 0x61, 0x6d, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x65, 0x64, 0x18,
	0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x65, 0x64, 0x12, 0x10,
	0x0a, 0x03, 0x65, 0x72, 0x72, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x65, 0x72, 0x72,
	0x22, 0x40, 0x0a, 0x0b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5,
	0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49, 0x44, 0x52, 0x03, 0x6b, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05,
	0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x6c, 0x6f, 0x63,
	0x61, 0x6c, 0x22, 0x31, 0x0a, 0x0c, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x21, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0d, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52,
	0x04, 0x75, 0x73, 0x65, 0x72, 0x22, 0x55, 0x0a, 0x11, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x61,
	0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75,
	0x65, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79,
	0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52,
	0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x22, 0x39, 0x0a, 0x12,
	0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x0d, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72,
	0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x22, 0x25, 0x0a, 0x0d, 0x53, 0x65, 0x61, 0x72, 0x63,
	0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72,
	0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x22, 0x32,
	0x0a, 0x0e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x20, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x04, 0x6b, 0x65,
	0x79, 0x73, 0x22, 0x12, 0x0a, 0x10, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x53, 0x79, 0x6e, 0x63, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x13, 0x0a, 0x11, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x53,
	0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x14, 0x0a, 0x12, 0x56,
	0x61, 0x75, 0x6c, 0x74, 0x55, 0x6e, 0x73, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x22, 0x15, 0x0a, 0x13, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x55, 0x6e, 0x73, 0x79, 0x6e, 0x63,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x12, 0x0a, 0x10, 0x56, 0x61, 0x75, 0x6c,
	0x74, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x2b, 0x0a, 0x11,
	0x56, 0x61, 0x75, 0x6c, 0x74, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x22, 0x14, 0x0a, 0x12, 0x56, 0x61, 0x75,
	0x6c, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22,
	0x4e, 0x0a, 0x13, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x03, 0x6b, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x4b, 0x49, 0x44, 0x52, 0x03,
	0x6b, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x79, 0x6e, 0x63, 0x65, 0x64, 0x41, 0x74, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x79, 0x6e, 0x63, 0x65, 0x64, 0x41, 0x74, 0x22,
	0x14, 0x0a, 0x12, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x15, 0x0a, 0x13, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xab, 0x01, 0x0a,
	0x07, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xca, 0xb5, 0x03, 0x04, 0x0a, 0x02, 0x49, 0x44, 0x52, 0x02,
	0x69, 0x64, 0x12, 0x24, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79,
	0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74,
	0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x2e, 0x0a, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09,
	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x5d, 0x0a, 0x15, 0x4d, 0x65,
	0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x0b, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x22, 0x44, 0x0a, 0x16, 0x4d, 0x65, 0x73,
	0x73, 0x61, 0x67, 0x65, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4d,
	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22,
	0x76, 0x0a, 0x14, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65,
	0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12,
	0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x18, 0x0a, 0x02, 0x69, 0x64, 0x18,
	0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xca, 0xb5, 0x03, 0x04, 0x0a, 0x02, 0x49, 0x44, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x22, 0x43, 0x0a, 0x15, 0x4d, 0x65, 0x73, 0x73, 0x61,
	0x67, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x2a, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x10, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73,
	0x61, 0x67, 0x65, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x43, 0x0a, 0x0f,
	0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x22, 0x40, 0x0a, 0x10, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61,
	0x67, 0x65, 0x73, 0x22, 0x36, 0x0a, 0x0c, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x22, 0x51, 0x0a, 0x0b, 0x52,
	0x65, 0x6c, 0x61, 0x79, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65,
	0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xa3,
	0x01, 0x0a, 0x07, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x18, 0x0a, 0x02, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xca, 0xb5, 0x03, 0x04, 0x0a, 0x02, 0x49, 0x44,
	0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6e, 0x69, 0x70,
	0x70, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6e, 0x69, 0x70, 0x70,
	0x65, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74,
	0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 0x49, 0x6e,
	0x64, 0x65, 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x72, 0x65, 0x61, 0x64, 0x49,
	0x6e, 0x64, 0x65, 0x78, 0x22, 0x25, 0x0a, 0x0f, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x22, 0x40, 0x0a, 0x10, 0x43,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x2c, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x10, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0x3e, 0x0a,
	0x14, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65,
	0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x22, 0x43, 0x0a,
	0x15, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x22, 0x2f, 0x0a, 0x13, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x65, 0x61,
	0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x22, 0x16, 0x0a, 0x14, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x65,
	0x61, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x44, 0x0a, 0x12, 0x43,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x69,
	0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65,
	0x78, 0x22, 0x15, 0x0a, 0x13, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x61, 0x64,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x68, 0x0a, 0x14, 0x43, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65,
	0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a,
	0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65,
	0x6e, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64,
	0x65, 0x72, 0x22, 0x43, 0x0a, 0x15, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x76,
	0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x6d,
	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x07,
	0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x3e, 0x0a, 0x06, 0x46, 0x6f, 0x6c, 0x6c, 0x6f,
	0x77, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12,
	0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x22, 0x45, 0x0a, 0x0d, 0x46, 0x6f, 0x6c, 0x6c, 0x6f,
	0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x69,
	0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x63,
	0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x22, 0x39,
	0x0a, 0x0e, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x27, 0x0a, 0x06, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x46, 0x6f, 0x6c, 0x6c, 0x6f,
	0x77, 0x52, 0x06, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x22, 0x46, 0x0a, 0x0e, 0x46, 0x6f, 0x6c,
	0x6c, 0x6f, 0x77, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x72,
	0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x22, 0x3c, 0x0a, 0x0f, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x07, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x18,
	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x52, 0x07, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x22,
	0x62, 0x0a, 0x13, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x69, 0x67, 0x6e, 0x55, 0x52, 0x4c, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x12, 0x16,
	0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x1b, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x55, 0x52, 0x4c, 0x52, 0x03,
	0x75, 0x72, 0x6c, 0x22, 0x67, 0x0a, 0x14, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x69, 0x67, 0x6e,
	0x55, 0x52, 0x4c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x61,
	0x75, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x75, 0x74, 0x68, 0x12,
	0x1b, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xca, 0xb5,
	0x03, 0x05, 0x0a, 0x03, 0x55, 0x52, 0x4c, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x1e, 0x0a, 0x04,
	0x63, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xca, 0xb5, 0x03, 0x06,
	0x0a, 0x04, 0x43, 0x55, 0x52, 0x4c, 0x52, 0x04, 0x63, 0x75, 0x72, 0x6c, 0x22, 0x41, 0x0a, 0x11,
	0x41, 0x64, 0x6d, 0x69, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x68, 0x65,
	0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x22,
	0x14, 0x0a, 0x12, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x97, 0x03, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x12, 0x25, 0x0a, 0x03, 0x61, 0x70, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x41,
	0x70, 0x70, 0x52, 0x03, 0x61, 0x70, 0x70, 0x12, 0x31, 0x0a, 0x07, 0x65, 0x6e, 0x63, 0x72, 0x79,
	0x70, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70,
	0x74, 0x52, 0x07, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x12, 0x28, 0x0a, 0x04, 0x73, 0x69,
	0x67, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x04,
	0x73, 0x69, 0x67, 0x6e, 0x1a, 0x5f, 0x0a, 0x03, 0x41, 0x70, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x6c,
	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c,
	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x69, 0x73, 0x74, 0x6f,
	0x72, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72,
	0x79, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x61, 0x76, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x69, 0x7a, 0x65,
	0x64, 0x18, 0x64, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x6e, 0x61, 0x76, 0x4d, 0x69, 0x6e, 0x69,
	0x6d, 0x69, 0x7a, 0x65, 0x64, 0x1a, 0x87, 0x01, 0x0a, 0x07, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70,
	0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18,
	0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74,
	0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x11, 0x6e, 0x6f, 0x53,
	0x65, 0x6e, 0x64, 0x65, 0x72, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x6e, 0x6f, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x52, 0x65,
	0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x53, 0x69, 0x67,
	0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6e, 0x6f, 0x53, 0x69, 0x67, 0x6e, 0x1a,
	0x1e, 0x0a, 0x04, 0x53, 0x69, 0x67, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65,
	0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x22,
	0x26, 0x0a, 0x10, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x3c, 0x0a, 0x11, 0x43, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x06,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x4f, 0x0a, 0x10, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53,
	0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a,
	0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x13, 0x0a, 0x11, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x53, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8b, 0x01, 0x0a, 0x0d,
	0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x16, 0x0a,
	0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73,
	0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65,
	0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69,
	0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x02, 0x69,
	0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xca, 0xb5, 0x03, 0x04, 0x0a, 0x02, 0x49,
	0x44, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x0b, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x22, 0xe7, 0x01, 0x0a, 0x0f, 0x57, 0x6f,
	0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x18, 0x0a,
	0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xca, 0xb5, 0x03, 0x04, 0x0a,
	0x02, 0x49, 0x44, 0x52, 0x02, 0x69, 0x64, 0x12, 0x24, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65,
	0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x2a, 0x0a,
	0x09, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x09,
	0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x06, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x2e, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73,
	0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
	0x41, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x41, 0x74, 0x22, 0x75, 0x0a, 0x0e, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x4f,
	0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x32, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x2e, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
	0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2f, 0x0a, 0x06, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x2e, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2a, 0xa9, 0x01, 0x0a, 0x0b, 0x45,
	0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x29, 0x0a, 0x0f, 0x44, 0x45,
	0x46, 0x41, 0x55, 0x4c, 0x54, 0x5f, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x10, 0x00, 0x1a,
	0x14, 0xca, 0xb5, 0x03, 0x10, 0x0a, 0x0e, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x45, 0x6e,
	0x63, 0x72, 0x79, 0x70, 0x74, 0x12, 0x2b, 0x0a, 0x10, 0x53, 0x41, 0x4c, 0x54, 0x50, 0x41, 0x43,
	0x4b, 0x5f, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x10, 0x01, 0x1a, 0x15, 0xca, 0xb5, 0x03,
	0x11, 0x0a, 0x0f, 0x53, 0x61, 0x6c, 0x74, 0x70, 0x61, 0x63, 0x6b, 0x45, 0x6e, 0x63, 0x72, 0x79,
	0x70, 0x74, 0x12, 0x2f, 0x0a, 0x12, 0x53, 0x41, 0x4c, 0x54, 0x50, 0x41, 0x43, 0x4b, 0x5f, 0x53,
	0x49, 0x47, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x10, 0x03, 0x1a, 0x17, 0xca, 0xb5, 0x03, 0x13,
	0x0a, 0x11, 0x53, 0x61, 0x6c, 0x74, 0x70, 0x61, 0x63, 0x6b, 0x53, 0x69, 0x67, 0x6e, 0x63, 0x72,
	0x79, 0x70, 0x74, 0x1a, 0x11, 0xca, 0xb5, 0x03, 0x0d, 0x0a, 0x0b, 0x45, 0x6e, 0x63, 0x72, 0x79,
	0x70, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x2a, 0xbb, 0x01, 0x0a, 0x0a, 0x41, 0x75, 0x74, 0x68, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x0c, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x55, 0x4e,
	0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x1a, 0x11, 0xca, 0xb5, 0x03, 0x0d, 0x0a, 0x0b, 0x41,
	0x75, 0x74, 0x68, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x12, 0x2c, 0x0a, 0x11, 0x41, 0x55,
	0x54, 0x48, 0x5f, 0x53, 0x45, 0x54, 0x55, 0x50, 0x5f, 0x4e, 0x45, 0x45, 0x44, 0x45, 0x44, 0x10,
	0x01, 0x1a, 0x15, 0xca, 0xb5, 0x03, 0x11, 0x0a, 0x0f, 0x41, 0x75, 0x74, 0x68, 0x53, 0x65, 0x74,
	0x75, 0x70, 0x4e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0d, 0x41, 0x55, 0x54, 0x48,
	0x5f, 0x55, 0x4e, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x02, 0x1a, 0x12, 0xca, 0xb5, 0x03,
	0x0e, 0x0a, 0x0c, 0x41, 0x75, 0x74, 0x68, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x12,
	0x21, 0x0a, 0x0b, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x03,
	0x1a, 0x10, 0xca, 0xb5, 0x03, 0x0c, 0x0a, 0x0a, 0x41, 0x75, 0x74, 0x68, 0x4c, 0x6f, 0x63, 0x6b,
	0x65, 0x64, 0x1a, 0x10, 0xca, 0xb5, 0x03, 0x0c, 0x0a, 0x0a, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x2a, 0xc5, 0x01, 0x0a, 0x08, 0x41, 0x75, 0x74, 0x68, 0x54, 0x79, 0x70,
	0x65, 0x12, 0x23, 0x0a, 0x0c, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x41, 0x55, 0x54,
	0x48, 0x10, 0x00, 0x1a, 0x11, 0xca, 0xb5, 0x03, 0x0d, 0x0a, 0x0b, 0x55, 0x6e, 0x6b, 0x6e, 0x6f,
	0x77, 0x6e, 0x41, 0x75, 0x74, 0x68, 0x12, 0x25, 0x0a, 0x0d, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f,
	0x52, 0x44, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x10, 0x0a, 0x1a, 0x12, 0xca, 0xb5, 0x03, 0x0e, 0x0a,
	0x0c, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x41, 0x75, 0x74, 0x68, 0x12, 0x26, 0x0a,
	0x0e, 0x50, 0x41, 0x50, 0x45, 0x52, 0x5f, 0x4b, 0x45, 0x59, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x10,
	0x0b, 0x1a, 0x12, 0xca, 0xb5, 0x03, 0x0e, 0x0a, 0x0c, 0x50, 0x61, 0x70, 0x65, 0x72, 0x4b, 0x65,
	0x79, 0x41, 0x75, 0x74, 0x68, 0x12, 0x35, 0x0a, 0x16, 0x46, 0x49, 0x44, 0x4f, 0x32, 0x5f, 0x48,
	0x4d, 0x41, 0x43, 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x10,
	0x14, 0x1a, 0x19, 0xca, 0xb5, 0x03, 0x15, 0x0a, 0x13, 0x46, 0x49, 0x44, 0x4f, 0x32, 0x48, 0x4d,
	0x41, 0x43, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x41, 0x75, 0x74, 0x68, 0x1a, 0x0e, 0xca, 0xb5,
	0x03, 0x0a, 0x0a, 0x08, 0x41, 0x75, 0x74, 0x68, 0x54, 0x79, 0x70, 0x65, 0x2a, 0x72, 0x0a, 0x0a,
	0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x13, 0x44, 0x45,
	0x46, 0x41, 0x55, 0x4c, 0x54, 0x5f, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x54, 0x59, 0x50,
	0x45, 0x10, 0x00, 0x1a, 0x13, 0xca, 0xb5, 0x03, 0x0f, 0x0a, 0x0d, 0x44, 0x65, 0x66, 0x61, 0x75,
	0x6c, 0x74, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x24, 0x0a, 0x0f, 0x53, 0x53, 0x48, 0x5f,
	0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x01, 0x1a, 0x0f, 0xca,
	0xb5, 0x03, 0x0b, 0x0a, 0x09, 0x53, 0x53, 0x48, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x1a, 0x10,
	0xca, 0xb5, 0x03, 0x0c, 0x0a, 0x0a, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x54, 0x79, 0x70, 0x65,
	0x2a, 0x56, 0x0a, 0x0d, 0x53, 0x6f, 0x72, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x16, 0x0a, 0x03, 0x41, 0x53, 0x43, 0x10, 0x00, 0x1a, 0x0d, 0xca, 0xb5, 0x03, 0x09,
	0x0a, 0x07, 0x53, 0x6f, 0x72, 0x74, 0x41, 0x73, 0x63, 0x12, 0x18, 0x0a, 0x04, 0x44, 0x45, 0x53,
	0x43, 0x10, 0x01, 0x1a, 0x0e, 0xca, 0xb5, 0x03, 0x0a, 0x0a, 0x08, 0x53, 0x6f, 0x72, 0x74, 0x44,
	0x65, 0x73, 0x63, 0x1a, 0x13, 0xca, 0xb5, 0x03, 0x0f, 0x0a, 0x0d, 0x53, 0x6f, 0x72, 0x74, 0x44,
	0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2a, 0xe6, 0x01, 0x0a, 0x0a, 0x53, 0x65, 0x63,
	0x72, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x13, 0x55, 0x4e, 0x4b, 0x4e, 0x4f,
	0x57, 0x4e, 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x00,
	0x1a, 0x13, 0xca, 0xb5, 0x03, 0x0f, 0x0a, 0x0d, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x53,
	0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x29, 0x0a, 0x0f, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52,
	0x44, 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, 0x10, 0x0a, 0x1a, 0x14, 0xca, 0xb5, 0x03, 0x10,
	0x0a, 0x0e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74,
	0x12, 0x27, 0x0a, 0x0e, 0x43, 0x4f, 0x4e, 0x54, 0x41, 0x43, 0x54, 0x5f, 0x53, 0x45, 0x43, 0x52,
	0x45, 0x54, 0x10, 0x0b, 0x1a, 0x13, 0xca, 0xb5, 0x03, 0x0f, 0x0a, 0x0d, 0x43, 0x6f, 0x6e, 0x74,
	0x61, 0x63, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x21, 0x0a, 0x0b, 0x43, 0x41, 0x52,
	0x44, 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, 0x10, 0x0c, 0x1a, 0x10, 0xca, 0xb5, 0x03, 0x0c,
	0x0a, 0x0a, 0x43, 0x61, 0x72, 0x64, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x21, 0x0a, 0x0b,
	0x4e, 0x4f, 0x54, 0x45, 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, 0x10, 0x0d, 0x1a, 0x10, 0xca,
	0xb5, 0x03, 0x0c, 0x0a, 0x0a, 0x4e, 0x6f, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x1a,
	0x10, 0xca, 0xb5, 0x03, 0x0c, 0x0a, 0x0a, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x54, 0x79, 0x70,
	0x65, 0x2a, 0xe6, 0x01, 0x0a, 0x08, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x12,
	0x0a, 0x03, 0x48, 0x45, 0x58, 0x10, 0x00, 0x1a, 0x09, 0xca, 0xb5, 0x03, 0x05, 0x0a, 0x03, 0x48,
	0x65, 0x78, 0x12, 0x18, 0x0a, 0x06, 0x42, 0x41, 0x53, 0x45, 0x36, 0x32, 0x10, 0x01, 0x1a, 0x0c,
	0xca, 0xb5, 0x03, 0x08, 0x0a, 0x06, 0x42, 0x61, 0x73, 0x65, 0x36, 0x32, 0x12, 0x18, 0x0a, 0x06,
	0x42, 0x41, 0x53, 0x45, 0x35, 0x38, 0x10, 0x02, 0x1a, 0x0c, 0xca, 0xb5, 0x03, 0x08, 0x0a, 0x06,
	0x42, 0x61, 0x73, 0x65, 0x35, 0x38, 0x12, 0x18, 0x0a, 0x06, 0x42, 0x41, 0x53, 0x45, 0x33, 0x32,
	0x10, 0x03, 0x1a, 0x0c, 0xca, 0xb5, 0x03, 0x08, 0x0a, 0x06, 0x42, 0x61, 0x73, 0x65, 0x33, 0x32,
	0x12, 0x18, 0x0a, 0x06, 0x42, 0x41, 0x53, 0x45, 0x31, 0x36, 0x10, 0x04, 0x1a, 0x0c, 0xca, 0xb5,
	0x03, 0x08, 0x0a, 0x06, 0x42, 0x61, 0x73, 0x65, 0x31, 0x36, 0x12, 0x18, 0x0a, 0x06, 0x42, 0x41,
	0x53, 0x45, 0x36, 0x34, 0x10, 0x05, 0x1a, 0x0c, 0xca, 0xb5, 0x03, 0x08, 0x0a, 0x06, 0x42, 0x61,
	0x73, 0x65, 0x36, 0x34, 0x12, 0x1c, 0x0a, 0x08, 0x53, 0x41, 0x4c, 0x54, 0x50, 0x41, 0x43, 0x4b,
	0x10, 0x06, 0x1a, 0x0e, 0xca, 0xb5, 0x03, 0x0a, 0x0a, 0x08, 0x53, 0x61, 0x6c, 0x74, 0x70, 0x61,
	0x63, 0x6b, 0x12, 0x16, 0x0a, 0x05, 0x42, 0x49, 0x50, 0x33, 0x39, 0x10, 0x07, 0x1a, 0x0b, 0xca,
	0xb5, 0x03, 0x07, 0x0a, 0x05, 0x42, 0x49, 0x50, 0x33, 0x39, 0x1a, 0x0e, 0xca, 0xb5, 0x03, 0x0a,
	0x0a, 0x08, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x2a, 0xff, 0x02, 0x0a, 0x0a, 0x55,
	0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x55, 0x53, 0x45,
	0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x1a, 0x17, 0xca, 0xb5, 0x03,
	0x13, 0x0a, 0x11, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x6e, 0x6b,
	0x6e, 0x6f, 0x77, 0x6e, 0x12, 0x1f, 0x0a, 0x07, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x4f, 0x4b, 0x10,
	0x01, 0x1a, 0x12, 0xca, 0xb5, 0x03, 0x0e, 0x0a, 0x0c, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x4f, 0x4b, 0x12, 0x3d, 0x0a, 0x17, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x52, 0x45,
	0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x46, 0x4f, 0x55, 0x4e, 0x44,
	0x10, 0x14, 0x1a, 0x20, 0xca, 0xb5, 0x03, 0x1c, 0x0a, 0x1a, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4e, 0x6f, 0x74, 0x46,
	0x6f, 0x75, 0x6e, 0x64, 0x12, 0x3b, 0x0a, 0x16, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x43, 0x4f, 0x4e,
	0x54, 0x45, 0x4e, 0x54, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x1e,
	0x1a, 0x1f, 0xca, 0xb5, 0x03, 0x1b, 0x0a, 0x19, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e,
	0x64, 0x12, 0x38, 0x0a, 0x14, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e,
	0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x1f, 0x1a, 0x1e, 0xca, 0xb5, 0x03,
	0x1a, 0x0a, 0x18, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x43, 0x6f, 0x6e,
	0x74, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x12, 0x32, 0x0a, 0x11, 0x55,
	0x53, 0x45, 0x52, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45,
	0x10, 0x28, 0x1a, 0x1b, 0xca, 0xb5, 0x03, 0x17, 0x0a, 0x15, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x43, 0x6f, 0x6e, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x12,
	0x29, 0x0a, 0x0c, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x10,
	0x32, 0x1a, 0x17, 0xca, 0xb5, 0x03, 0x13, 0x0a, 0x11, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x1a, 0x10, 0xca, 0xb5, 0x03, 0x0c,
	0x0a, 0x0a, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2a, 0x9b, 0x01, 0x0a,
	0x0d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23,
	0x0a, 0x0c, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x53, 0x45, 0x4e, 0x54, 0x10, 0x00,
	0x1a, 0x11, 0xca, 0xb5, 0x03, 0x0d, 0x0a, 0x0b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53,
	0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x0f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50,
	0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x1a, 0x14, 0xca, 0xb5, 0x03, 0x10, 0x0a, 0x0e,
	0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x25,
	0x0a, 0x0d, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10,
	0x02, 0x1a, 0x12, 0xca, 0xb5, 0x03, 0x0e, 0x0a, 0x0c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
	0x45, 0x72, 0x72, 0x6f, 0x72, 0x1a, 0x13, 0xca, 0xb5, 0x03, 0x0f, 0x0a, 0x0d, 0x4d, 0x65, 0x73,
	0x73, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2a, 0xf0, 0x02, 0x0a, 0x0e, 0x57,
	0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2b, 0x0a,
	0x10, 0x57, 0x4f, 0x52, 0x4d, 0x48, 0x4f, 0x4c, 0x45, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c,
	0x54, 0x10, 0x00, 0x1a, 0x15, 0xca, 0xb5, 0x03, 0x11, 0x0a, 0x0f, 0x57, 0x6f, 0x72, 0x6d, 0x68,
	0x6f, 0x6c, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x2d, 0x0a, 0x11, 0x57, 0x4f,
	0x52, 0x4d, 0x48, 0x4f, 0x4c, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x49, 0x4e, 0x47, 0x10,
	0x0a, 0x1a, 0x16, 0xca, 0xb5, 0x03, 0x12, 0x0a, 0x10, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c,
	0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x2d, 0x0a, 0x11, 0x57, 0x4f, 0x52,
	0x4d, 0x48, 0x4f, 0x4c, 0x45, 0x5f, 0x4f, 0x46, 0x46, 0x45, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x14,
	0x1a, 0x16, 0xca, 0xb5, 0x03, 0x12, 0x0a, 0x10, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65,
	0x4f, 0x66, 0x66, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x2f, 0x0a, 0x12, 0x57, 0x4f, 0x52, 0x4d,
	0x48, 0x4f, 0x4c, 0x45, 0x5f, 0x41, 0x4e, 0x53, 0x57, 0x45, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x15,
	0x1a, 0x17, 0xca, 0xb5, 0x03, 0x13, 0x0a, 0x11, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65,
	0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x2f, 0x0a, 0x12, 0x57, 0x4f, 0x52,
	0x4d, 0x48, 0x4f, 0x4c, 0x45, 0x5f, 0x48, 0x41, 0x4e, 0x44, 0x53, 0x48, 0x41, 0x4b, 0x45, 0x10,
	0x28, 0x1a, 0x17, 0xca, 0xb5, 0x03, 0x13, 0x0a, 0x11, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c,
	0x65, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x12, 0x2f, 0x0a, 0x12, 0x57, 0x4f,
	0x52, 0x4d, 0x48, 0x4f, 0x4c, 0x45, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44,
	0x10, 0x64, 0x1a, 0x17, 0xca, 0xb5, 0x03, 0x13, 0x0a, 0x11, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f,
	0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x0f, 0x57,
	0x4f, 0x52, 0x4d, 0x48, 0x4f, 0x4c, 0x45, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x44, 0x10, 0xc8,
	0x01, 0x1a, 0x14, 0xca, 0xb5, 0x03, 0x10, 0x0a, 0x0e, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c,
	0x65, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x1a, 0x14, 0xca, 0xb5, 0x03, 0x10, 0x0a, 0x0e, 0x57,
	0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2a, 0xda, 0x01,
	0x0a, 0x15, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
	0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x34, 0x0a, 0x15, 0x57, 0x4f, 0x52, 0x4d, 0x48,
	0x4f, 0x4c, 0x45, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x53, 0x45, 0x4e, 0x54,
	0x10, 0x00, 0x1a, 0x19, 0xca, 0xb5, 0x03, 0x15, 0x0a, 0x13, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f,
	0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x6e, 0x74, 0x12, 0x3a, 0x0a,
	0x18, 0x57, 0x4f, 0x52, 0x4d, 0x48, 0x4f, 0x4c, 0x45, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47,
	0x45, 0x5f, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x1a, 0x1c, 0xca, 0xb5, 0x03,
	0x18, 0x0a, 0x16, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61,
	0x67, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x32, 0x0a, 0x14, 0x57, 0x4f, 0x52,
	0x4d, 0x48, 0x4f, 0x4c, 0x45, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x43,
	0x4b, 0x10, 0x02, 0x1a, 0x18, 0xca, 0xb5, 0x03, 0x14, 0x0a, 0x12, 0x57, 0x6f, 0x72, 0x6d, 0x68,
	0x6f, 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x63, 0x6b, 0x1a, 0x1b, 0xca,
	0xb5, 0x03, 0x17, 0x0a, 0x15, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x4d, 0x65, 0x73,
	0x73, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x32, 0xca, 0x29, 0x0a, 0x03, 0x52,
	0x50, 0x43, 0x12, 0x4a, 0x0a, 0x0b, 0x4b, 0x65, 0x79, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
	0x65, 0x12, 0x1b, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x47,
	0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x47, 0x65, 0x6e, 0x65,
	0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x35,
	0x0a, 0x04, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x2e, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x32, 0x0a, 0x03, 0x4b, 0x65, 0x79, 0x12, 0x13, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x09, 0x4b, 0x65, 0x79,
	0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x19, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x2e, 0x4b, 0x65, 0x79, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x49,
	0x6d, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
	0x44, 0x0a, 0x09, 0x4b, 0x65, 0x79, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x19, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x4b, 0x65, 0x79, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x09, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x6d, 0x6f,
	0x76, 0x65, 0x12, 0x19, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79,
	0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x6d, 0x6f, 0x76,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x35, 0x0a, 0x04, 0x53,
	0x69, 0x67, 0x6e, 0x12, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x69,
	0x67, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x00, 0x12, 0x41, 0x0a, 0x08, 0x53, 0x69, 0x67, 0x6e, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x16,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x46, 0x69, 0x6c,
	0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x1a, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x2e, 0x53, 0x69, 0x67, 0x6e, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x22,
	0x00, 0x28, 0x01, 0x30, 0x01, 0x12, 0x3b, 0x0a, 0x0a, 0x53, 0x69, 0x67, 0x6e, 0x53, 0x74, 0x72,
	0x65, 0x61, 0x6d, 0x12, 0x12, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x69,
	0x67, 0x6e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x1a, 0x13, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x22, 0x00, 0x28, 0x01,
	0x30, 0x01, 0x12, 0x3b, 0x0a, 0x06, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x16, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56,
	0x65, 0x72, 0x69, 0x66, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
	0x47, 0x0a, 0x0a, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x18, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x46, 0x69,
	0x6c, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x1a, 0x19, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x75, 0x74, 0x70,
	0x75, 0x74, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01, 0x12, 0x41, 0x0a, 0x0c, 0x56, 0x65, 0x72, 0x69,
	0x66, 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x1a, 0x15,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x4f,
	0x75, 0x74, 0x70, 0x75, 0x74, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01, 0x12, 0x53, 0x0a, 0x0e, 0x56,
	0x65, 0x72, 0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x12, 0x1e, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x44, 0x65,
	0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x44, 0x65,
	0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
	0x12, 0x5b, 0x0a, 0x12, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68,
	0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x20, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x46,
	0x69, 0x6c, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x1a, 0x1f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x65,
	0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x12, 0x59, 0x0a,
	0x14, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x53,
	0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x49, 0x6e,
	0x70, 0x75, 0x74, 0x1a, 0x1f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56, 0x65,
	0x72, 0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x12, 0x3e, 0x0a, 0x07, 0x45, 0x6e, 0x63, 0x72,
	0x79, 0x70, 0x74, 0x12, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x45, 0x6e,
	0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x0d, 0x45, 0x6e, 0x63, 0x72,
	0x79, 0x70, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74,
	0x1a, 0x16, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79,
	0x70, 0x74, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01, 0x12, 0x4a,
	0x0a, 0x0b, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x19, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x46,
	0x69, 0x6c, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x1a, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x75,
	0x74, 0x70, 0x75, 0x74, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01, 0x12, 0x3e, 0x0a, 0x07, 0x44, 0x65,
	0x63, 0x72, 0x79, 0x70, 0x74, 0x12, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x0d, 0x44, 0x65,
	0x63, 0x72, 0x79, 0x70, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x15, 0x2e, 0x73, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x49, 0x6e, 0x70,
	0x75, 0x74, 0x1a, 0x16, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x44, 0x65, 0x63,
	0x72, 0x79, 0x70, 0x74, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01,
	0x12, 0x4a, 0x0a, 0x0b, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x12,
	0x19, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70,
	0x74, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x1a, 0x1a, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x46, 0x69, 0x6c, 0x65,
	0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01, 0x12, 0x41, 0x0a, 0x08,
	0x53, 0x69, 0x67, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x18, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x53, 0x69, 0x67, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x19, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x69, 0x67,
	0x63, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
	0x44, 0x0a, 0x09, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0f, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65,
	0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x56, 0x0a,
	0x0f, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65,
	0x12, 0x1f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65,
	0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x20, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74,
	0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x35, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x14, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x55, 0x73,
	0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x47, 0x0a, 0x0a,
	0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x1a, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x2e, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x0b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x12, 0x1b, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x55,
	0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72,
	0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x00, 0x12, 0x41, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x12, 0x18, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x00, 0x12, 0x3e, 0x0a, 0x07, 0x55, 0x73, 0x65, 0x72, 0x41, 0x64, 0x64, 0x12,
	0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41, 0x64,
	0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41, 0x64, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x00, 0x12, 0x3b, 0x0a, 0x06, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x16,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x00, 0x12, 0x3b, 0x0a, 0x06, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x16, 0x2e, 0x73, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x65,
	0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x47,
	0x0a, 0x0a, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x53, 0x61, 0x76, 0x65, 0x12, 0x1a, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x53, 0x61, 0x76,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x53, 0x61, 0x76, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x53, 0x65, 0x63, 0x72, 0x65,
	0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3e, 0x0a, 0x07, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74,
	0x73, 0x12, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x65, 0x63, 0x72,
	0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x35, 0x0a, 0x04, 0x50, 0x75, 0x6c, 0x6c, 0x12, 0x14,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x50, 0x75, 0x6c, 0x6c, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x50,
	0x75, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x35, 0x0a,
	0x04, 0x50, 0x75, 0x73, 0x68, 0x12, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x73, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x00, 0x12, 0x41, 0x0a, 0x08, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65,
	0x12, 0x16, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x57, 0x6f, 0x72, 0x6d, 0x68,
	0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x1a, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75,
	0x74, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01, 0x12, 0x44, 0x0a, 0x09, 0x41, 0x75, 0x74, 0x68, 0x53,
	0x65, 0x74, 0x75, 0x70, 0x12, 0x19, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41,
	0x75, 0x74, 0x68, 0x53, 0x65, 0x74, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x53, 0x65,
	0x74, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a,
	0x09, 0x41, 0x75, 0x74, 0x68, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x19, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x41, 0x75, 0x74, 0x68, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x00, 0x12, 0x47, 0x0a, 0x0a, 0x41, 0x75, 0x74, 0x68, 0x55, 0x6e, 0x6c, 0x6f, 0x63,
	0x6b, 0x12, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68,
	0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x55, 0x6e, 0x6c, 0x6f,
	0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x41, 0x0a, 0x08,
	0x41, 0x75, 0x74, 0x68, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x18, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x19, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74,
	0x68, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
	0x44, 0x0a, 0x09, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x65, 0x74, 0x12, 0x19, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x65, 0x74,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x0b, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x63,
	0x6f, 0x76, 0x65, 0x72, 0x12, 0x1b, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41,
	0x75, 0x74, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68,
	0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x00, 0x12, 0x50, 0x0a, 0x0d, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x12, 0x1d, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x52, 0x75, 0x6e,
	0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x1e, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x52, 0x75, 0x6e, 0x74,
	0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x00, 0x12, 0x35, 0x0a, 0x04, 0x52, 0x61, 0x6e, 0x64, 0x12, 0x14, 0x2e, 0x73, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x52, 0x61, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x52, 0x61, 0x6e, 0x64,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x52, 0x61,
	0x6e, 0x64, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1c, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x52, 0x61, 0x6e, 0x64, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72,
	0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x52, 0x61, 0x6e, 0x64, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x0d, 0x41, 0x75, 0x74,
	0x68, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69,
	0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f,
	0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0f, 0x41,
	0x75, 0x74, 0x68, 0x44, 0x65, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x44, 0x65, 0x70,
	0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x20, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x44, 0x65,
	0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x76, 0x69,
	0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1e, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x41, 0x75, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x41, 0x75, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5f, 0x0a, 0x12, 0x41, 0x75, 0x74, 0x68,
	0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x22,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x50, 0x61, 0x73,
	0x73, 0x77, 0x6f, 0x72, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x23, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74,
	0x68, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x09, 0x56, 0x61, 0x75,
	0x6c, 0x74, 0x41, 0x75, 0x74, 0x68, 0x12, 0x19, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x2e, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56, 0x61, 0x75, 0x6c,
	0x74, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
	0x44, 0x0a, 0x09, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x53, 0x79, 0x6e, 0x63, 0x12, 0x19, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x53, 0x79, 0x6e, 0x63,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x0b, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x55, 0x6e,
	0x73, 0x79, 0x6e, 0x63, 0x12, 0x1b, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56,
	0x61, 0x75, 0x6c, 0x74, 0x55, 0x6e, 0x73, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56, 0x61, 0x75, 0x6c,
	0x74, 0x55, 0x6e, 0x73, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x00, 0x12, 0x4a, 0x0a, 0x0b, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x12, 0x1b, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56, 0x61, 0x75, 0x6c, 0x74,
	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4a, 0x0a,
	0x0b, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x2e, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x0b, 0x43, 0x6f, 0x6c,
	0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1b, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x09, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
	0x74, 0x73, 0x12, 0x19, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x44, 0x6f, 0x63,
	0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0e, 0x44,
	0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x1e, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
	0x12, 0x44, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x47, 0x65, 0x74, 0x12, 0x19, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x47, 0x65,
	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x53, 0x65, 0x74, 0x12, 0x19, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53,
	0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c,
	0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x69, 0x67, 0x6e, 0x55, 0x52, 0x4c, 0x12, 0x1c, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x69, 0x67, 0x6e,
	0x55, 0x52, 0x4c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x69, 0x67, 0x6e, 0x55, 0x52,
	0x4c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x47, 0x0a, 0x0a, 0x41,
	0x64, 0x6d, 0x69, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x2e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x41, 0x64, 0x6d, 0x69, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x00, 0x12, 0x41, 0x0a, 0x08, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
	0x12, 0x18, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x0d, 0x43, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x0d, 0x43, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12, 0x1d, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x76, 0x69,
	0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x43,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x12, 0x1c, 0x2e, 0x73, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x65, 0x61,
	0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x65, 0x61, 0x76, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x0b, 0x43, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x61, 0x64, 0x12, 0x1b, 0x2e, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x61, 0x64, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3b, 0x0a, 0x06, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77,
	0x12, 0x16, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x46, 0x6f, 0x6c, 0x6c, 0x6f,
	0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x00, 0x12, 0x3e, 0x0a, 0x07, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x12, 0x17,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x73,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x2e, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x72,
	0x65, 0x70, 0x61, 0x72, 0x65, 0x12, 0x1e, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x0d, 0x4d, 0x65, 0x73, 0x73,
	0x61, 0x67, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x2e, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x41, 0x0a, 0x08, 0x4d, 0x65,
	0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x18, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x19, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61,
	0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x38, 0x0a,
	0x05, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x2e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x4f, 0x75, 0x74,
	0x70, 0x75, 0x74, 0x22, 0x00, 0x30, 0x01, 0x42, 0x0b, 0x5a, 0x09, 0x2e, 0x3b, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 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, 11)
var file_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 162)
var file_rpc_proto_goTypes = []interface{}{
	(EncryptMode)(0),                   // 0: service.EncryptMode
	(AuthStatus)(0),                    // 1: service.AuthStatus
	(AuthType)(0),                      // 2: service.AuthType
	(ExportType)(0),                    // 3: service.ExportType
	(SortDirection)(0),                 // 4: service.SortDirection
	(SecretType)(0),                    // 5: service.SecretType
	(Encoding)(0),                      // 6: service.Encoding
	(UserStatus)(0),                    // 7: service.UserStatus
	(MessageStatus)(0),                 // 8: service.MessageStatus
	(WormholeStatus)(0),                // 9: service.WormholeStatus
	(WormholeMessageStatus)(0),         // 10: service.WormholeMessageStatus
	(*SignRequest)(nil),                // 11: service.SignRequest
	(*SignResponse)(nil),               // 12: service.SignResponse
	(*SignFileInput)(nil),              // 13: service.SignFileInput
	(*SignFileOutput)(nil),             // 14: service.SignFileOutput
	(*VerifyRequest)(nil),              // 15: service.VerifyRequest
	(*VerifyResponse)(nil),             // 16: service.VerifyResponse
	(*VerifyDetachedRequest)(nil),      // 17: service.VerifyDetachedRequest
	(*VerifyDetachedResponse)(nil),     // 18: service.VerifyDetachedResponse
	(*VerifyInput)(nil),                // 19: service.VerifyInput
	(*VerifyOutput)(nil),               // 20: service.VerifyOutput
	(*VerifyFileInput)(nil),            // 21: service.VerifyFileInput
	(*VerifyFileOutput)(nil),           // 22: service.VerifyFileOutput
	(*VerifyDetachedFileInput)(nil),    // 23: service.VerifyDetachedFileInput
	(*VerifyDetachedInput)(nil),        // 24: service.VerifyDetachedInput
	(*Statement)(nil),                  // 25: service.Statement
	(*SigchainRequest)(nil),            // 26: service.SigchainRequest
	(*SigchainResponse)(nil),           // 27: service.SigchainResponse
	(*StatementRequest)(nil),           // 28: service.StatementRequest
	(*StatementResponse)(nil),          // 29: service.StatementResponse
	(*StatementCreateRequest)(nil),     // 30: service.StatementCreateRequest
	(*StatementCreateResponse)(nil),    // 31: service.StatementCreateResponse
	(*StatementRevokeRequest)(nil),     // 32: service.StatementRevokeRequest
	(*StatementRevokeResponse)(nil),    // 33: service.StatementRevokeResponse
	(*SignInput)(nil),                  // 34: service.SignInput
	(*SignOutput)(nil),                 // 35: service.SignOutput
	(*EncryptOptions)(nil),             // 36: service.EncryptOptions
	(*EncryptRequest)(nil),             // 37: service.EncryptRequest
	(*EncryptResponse)(nil),            // 38: service.EncryptResponse
	(*EncryptFileInput)(nil),           // 39: service.EncryptFileInput
	(*EncryptFileOutput)(nil),          // 40: service.EncryptFileOutput
	(*EncryptInput)(nil),               // 41: service.EncryptInput
	(*EncryptOutput)(nil),              // 42: service.EncryptOutput
	(*DecryptRequest)(nil),             // 43: service.DecryptRequest
	(*DecryptResponse)(nil),            // 44: service.DecryptResponse
	(*DecryptFileInput)(nil),           // 45: service.DecryptFileInput
	(*DecryptFileOutput)(nil),          // 46: service.DecryptFileOutput
	(*DecryptInput)(nil),               // 47: service.DecryptInput
	(*DecryptOutput)(nil),              // 48: service.DecryptOutput
	(*RuntimeStatusRequest)(nil),       // 49: service.RuntimeStatusRequest
	(*RuntimeStatusResponse)(nil),      // 50: service.RuntimeStatusResponse
	(*AuthSetupRequest)(nil),           // 51: service.AuthSetupRequest
	(*AuthSetupResponse)(nil),          // 52: service.AuthSetupResponse
	(*AuthVaultRequest)(nil),           // 53: service.AuthVaultRequest
	(*AuthVaultResponse)(nil),          // 54: service.AuthVaultResponse
	(*AuthUnlockRequest)(nil),          // 55: service.AuthUnlockRequest
	(*AuthUnlockResponse)(nil),         // 56: service.AuthUnlockResponse
	(*AuthProvisionRequest)(nil),       // 57: service.AuthProvisionRequest
	(*AuthProvisionResponse)(nil),      // 58: service.AuthProvisionResponse
	(*AuthDeprovisionRequest)(nil),     // 59: service.AuthDeprovisionRequest
	(*AuthDeprovisionResponse)(nil),    // 60: service.AuthDeprovisionResponse
	(*AuthPasswordChangeRequest)(nil),  // 61: service.AuthPasswordChangeRequest
	(*AuthPasswordChangeResponse)(nil), // 62: service.AuthPasswordChangeResponse
	(*AuthProvision)(nil),              // 63: service.AuthProvision
	(*AuthProvisionsRequest)(nil),      // 64: service.AuthProvisionsRequest
	(*AuthProvisionsResponse)(nil),     // 65: service.AuthProvisionsResponse
	(*AuthLockRequest)(nil),            // 66: service.AuthLockRequest
	(*AuthLockResponse)(nil),           // 67: service.AuthLockResponse
	(*AuthResetRequest)(nil),           // 68: service.AuthResetRequest
	(*AuthResetResponse)(nil),          // 69: service.AuthResetResponse
	(*AuthRecoverRequest)(nil),         // 70: service.AuthRecoverRequest
	(*AuthRecoverResponse)(nil),        // 71: service.AuthRecoverResponse
	(*KeyGenerateRequest)(nil),         // 72: service.KeyGenerateRequest
	(*KeyGenerateResponse)(nil),        // 73: service.KeyGenerateResponse
	(*UserServiceRequest)(nil),         // 74: service.UserServiceRequest
	(*UserServiceResponse)(nil),        // 75: service.UserServiceResponse
	(*UserSignRequest)(nil),            // 76: service.UserSignRequest
	(*UserSignResponse)(nil),           // 77: service.UserSignResponse
	(*UserAddRequest)(nil),             // 78: service.UserAddRequest
	(*UserAddResponse)(nil),            // 79: service.UserAddResponse
	(*KeyExportRequest)(nil),           // 80: service.KeyExportRequest
	(*KeyExportResponse)(nil),          // 81: service.KeyExportResponse
	(*KeyImportRequest)(nil),           // 82: service.KeyImportRequest
	(*KeyImportResponse)(nil),          // 83: service.KeyImportResponse
	(*KeyRemoveRequest)(nil),           // 84: service.KeyRemoveRequest
	(*KeyRemoveResponse)(nil),          // 85: service.KeyRemoveResponse
	(*Key)(nil),                        // 86: service.Key
	(*KeyRequest)(nil),                 // 87: service.KeyRequest
	(*KeyResponse)(nil),                // 88: service.KeyResponse
	(*KeysRequest)(nil),                // 89: service.KeysRequest
	(*KeysResponse)(nil),               // 90: service.KeysResponse
	(*Secret)(nil),                     // 91: service.Secret
	(*SecretRequest)(nil),              // 92: service.SecretRequest
	(*SecretResponse)(nil),             // 93: service.SecretResponse
	(*SecretSaveRequest)(nil),          // 94: service.SecretSaveRequest
	(*SecretSaveResponse)(nil),         // 95: service.SecretSaveResponse
	(*SecretRemoveRequest)(nil),        // 96: service.SecretRemoveRequest
	(*SecretRemoveResponse)(nil),       // 97: service.SecretRemoveResponse
	(*SecretsRequest)(nil),             // 98: service.SecretsRequest
	(*SecretsResponse)(nil),            // 99: service.SecretsResponse
	(*RandRequest)(nil),                // 100: service.RandRequest
	(*RandResponse)(nil),               // 101: service.RandResponse
	(*RandPasswordRequest)(nil),        // 102: service.RandPasswordRequest
	(*RandPasswordResponse)(nil),       // 103: service.RandPasswordResponse
	(*PullRequest)(nil),                // 104: service.PullRequest
	(*PullResponse)(nil),               // 105: service.PullResponse
	(*PushRequest)(nil),                // 106: service.PushRequest
	(*PushResponse)(nil),               // 107: service.PushResponse
	(*Collection)(nil),                 // 108: service.Collection
	(*CollectionsRequest)(nil),         // 109: service.CollectionsRequest
	(*CollectionsResponse)(nil),        // 110: service.CollectionsResponse
	(*Document)(nil),                   // 111: service.Document
	(*DocumentsRequest)(nil),           // 112: service.DocumentsRequest
	(*DocumentsResponse)(nil),          // 113: service.DocumentsResponse
	(*DocumentDeleteRequest)(nil),      // 114: service.DocumentDeleteRequest
	(*DocumentDeleteResponse)(nil),     // 115: service.DocumentDeleteResponse
	(*User)(nil),                       // 116: service.User
	(*UserRequest)(nil),                // 117: service.UserRequest
	(*UserResponse)(nil),               // 118: service.UserResponse
	(*UserSearchRequest)(nil),          // 119: service.UserSearchRequest
	(*UserSearchResponse)(nil),         // 120: service.UserSearchResponse
	(*SearchRequest)(nil),              // 121: service.SearchRequest
	(*SearchResponse)(nil),             // 122: service.SearchResponse
	(*VaultSyncRequest)(nil),           // 123: service.VaultSyncRequest
	(*VaultSyncResponse)(nil),          // 124: service.VaultSyncResponse
	(*VaultUnsyncRequest)(nil),         // 125: service.VaultUnsyncRequest
	(*VaultUnsyncResponse)(nil),        // 126: service.VaultUnsyncResponse
	(*VaultAuthRequest)(nil),           // 127: service.VaultAuthRequest
	(*VaultAuthResponse)(nil),          // 128: service.VaultAuthResponse
	(*VaultStatusRequest)(nil),         // 129: service.VaultStatusRequest
	(*VaultStatusResponse)(nil),        // 130: service.VaultStatusResponse
	(*VaultUpdateRequest)(nil),         // 131: service.VaultUpdateRequest
	(*VaultUpdateResponse)(nil),        // 132: service.VaultUpdateResponse
	(*Message)(nil),                    // 133: service.Message
	(*MessagePrepareRequest)(nil),      // 134: service.MessagePrepareRequest
	(*MessagePrepareResponse)(nil),     // 135: service.MessagePrepareResponse
	(*MessageCreateRequest)(nil),       // 136: service.MessageCreateRequest
	(*MessageCreateResponse)(nil),      // 137: service.MessageCreateResponse
	(*MessagesRequest)(nil),            // 138: service.MessagesRequest
	(*MessagesResponse)(nil),           // 139: service.MessagesResponse
	(*RelayRequest)(nil),               // 140: service.RelayRequest
	(*RelayOutput)(nil),                // 141: service.RelayOutput
	(*Channel)(nil),                    // 142: service.Channel
	(*ChannelsRequest)(nil),            // 143: service.ChannelsRequest
	(*ChannelsResponse)(nil),           // 144: service.ChannelsResponse
	(*ChannelCreateRequest)(nil),       // 145: service.ChannelCreateRequest
	(*ChannelCreateResponse)(nil),      // 146: service.ChannelCreateResponse
	(*ChannelLeaveRequest)(nil),        // 147: service.ChannelLeaveRequest
	(*ChannelLeaveResponse)(nil),       // 148: service.ChannelLeaveResponse
	(*ChannelReadRequest)(nil),         // 149: service.ChannelReadRequest
	(*ChannelReadResponse)(nil),        // 150: service.ChannelReadResponse
	(*ChannelInviteRequest)(nil),       // 151: service.ChannelInviteRequest
	(*ChannelInviteResponse)(nil),      // 152: service.ChannelInviteResponse
	(*Follow)(nil),                     // 153: service.Follow
	(*FollowRequest)(nil),              // 154: service.FollowRequest
	(*FollowResponse)(nil),             // 155: service.FollowResponse
	(*FollowsRequest)(nil),             // 156: service.FollowsRequest
	(*FollowsResponse)(nil),            // 157: service.FollowsResponse
	(*AdminSignURLRequest)(nil),        // 158: service.AdminSignURLRequest
	(*AdminSignURLResponse)(nil),       // 159: service.AdminSignURLResponse
	(*AdminCheckRequest)(nil),          // 160: service.AdminCheckRequest
	(*AdminCheckResponse)(nil),         // 161: service.AdminCheckResponse
	(*Config)(nil),                     // 162: service.Config
	(*ConfigGetRequest)(nil),           // 163: service.ConfigGetRequest
	(*ConfigGetResponse)(nil),          // 164: service.ConfigGetResponse
	(*ConfigSetRequest)(nil),           // 165: service.ConfigSetRequest
	(*ConfigSetResponse)(nil),          // 166: service.ConfigSetResponse
	(*WormholeInput)(nil),              // 167: service.WormholeInput
	(*WormholeMessage)(nil),            // 168: service.WormholeMessage
	(*WormholeOutput)(nil),             // 169: service.WormholeOutput
	(*Config_App)(nil),                 // 170: service.Config.App
	(*Config_Encrypt)(nil),             // 171: service.Config.Encrypt
	(*Config_Sign)(nil),                // 172: service.Config.Sign
}
var file_rpc_proto_depIdxs = []int32{
	86,  // 0: service.VerifyResponse.signer:type_name -> service.Key
	86,  // 1: service.VerifyDetachedResponse.signer:type_name -> service.Key
	86,  // 2: service.VerifyOutput.signer:type_name -> service.Key
	86,  // 3: service.VerifyFileOutput.signer:type_name -> service.Key
	86,  // 4: service.SigchainResponse.key:type_name -> service.Key
	25,  // 5: service.SigchainResponse.statements:type_name -> service.Statement
	25,  // 6: service.StatementResponse.statement:type_name -> service.Statement
	25,  // 7: service.StatementCreateResponse.statement:type_name -> service.Statement
	25,  // 8: service.StatementRevokeResponse.statement:type_name -> service.Statement
	0,   // 9: service.EncryptOptions.mode:type_name -> service.EncryptMode
	36,  // 10: service.EncryptRequest.options:type_name -> service.EncryptOptions
	36,  // 11: service.EncryptFileInput.options:type_name -> service.EncryptOptions
	36,  // 12: service.EncryptInput.options:type_name -> service.EncryptOptions
	86,  // 13: service.DecryptResponse.sender:type_name -> service.Key
	0,   // 14: service.DecryptResponse.mode:type_name -> service.EncryptMode
	86,  // 15: service.DecryptFileOutput.sender:type_name -> service.Key
	0,   // 16: service.DecryptFileOutput.mode:type_name -> service.EncryptMode
	86,  // 17: service.DecryptOutput.sender:type_name -> service.Key
	0,   // 18: service.DecryptOutput.mode:type_name -> service.EncryptMode
	1,   // 19: service.RuntimeStatusResponse.authStatus:type_name -> service.AuthStatus
	2,   // 20: service.AuthSetupRequest.type:type_name -> service.AuthType
	2,   // 21: service.AuthUnlockRequest.type:type_name -> service.AuthType
	2,   // 22: service.AuthProvisionRequest.type:type_name -> service.AuthType
	63,  // 23: service.AuthProvisionResponse.provision:type_name -> service.AuthProvision
	2,   // 24: service.AuthProvision.type:type_name -> service.AuthType
	63,  // 25: service.AuthProvisionsResponse.provisions:type_name -> service.AuthProvision
	116, // 26: service.UserAddResponse.user:type_name -> service.User
	25,  // 27: service.UserAddResponse.statement:type_name -> service.Statement
	3,   // 28: service.KeyExportRequest.type:type_name -> service.ExportType
	116, // 29: service.Key.user:type_name -> service.User
	86,  // 30: service.KeyResponse.key:type_name -> service.Key
	4,   // 31: service.KeysRequest.sortDirection:type_name -> service.SortDirection
	86,  // 32: service.KeysResponse.keys:type_name -> service.Key
	4,   // 33: service.KeysResponse.sortDirection:type_name -> service.SortDirection
	5,   // 34: service.Secret.type:type_name -> service.SecretType
	91,  // 35: service.SecretResponse.secret:type_name -> service.Secret
	91,  // 36: service.SecretSaveRequest.secret:type_name -> service.Secret
	91,  // 37: service.SecretSaveResponse.secret:type_name -> service.Secret
	4,   // 38: service.SecretsRequest.sortDirection:type_name -> service.SortDirection
	91,  // 39: service.SecretsResponse.secrets:type_name -> service.Secret
	4,   // 40: service.SecretsResponse.sortDirection:type_name -> service.SortDirection
	6,   // 41: service.RandRequest.encoding:type_name -> service.Encoding
	108, // 42: service.CollectionsResponse.collections:type_name -> service.Collection
	111, // 43: service.DocumentsResponse.documents:type_name -> service.Document
	7,   // 44: service.User.status:type_name -> service.UserStatus
	116, // 45: service.UserResponse.user:type_name -> service.User
	116, // 46: service.UserSearchResponse.users:type_name -> service.User
	86,  // 47: service.SearchResponse.keys:type_name -> service.Key
	86,  // 48: service.Message.sender:type_name -> service.Key
	8,   // 49: service.Message.status:type_name -> service.MessageStatus
	133, // 50: service.MessagePrepareResponse.message:type_name -> service.Message
	133, // 51: service.MessageCreateResponse.message:type_name -> service.Message
	133, // 52: service.MessagesResponse.messages:type_name -> service.Message
	142, // 53: service.ChannelsResponse.channels:type_name -> service.Channel
	142, // 54: service.ChannelCreateResponse.channel:type_name -> service.Channel
	133, // 55: service.ChannelInviteResponse.message:type_name -> service.Message
	153, // 56: service.FollowResponse.follow:type_name -> service.Follow
	153, // 57: service.FollowsResponse.follows:type_name -> service.Follow
	170, // 58: service.Config.app:type_name -> service.Config.App
	171, // 59: service.Config.encrypt:type_name -> service.Config.Encrypt
	172, // 60: service.Config.sign:type_name -> service.Config.Sign
	162, // 61: service.ConfigGetResponse.config:type_name -> service.Config
	162, // 62: service.ConfigSetRequest.config:type_name -> service.Config
	86,  // 63: service.WormholeMessage.sender:type_name -> service.Key
	86,  // 64: service.WormholeMessage.recipient:type_name -> service.Key
	10,  // 65: service.WormholeMessage.status:type_name -> service.WormholeMessageStatus
	168, // 66: service.WormholeOutput.message:type_name -> service.WormholeMessage
	9,   // 67: service.WormholeOutput.status:type_name -> service.WormholeStatus
	72,  // 68: service.RPC.KeyGenerate:input_type -> service.KeyGenerateRequest
	89,  // 69: service.RPC.Keys:input_type -> service.KeysRequest
	87,  // 70: service.RPC.Key:input_type -> service.KeyRequest
	82,  // 71: service.RPC.KeyImport:input_type -> service.KeyImportRequest
	80,  // 72: service.RPC.KeyExport:input_type -> service.KeyExportRequest
	84,  // 73: service.RPC.KeyRemove:input_type -> service.KeyRemoveRequest
	11,  // 74: service.RPC.Sign:input_type -> service.SignRequest
	13,  // 75: service.RPC.SignFile:input_type -> service.SignFileInput
	34,  // 76: service.RPC.SignStream:input_type -> service.SignInput
	15,  // 77: service.RPC.Verify:input_type -> service.VerifyRequest
	21,  // 78: service.RPC.VerifyFile:input_type -> service.VerifyFileInput
	19,  // 79: service.RPC.VerifyStream:input_type -> service.VerifyInput
	17,  // 80: service.RPC.VerifyDetached:input_type -> service.VerifyDetachedRequest
	23,  // 81: service.RPC.VerifyDetachedFile:input_type -> service.VerifyDetachedFileInput
	24,  // 82: service.RPC.VerifyDetachedStream:input_type -> service.VerifyDetachedInput
	37,  // 83: service.RPC.Encrypt:input_type -> service.EncryptRequest
	41,  // 84: service.RPC.EncryptStream:input_type -> service.EncryptInput
	39,  // 85: service.RPC.EncryptFile:input_type -> service.EncryptFileInput
	43,  // 86: service.RPC.Decrypt:input_type -> service.DecryptRequest
	47,  // 87: service.RPC.DecryptStream:input_type -> service.DecryptInput
	45,  // 88: service.RPC.DecryptFile:input_type -> service.DecryptFileInput
	26,  // 89: service.RPC.Sigchain:input_type -> service.SigchainRequest
	28,  // 90: service.RPC.Statement:input_type -> service.StatementRequest
	30,  // 91: service.RPC.StatementCreate:input_type -> service.StatementCreateRequest
	32,  // 92: service.RPC.StatementRevoke:input_type -> service.StatementRevokeRequest
	117, // 93: service.RPC.User:input_type -> service.UserRequest
	119, // 94: service.RPC.UserSearch:input_type -> service.UserSearchRequest
	74,  // 95: service.RPC.UserService:input_type -> service.UserServiceRequest
	76,  // 96: service.RPC.UserSign:input_type -> service.UserSignRequest
	78,  // 97: service.RPC.UserAdd:input_type -> service.UserAddRequest
	121, // 98: service.RPC.Search:input_type -> service.SearchRequest
	92,  // 99: service.RPC.Secret:input_type -> service.SecretRequest
	94,  // 100: service.RPC.SecretSave:input_type -> service.SecretSaveRequest
	96,  // 101: service.RPC.SecretRemove:input_type -> service.SecretRemoveRequest
	98,  // 102: service.RPC.Secrets:input_type -> service.SecretsRequest
	104, // 103: service.RPC.Pull:input_type -> service.PullRequest
	106, // 104: service.RPC.Push:input_type -> service.PushRequest
	167, // 105: service.RPC.Wormhole:input_type -> service.WormholeInput
	51,  // 106: service.RPC.AuthSetup:input_type -> service.AuthSetupRequest
	53,  // 107: service.RPC.AuthVault:input_type -> service.AuthVaultRequest
	55,  // 108: service.RPC.AuthUnlock:input_type -> service.AuthUnlockRequest
	66,  // 109: service.RPC.AuthLock:input_type -> service.AuthLockRequest
	68,  // 110: service.RPC.AuthReset:input_type -> service.AuthResetRequest
	70,  // 111: service.RPC.AuthRecover:input_type -> service.AuthRecoverRequest
	49,  // 112: service.RPC.RuntimeStatus:input_type -> service.RuntimeStatusRequest
	100, // 113: service.RPC.Rand:input_type -> service.RandRequest
	102, // 114: service.RPC.RandPassword:input_type -> service.RandPasswordRequest
	57,  // 115: service.RPC.AuthProvision:input_type -> service.AuthProvisionRequest
	59,  // 116: service.RPC.AuthDeprovision:input_type -> service.AuthDeprovisionRequest
	64,  // 117: service.RPC.AuthProvisions:input_type -> service.AuthProvisionsRequest
	61,  // 118: service.RPC.AuthPasswordChange:input_type -> service.AuthPasswordChangeRequest
	127, // 119: service.RPC.VaultAuth:input_type -> service.VaultAuthRequest
	123, // 120: service.RPC.VaultSync:input_type -> service.VaultSyncRequest
	125, // 121: service.RPC.VaultUnsync:input_type -> service.VaultUnsyncRequest
	129, // 122: service.RPC.VaultStatus:input_type -> service.VaultStatusRequest
	131, // 123: service.RPC.VaultUpdate:input_type -> service.VaultUpdateRequest
	109, // 124: service.RPC.Collections:input_type -> service.CollectionsRequest
	112, // 125: service.RPC.Documents:input_type -> service.DocumentsRequest
	114, // 126: service.RPC.DocumentDelete:input_type -> service.DocumentDeleteRequest
	163, // 127: service.RPC.ConfigGet:input_type -> service.ConfigGetRequest
	165, // 128: service.RPC.ConfigSet:input_type -> service.ConfigSetRequest
	158, // 129: service.RPC.AdminSignURL:input_type -> service.AdminSignURLRequest
	160, // 130: service.RPC.AdminCheck:input_type -> service.AdminCheckRequest
	143, // 131: service.RPC.Channels:input_type -> service.ChannelsRequest
	145, // 132: service.RPC.ChannelCreate:input_type -> service.ChannelCreateRequest
	151, // 133: service.RPC.ChannelInvite:input_type -> service.ChannelInviteRequest
	147, // 134: service.RPC.ChannelLeave:input_type -> service.ChannelLeaveRequest
	149, // 135: service.RPC.ChannelRead:input_type -> service.ChannelReadRequest
	154, // 136: service.RPC.Follow:input_type -> service.FollowRequest
	156, // 137: service.RPC.Follows:input_type -> service.FollowsRequest
	134, // 138: service.RPC.MessagePrepare:input_type -> service.MessagePrepareRequest
	136, // 139: service.RPC.MessageCreate:input_type -> service.MessageCreateRequest
	138, // 140: service.RPC.Messages:input_type -> service.MessagesRequest
	140, // 141: service.RPC.Relay:input_type -> service.RelayRequest
	73,  // 142: service.RPC.KeyGenerate:output_type -> service.KeyGenerateResponse
	90,  // 143: service.RPC.Keys:output_type -> service.KeysResponse
	88,  // 144: service.RPC.Key:output_type -> service.KeyResponse
	83,  // 145: service.RPC.KeyImport:output_type -> service.KeyImportResponse
	81,  // 146: service.RPC.KeyExport:output_type -> service.KeyExportResponse
	85,  // 147: service.RPC.KeyRemove:output_type -> service.KeyRemoveResponse
	12,  // 148: service.RPC.Sign:output_type -> service.SignResponse
	14,  // 149: service.RPC.SignFile:output_type -> service.SignFileOutput
	35,  // 150: service.RPC.SignStream:output_type -> service.SignOutput
	16,  // 151: service.RPC.Verify:output_type -> service.VerifyResponse
	22,  // 152: service.RPC.VerifyFile:output_type -> service.VerifyFileOutput
	20,  // 153: service.RPC.VerifyStream:output_type -> service.VerifyOutput
	18,  // 154: service.RPC.VerifyDetached:output_type -> service.VerifyDetachedResponse
	18,  // 155: service.RPC.VerifyDetachedFile:output_type -> service.VerifyDetachedResponse
	18,  // 156: service.RPC.VerifyDetachedStream:output_type -> service.VerifyDetachedResponse
	38,  // 157: service.RPC.Encrypt:output_type -> service.EncryptResponse
	42,  // 158: service.RPC.EncryptStream:output_type -> service.EncryptOutput
	40,  // 159: service.RPC.EncryptFile:output_type -> service.EncryptFileOutput
	44,  // 160: service.RPC.Decrypt:output_type -> service.DecryptResponse
	48,  // 161: service.RPC.DecryptStream:output_type -> service.DecryptOutput
	46,  // 162: service.RPC.DecryptFile:output_type -> service.DecryptFileOutput
	27,  // 163: service.RPC.Sigchain:output_type -> service.SigchainResponse
	29,  // 164: service.RPC.Statement:output_type -> service.StatementResponse
	31,  // 165: service.RPC.StatementCreate:output_type -> service.StatementCreateResponse
	33,  // 166: service.RPC.StatementRevoke:output_type -> service.StatementRevokeResponse
	118, // 167: service.RPC.User:output_type -> service.UserResponse
	120, // 168: service.RPC.UserSearch:output_type -> service.UserSearchResponse
	75,  // 169: service.RPC.UserService:output_type -> service.UserServiceResponse
	77,  // 170: service.RPC.UserSign:output_type -> service.UserSignResponse
	79,  // 171: service.RPC.UserAdd:output_type -> service.UserAddResponse
	122, // 172: service.RPC.Search:output_type -> service.SearchResponse
	93,  // 173: service.RPC.Secret:output_type -> service.SecretResponse
	95,  // 174: service.RPC.SecretSave:output_type -> service.SecretSaveResponse
	97,  // 175: service.RPC.SecretRemove:output_type -> service.SecretRemoveResponse
	99,  // 176: service.RPC.Secrets:output_type -> service.SecretsResponse
	105, // 177: service.RPC.Pull:output_type -> service.PullResponse
	107, // 178: service.RPC.Push:output_type -> service.PushResponse
	169, // 179: service.RPC.Wormhole:output_type -> service.WormholeOutput
	52,  // 180: service.RPC.AuthSetup:output_type -> service.AuthSetupResponse
	54,  // 181: service.RPC.AuthVault:output_type -> service.AuthVaultResponse
	56,  // 182: service.RPC.AuthUnlock:output_type -> service.AuthUnlockResponse
	67,  // 183: service.RPC.AuthLock:output_type -> service.AuthLockResponse
	69,  // 184: service.RPC.AuthReset:output_type -> service.AuthResetResponse
	71,  // 185: service.RPC.AuthRecover:output_type -> service.AuthRecoverResponse
	50,  // 186: service.RPC.RuntimeStatus:output_type -> service.RuntimeStatusResponse
	101, // 187: service.RPC.Rand:output_type -> service.RandResponse
	103, // 188: service.RPC.RandPassword:output_type -> service.RandPasswordResponse
	58,  // 189: service.RPC.AuthProvision:output_type -> service.AuthProvisionResponse
	60,  // 190: service.RPC.AuthDeprovision:output_type -> service.AuthDeprovisionResponse
	65,  // 191: service.RPC.AuthProvisions:output_type -> service.AuthProvisionsResponse
	62,  // 192: service.RPC.AuthPasswordChange:output_type -> service.AuthPasswordChangeResponse
	128, // 193: service.RPC.VaultAuth:output_type -> service.VaultAuthResponse
	124, // 194: service.RPC.VaultSync:output_type -> service.VaultSyncResponse
	126, // 195: service.RPC.VaultUnsync:output_type -> service.VaultUnsyncResponse
	130, // 196: service.RPC.VaultStatus:output_type -> service.VaultStatusResponse
	132, // 197: service.RPC.VaultUpdate:output_type -> service.VaultUpdateResponse
	110, // 198: service.RPC.Collections:output_type -> service.CollectionsResponse
	113, // 199: service.RPC.Documents:output_type -> service.DocumentsResponse
	115, // 200: service.RPC.DocumentDelete:output_type -> service.DocumentDeleteResponse
	164, // 201: service.RPC.ConfigGet:output_type -> service.ConfigGetResponse
	166, // 202: service.RPC.ConfigSet:output_type -> service.ConfigSetResponse
	159, // 203: service.RPC.AdminSignURL:output_type -> service.AdminSignURLResponse
	161, // 204: service.RPC.AdminCheck:output_type -> service.AdminCheckResponse
	144, // 205: service.RPC.Channels:output_type -> service.ChannelsResponse
	146, // 206: service.RPC.ChannelCreate:output_type -> service.ChannelCreateResponse
	152, // 207: service.RPC.ChannelInvite:output_type -> service.ChannelInviteResponse
	148, // 208: service.RPC.ChannelLeave:output_type -> service.ChannelLeaveResponse
	150, // 209: service.RPC.ChannelRead:output_type -> service.ChannelReadResponse
	155, // 210: service.RPC.Follow:output_type -> service.FollowResponse
	157, // 211: service.RPC.Follows:output_type -> service.FollowsResponse
	135, // 212: service.RPC.MessagePrepare:output_type -> service.MessagePrepareResponse
	137, // 213: service.RPC.MessageCreate:output_type -> service.MessageCreateResponse
	139, // 214: service.RPC.Messages:output_type -> service.MessagesResponse
	141, // 215: service.RPC.Relay:output_type -> service.RelayOutput
	142, // [142:216] is the sub-list for method output_type
	68,  // [68:142] is the sub-list for method input_type
	68,  // [68:68] is the sub-list for extension type_name
	68,  // [68:68] is the sub-list for extension extendee
	0,   // [0:68] 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.(*SignRequest); 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.(*SignResponse); 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.(*SignFileInput); 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.(*SignFileOutput); 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.(*VerifyRequest); 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.(*VerifyResponse); 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.(*VerifyDetachedRequest); 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.(*VerifyDetachedResponse); 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.(*VerifyInput); 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.(*VerifyOutput); 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.(*VerifyFileInput); 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.(*VerifyFileOutput); 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.(*VerifyDetachedFileInput); 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.(*VerifyDetachedInput); 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.(*Statement); 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.(*SigchainRequest); 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.(*SigchainResponse); 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.(*StatementRequest); 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.(*StatementResponse); 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.(*StatementCreateRequest); 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.(*StatementCreateResponse); 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.(*StatementRevokeRequest); 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.(*StatementRevokeResponse); 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.(*SignInput); 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.(*SignOutput); 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.(*EncryptOptions); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*EncryptRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*EncryptResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*EncryptFileInput); 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.(*EncryptFileOutput); 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.(*EncryptInput); 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.(*EncryptOutput); 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.(*DecryptRequest); 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.(*DecryptResponse); 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.(*DecryptFileInput); 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.(*DecryptFileOutput); 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.(*DecryptInput); 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.(*DecryptOutput); 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.(*RuntimeStatusRequest); 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.(*RuntimeStatusResponse); 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.(*AuthSetupRequest); 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.(*AuthSetupResponse); 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.(*AuthVaultRequest); 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.(*AuthVaultResponse); 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.(*AuthUnlockRequest); 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.(*AuthUnlockResponse); 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.(*AuthProvisionRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AuthProvisionResponse); 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.(*AuthDeprovisionRequest); 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.(*AuthDeprovisionResponse); 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.(*AuthPasswordChangeRequest); 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.(*AuthPasswordChangeResponse); 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.(*AuthProvision); 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.(*AuthProvisionsRequest); 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.(*AuthProvisionsResponse); 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.(*AuthLockRequest); 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.(*AuthLockResponse); 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.(*AuthResetRequest); 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.(*AuthResetResponse); 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.(*AuthRecoverRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AuthRecoverResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeyGenerateRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeyGenerateResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UserServiceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UserServiceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UserSignRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UserSignResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UserAddRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UserAddResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeyExportRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeyExportResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeyImportRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeyImportResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeyRemoveRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeyRemoveResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Key); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeyRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeyResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeysRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeysResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Secret); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SecretRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SecretResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SecretSaveRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SecretSaveResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SecretRemoveRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SecretRemoveResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SecretsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SecretsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RandRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RandResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RandPasswordRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RandPasswordResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PullRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PullResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PushRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PushResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Collection); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CollectionsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CollectionsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Document); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DocumentsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DocumentsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DocumentDeleteRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DocumentDeleteResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*User); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UserRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UserResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UserSearchRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UserSearchResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SearchRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SearchResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*VaultSyncRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*VaultSyncResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*VaultUnsyncRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*VaultUnsyncResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*VaultAuthRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*VaultAuthResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*VaultStatusRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*VaultStatusResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*VaultUpdateRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*VaultUpdateResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Message); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MessagePrepareRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MessagePrepareResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MessageCreateRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MessageCreateResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MessagesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MessagesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RelayRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RelayOutput); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Channel); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChannelsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChannelsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChannelCreateRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChannelCreateResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChannelLeaveRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChannelLeaveResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChannelReadRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChannelReadResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChannelInviteRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChannelInviteResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Follow); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FollowRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FollowResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FollowsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FollowsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AdminSignURLRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AdminSignURLResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AdminCheckRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AdminCheckResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Config); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ConfigGetRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ConfigGetResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ConfigSetRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[155].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ConfigSetResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[156].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WormholeInput); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[157].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WormholeMessage); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[158].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WormholeOutput); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Config_App); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Config_Encrypt); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Config_Sign); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_rpc_proto_rawDesc,
			NumEnums:      11,
			NumMessages:   162,
			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
}
