Files
proton-bridge/internal/rpc/bridge_rpc.pb.go
Xavier Michelon a4e54f063d GODT-1553: RPC definition and mocks
WIP: updates

WIP: cache on disk and autostart.

WIP: mail, keychain and more.

WIP: updated grpc version in go mod file.

WIP: user list.

WIP: RPC service placeholder

WIP: test C++ RPC client skeleton.

Other: missing license script update.

WIP: use Qt test framework.

WIP: test for app and login calls.

WIP: test for update & cache on disk calls.

WIP: tests for mail settings calls.

WIP: all client tests.

WIP: linter fixes.

WIP: fix missing license link.

WIP: update dependency_license script for gRPC and protobuf.

WIP: removed unused file.

WIP: app & login event streaming tests.

WIP: update event stream tests.

WIP: completed event streaming tests.
2022-09-01 13:20:56 +02:00

5105 lines
191 KiB
Go

// Copyright (c) 2022 Proton Technologies AG
//
// This file is part of ProtonMail Bridge.
//
// ProtonMail Bridge is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// ProtonMail Bridge is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with ProtonMail Bridge. If not, see <https://www.gnu.org/licenses/>.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc v3.19.4
// source: bridge_rpc.proto
package rpc
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
emptypb "google.golang.org/protobuf/types/known/emptypb"
wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
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)
)
type LoginErrorType int32
const (
LoginErrorType_USERNAME_PASSWORD_ERROR LoginErrorType = 0
LoginErrorType_FREE_USER LoginErrorType = 1
LoginErrorType_CONNECTION_ERROR LoginErrorType = 2
LoginErrorType_TFA_ERROR LoginErrorType = 3
LoginErrorType_TFA_ABORT LoginErrorType = 4
LoginErrorType_TWO_PASSWORDS_ERROR LoginErrorType = 5
LoginErrorType_TWO_PASSWORDS_ABORT LoginErrorType = 6
)
// Enum value maps for LoginErrorType.
var (
LoginErrorType_name = map[int32]string{
0: "USERNAME_PASSWORD_ERROR",
1: "FREE_USER",
2: "CONNECTION_ERROR",
3: "TFA_ERROR",
4: "TFA_ABORT",
5: "TWO_PASSWORDS_ERROR",
6: "TWO_PASSWORDS_ABORT",
}
LoginErrorType_value = map[string]int32{
"USERNAME_PASSWORD_ERROR": 0,
"FREE_USER": 1,
"CONNECTION_ERROR": 2,
"TFA_ERROR": 3,
"TFA_ABORT": 4,
"TWO_PASSWORDS_ERROR": 5,
"TWO_PASSWORDS_ABORT": 6,
}
)
func (x LoginErrorType) Enum() *LoginErrorType {
p := new(LoginErrorType)
*p = x
return p
}
func (x LoginErrorType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (LoginErrorType) Descriptor() protoreflect.EnumDescriptor {
return file_bridge_rpc_proto_enumTypes[0].Descriptor()
}
func (LoginErrorType) Type() protoreflect.EnumType {
return &file_bridge_rpc_proto_enumTypes[0]
}
func (x LoginErrorType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use LoginErrorType.Descriptor instead.
func (LoginErrorType) EnumDescriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{0}
}
type UpdateErrorType int32
const (
UpdateErrorType_UPDATE_MANUAL_ERROR UpdateErrorType = 0
UpdateErrorType_UPDATE_FORCE_ERROR UpdateErrorType = 1
UpdateErrorType_UPDATE_SILENT_ERROR UpdateErrorType = 2
)
// Enum value maps for UpdateErrorType.
var (
UpdateErrorType_name = map[int32]string{
0: "UPDATE_MANUAL_ERROR",
1: "UPDATE_FORCE_ERROR",
2: "UPDATE_SILENT_ERROR",
}
UpdateErrorType_value = map[string]int32{
"UPDATE_MANUAL_ERROR": 0,
"UPDATE_FORCE_ERROR": 1,
"UPDATE_SILENT_ERROR": 2,
}
)
func (x UpdateErrorType) Enum() *UpdateErrorType {
p := new(UpdateErrorType)
*p = x
return p
}
func (x UpdateErrorType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (UpdateErrorType) Descriptor() protoreflect.EnumDescriptor {
return file_bridge_rpc_proto_enumTypes[1].Descriptor()
}
func (UpdateErrorType) Type() protoreflect.EnumType {
return &file_bridge_rpc_proto_enumTypes[1]
}
func (x UpdateErrorType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use UpdateErrorType.Descriptor instead.
func (UpdateErrorType) EnumDescriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{1}
}
type CacheErrorType int32
const (
CacheErrorType_CACHE_UNAVAILABLE_ERROR CacheErrorType = 0
CacheErrorType_CACHE_CANT_MOVE_ERROR CacheErrorType = 1
CacheErrorType_DISK_FULL CacheErrorType = 2
)
// Enum value maps for CacheErrorType.
var (
CacheErrorType_name = map[int32]string{
0: "CACHE_UNAVAILABLE_ERROR",
1: "CACHE_CANT_MOVE_ERROR",
2: "DISK_FULL",
}
CacheErrorType_value = map[string]int32{
"CACHE_UNAVAILABLE_ERROR": 0,
"CACHE_CANT_MOVE_ERROR": 1,
"DISK_FULL": 2,
}
)
func (x CacheErrorType) Enum() *CacheErrorType {
p := new(CacheErrorType)
*p = x
return p
}
func (x CacheErrorType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (CacheErrorType) Descriptor() protoreflect.EnumDescriptor {
return file_bridge_rpc_proto_enumTypes[2].Descriptor()
}
func (CacheErrorType) Type() protoreflect.EnumType {
return &file_bridge_rpc_proto_enumTypes[2]
}
func (x CacheErrorType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use CacheErrorType.Descriptor instead.
func (CacheErrorType) EnumDescriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{2}
}
type MailSettingsErrorType int32
const (
MailSettingsErrorType_IMAP_PORT_ISSUE MailSettingsErrorType = 0
MailSettingsErrorType_SMTP_PORT_ISSUE MailSettingsErrorType = 1
)
// Enum value maps for MailSettingsErrorType.
var (
MailSettingsErrorType_name = map[int32]string{
0: "IMAP_PORT_ISSUE",
1: "SMTP_PORT_ISSUE",
}
MailSettingsErrorType_value = map[string]int32{
"IMAP_PORT_ISSUE": 0,
"SMTP_PORT_ISSUE": 1,
}
)
func (x MailSettingsErrorType) Enum() *MailSettingsErrorType {
p := new(MailSettingsErrorType)
*p = x
return p
}
func (x MailSettingsErrorType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (MailSettingsErrorType) Descriptor() protoreflect.EnumDescriptor {
return file_bridge_rpc_proto_enumTypes[3].Descriptor()
}
func (MailSettingsErrorType) Type() protoreflect.EnumType {
return &file_bridge_rpc_proto_enumTypes[3]
}
func (x MailSettingsErrorType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use MailSettingsErrorType.Descriptor instead.
func (MailSettingsErrorType) EnumDescriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{3}
}
//**********************************************************
// GUI related messages
//**********************************************************
type PointResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"`
}
func (x *PointResponse) Reset() {
*x = PointResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PointResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PointResponse) ProtoMessage() {}
func (x *PointResponse) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 PointResponse.ProtoReflect.Descriptor instead.
func (*PointResponse) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{0}
}
func (x *PointResponse) GetX() int32 {
if x != nil {
return x.X
}
return 0
}
func (x *PointResponse) GetY() int32 {
if x != nil {
return x.Y
}
return 0
}
type ReportBugRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Description string `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`
Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"`
EmailClient string `protobuf:"bytes,3,opt,name=emailClient,proto3" json:"emailClient,omitempty"`
IncludeLogs bool `protobuf:"varint,4,opt,name=includeLogs,proto3" json:"includeLogs,omitempty"`
}
func (x *ReportBugRequest) Reset() {
*x = ReportBugRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ReportBugRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ReportBugRequest) ProtoMessage() {}
func (x *ReportBugRequest) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 ReportBugRequest.ProtoReflect.Descriptor instead.
func (*ReportBugRequest) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{1}
}
func (x *ReportBugRequest) GetDescription() string {
if x != nil {
return x.Description
}
return ""
}
func (x *ReportBugRequest) GetAddress() string {
if x != nil {
return x.Address
}
return ""
}
func (x *ReportBugRequest) GetEmailClient() string {
if x != nil {
return x.EmailClient
}
return ""
}
func (x *ReportBugRequest) GetIncludeLogs() bool {
if x != nil {
return x.IncludeLogs
}
return false
}
type LoginRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"`
}
func (x *LoginRequest) Reset() {
*x = LoginRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LoginRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LoginRequest) ProtoMessage() {}
func (x *LoginRequest) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 LoginRequest.ProtoReflect.Descriptor instead.
func (*LoginRequest) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{2}
}
func (x *LoginRequest) GetUsername() string {
if x != nil {
return x.Username
}
return ""
}
func (x *LoginRequest) GetPassword() string {
if x != nil {
return x.Password
}
return ""
}
type LoginAbortRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
}
func (x *LoginAbortRequest) Reset() {
*x = LoginAbortRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LoginAbortRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LoginAbortRequest) ProtoMessage() {}
func (x *LoginAbortRequest) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 LoginAbortRequest.ProtoReflect.Descriptor instead.
func (*LoginAbortRequest) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{3}
}
func (x *LoginAbortRequest) GetUsername() string {
if x != nil {
return x.Username
}
return ""
}
//**********************************************************
// Cache on disk related messages
//**********************************************************
type ChangeLocalCacheRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
EnableDiskCache bool `protobuf:"varint,1,opt,name=enableDiskCache,proto3" json:"enableDiskCache,omitempty"`
DiskCachePath string `protobuf:"bytes,2,opt,name=diskCachePath,proto3" json:"diskCachePath,omitempty"`
}
func (x *ChangeLocalCacheRequest) Reset() {
*x = ChangeLocalCacheRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ChangeLocalCacheRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ChangeLocalCacheRequest) ProtoMessage() {}
func (x *ChangeLocalCacheRequest) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 ChangeLocalCacheRequest.ProtoReflect.Descriptor instead.
func (*ChangeLocalCacheRequest) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{4}
}
func (x *ChangeLocalCacheRequest) GetEnableDiskCache() bool {
if x != nil {
return x.EnableDiskCache
}
return false
}
func (x *ChangeLocalCacheRequest) GetDiskCachePath() string {
if x != nil {
return x.DiskCachePath
}
return ""
}
//**********************************************************
// Cache on disk related messages
//**********************************************************
type ChangePortsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ImapPort int32 `protobuf:"varint,1,opt,name=imapPort,proto3" json:"imapPort,omitempty"`
SmtpPort int32 `protobuf:"varint,2,opt,name=smtpPort,proto3" json:"smtpPort,omitempty"`
}
func (x *ChangePortsRequest) Reset() {
*x = ChangePortsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ChangePortsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ChangePortsRequest) ProtoMessage() {}
func (x *ChangePortsRequest) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 ChangePortsRequest.ProtoReflect.Descriptor instead.
func (*ChangePortsRequest) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{5}
}
func (x *ChangePortsRequest) GetImapPort() int32 {
if x != nil {
return x.ImapPort
}
return 0
}
func (x *ChangePortsRequest) GetSmtpPort() int32 {
if x != nil {
return x.SmtpPort
}
return 0
}
//**********************************************************
// Cache on disk related messages
//**********************************************************
type AvailableKeychainsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Keychains []string `protobuf:"bytes,1,rep,name=keychains,proto3" json:"keychains,omitempty"`
}
func (x *AvailableKeychainsResponse) Reset() {
*x = AvailableKeychainsResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AvailableKeychainsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AvailableKeychainsResponse) ProtoMessage() {}
func (x *AvailableKeychainsResponse) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 AvailableKeychainsResponse.ProtoReflect.Descriptor instead.
func (*AvailableKeychainsResponse) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{6}
}
func (x *AvailableKeychainsResponse) GetKeychains() []string {
if x != nil {
return x.Keychains
}
return nil
}
//**********************************************************
// Cache on disk related messages
//**********************************************************
type User struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
Username string `protobuf:"bytes,2,opt,name=username,proto3" json:"username,omitempty"`
AvatarText string `protobuf:"bytes,3,opt,name=avatarText,proto3" json:"avatarText,omitempty"`
LoggedIn bool `protobuf:"varint,4,opt,name=loggedIn,proto3" json:"loggedIn,omitempty"`
SplitMode bool `protobuf:"varint,5,opt,name=splitMode,proto3" json:"splitMode,omitempty"`
SetupGuideSeen bool `protobuf:"varint,6,opt,name=setupGuideSeen,proto3" json:"setupGuideSeen,omitempty"`
UsedBytes int64 `protobuf:"varint,7,opt,name=usedBytes,proto3" json:"usedBytes,omitempty"`
TotalBytes int64 `protobuf:"varint,8,opt,name=totalBytes,proto3" json:"totalBytes,omitempty"`
Password string `protobuf:"bytes,9,opt,name=password,proto3" json:"password,omitempty"`
Addresses []string `protobuf:"bytes,10,rep,name=addresses,proto3" json:"addresses,omitempty"`
}
func (x *User) Reset() {
*x = User{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[7]
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_bridge_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 User.ProtoReflect.Descriptor instead.
func (*User) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{7}
}
func (x *User) GetId() string {
if x != nil {
return x.Id
}
return ""
}
func (x *User) GetUsername() string {
if x != nil {
return x.Username
}
return ""
}
func (x *User) GetAvatarText() string {
if x != nil {
return x.AvatarText
}
return ""
}
func (x *User) GetLoggedIn() bool {
if x != nil {
return x.LoggedIn
}
return false
}
func (x *User) GetSplitMode() bool {
if x != nil {
return x.SplitMode
}
return false
}
func (x *User) GetSetupGuideSeen() bool {
if x != nil {
return x.SetupGuideSeen
}
return false
}
func (x *User) GetUsedBytes() int64 {
if x != nil {
return x.UsedBytes
}
return 0
}
func (x *User) GetTotalBytes() int64 {
if x != nil {
return x.TotalBytes
}
return 0
}
func (x *User) GetPassword() string {
if x != nil {
return x.Password
}
return ""
}
func (x *User) GetAddresses() []string {
if x != nil {
return x.Addresses
}
return nil
}
type UserSplitModeRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID,omitempty"`
Active bool `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
}
func (x *UserSplitModeRequest) Reset() {
*x = UserSplitModeRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UserSplitModeRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UserSplitModeRequest) ProtoMessage() {}
func (x *UserSplitModeRequest) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 UserSplitModeRequest.ProtoReflect.Descriptor instead.
func (*UserSplitModeRequest) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{8}
}
func (x *UserSplitModeRequest) GetUserID() string {
if x != nil {
return x.UserID
}
return ""
}
func (x *UserSplitModeRequest) GetActive() bool {
if x != nil {
return x.Active
}
return false
}
type UserListResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Users []*User `protobuf:"bytes,1,rep,name=users,proto3" json:"users,omitempty"`
}
func (x *UserListResponse) Reset() {
*x = UserListResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UserListResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UserListResponse) ProtoMessage() {}
func (x *UserListResponse) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 UserListResponse.ProtoReflect.Descriptor instead.
func (*UserListResponse) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{9}
}
func (x *UserListResponse) GetUsers() []*User {
if x != nil {
return x.Users
}
return nil
}
type ConfigureAppleMailRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID,omitempty"`
Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"`
}
func (x *ConfigureAppleMailRequest) Reset() {
*x = ConfigureAppleMailRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ConfigureAppleMailRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ConfigureAppleMailRequest) ProtoMessage() {}
func (x *ConfigureAppleMailRequest) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 ConfigureAppleMailRequest.ProtoReflect.Descriptor instead.
func (*ConfigureAppleMailRequest) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{10}
}
func (x *ConfigureAppleMailRequest) GetUserID() string {
if x != nil {
return x.UserID
}
return ""
}
func (x *ConfigureAppleMailRequest) GetAddress() string {
if x != nil {
return x.Address
}
return ""
}
//**********************************************************************************************************************
// Event stream messages
//**********************************************************************************************************************
type StreamEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Event:
// *StreamEvent_App
// *StreamEvent_Login
// *StreamEvent_Update
// *StreamEvent_Cache
// *StreamEvent_MailSettings
// *StreamEvent_Keychain
// *StreamEvent_Mail
// *StreamEvent_User
Event isStreamEvent_Event `protobuf_oneof:"event"`
}
func (x *StreamEvent) Reset() {
*x = StreamEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StreamEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StreamEvent) ProtoMessage() {}
func (x *StreamEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 StreamEvent.ProtoReflect.Descriptor instead.
func (*StreamEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{11}
}
func (m *StreamEvent) GetEvent() isStreamEvent_Event {
if m != nil {
return m.Event
}
return nil
}
func (x *StreamEvent) GetApp() *AppEvent {
if x, ok := x.GetEvent().(*StreamEvent_App); ok {
return x.App
}
return nil
}
func (x *StreamEvent) GetLogin() *LoginEvent {
if x, ok := x.GetEvent().(*StreamEvent_Login); ok {
return x.Login
}
return nil
}
func (x *StreamEvent) GetUpdate() *UpdateEvent {
if x, ok := x.GetEvent().(*StreamEvent_Update); ok {
return x.Update
}
return nil
}
func (x *StreamEvent) GetCache() *CacheEvent {
if x, ok := x.GetEvent().(*StreamEvent_Cache); ok {
return x.Cache
}
return nil
}
func (x *StreamEvent) GetMailSettings() *MailSettingsEvent {
if x, ok := x.GetEvent().(*StreamEvent_MailSettings); ok {
return x.MailSettings
}
return nil
}
func (x *StreamEvent) GetKeychain() *KeychainEvent {
if x, ok := x.GetEvent().(*StreamEvent_Keychain); ok {
return x.Keychain
}
return nil
}
func (x *StreamEvent) GetMail() *MailEvent {
if x, ok := x.GetEvent().(*StreamEvent_Mail); ok {
return x.Mail
}
return nil
}
func (x *StreamEvent) GetUser() *UserEvent {
if x, ok := x.GetEvent().(*StreamEvent_User); ok {
return x.User
}
return nil
}
type isStreamEvent_Event interface {
isStreamEvent_Event()
}
type StreamEvent_App struct {
App *AppEvent `protobuf:"bytes,1,opt,name=app,proto3,oneof"`
}
type StreamEvent_Login struct {
Login *LoginEvent `protobuf:"bytes,2,opt,name=login,proto3,oneof"`
}
type StreamEvent_Update struct {
Update *UpdateEvent `protobuf:"bytes,3,opt,name=update,proto3,oneof"`
}
type StreamEvent_Cache struct {
Cache *CacheEvent `protobuf:"bytes,4,opt,name=cache,proto3,oneof"`
}
type StreamEvent_MailSettings struct {
MailSettings *MailSettingsEvent `protobuf:"bytes,5,opt,name=mailSettings,proto3,oneof"`
}
type StreamEvent_Keychain struct {
Keychain *KeychainEvent `protobuf:"bytes,6,opt,name=keychain,proto3,oneof"`
}
type StreamEvent_Mail struct {
Mail *MailEvent `protobuf:"bytes,7,opt,name=mail,proto3,oneof"`
}
type StreamEvent_User struct {
User *UserEvent `protobuf:"bytes,8,opt,name=user,proto3,oneof"`
}
func (*StreamEvent_App) isStreamEvent_Event() {}
func (*StreamEvent_Login) isStreamEvent_Event() {}
func (*StreamEvent_Update) isStreamEvent_Event() {}
func (*StreamEvent_Cache) isStreamEvent_Event() {}
func (*StreamEvent_MailSettings) isStreamEvent_Event() {}
func (*StreamEvent_Keychain) isStreamEvent_Event() {}
func (*StreamEvent_Mail) isStreamEvent_Event() {}
func (*StreamEvent_User) isStreamEvent_Event() {}
//**********************************************************
// App related events
//**********************************************************
type AppEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Event:
// *AppEvent_InternetStatus
// *AppEvent_AutostartFinished
// *AppEvent_ResetFinished
// *AppEvent_ReportBugFinished
// *AppEvent_ReportBugSuccess
// *AppEvent_ReportBugError
// *AppEvent_ShowMainWindow
Event isAppEvent_Event `protobuf_oneof:"event"`
}
func (x *AppEvent) Reset() {
*x = AppEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AppEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AppEvent) ProtoMessage() {}
func (x *AppEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 AppEvent.ProtoReflect.Descriptor instead.
func (*AppEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{12}
}
func (m *AppEvent) GetEvent() isAppEvent_Event {
if m != nil {
return m.Event
}
return nil
}
func (x *AppEvent) GetInternetStatus() *InternetStatusEvent {
if x, ok := x.GetEvent().(*AppEvent_InternetStatus); ok {
return x.InternetStatus
}
return nil
}
func (x *AppEvent) GetAutostartFinished() *AutostartFinishedEvent {
if x, ok := x.GetEvent().(*AppEvent_AutostartFinished); ok {
return x.AutostartFinished
}
return nil
}
func (x *AppEvent) GetResetFinished() *ResetFinishedEvent {
if x, ok := x.GetEvent().(*AppEvent_ResetFinished); ok {
return x.ResetFinished
}
return nil
}
func (x *AppEvent) GetReportBugFinished() *ReportBugFinishedEvent {
if x, ok := x.GetEvent().(*AppEvent_ReportBugFinished); ok {
return x.ReportBugFinished
}
return nil
}
func (x *AppEvent) GetReportBugSuccess() *ReportBugSuccessEvent {
if x, ok := x.GetEvent().(*AppEvent_ReportBugSuccess); ok {
return x.ReportBugSuccess
}
return nil
}
func (x *AppEvent) GetReportBugError() *ReportBugErrorEvent {
if x, ok := x.GetEvent().(*AppEvent_ReportBugError); ok {
return x.ReportBugError
}
return nil
}
func (x *AppEvent) GetShowMainWindow() *ShowMainWindowEvent {
if x, ok := x.GetEvent().(*AppEvent_ShowMainWindow); ok {
return x.ShowMainWindow
}
return nil
}
type isAppEvent_Event interface {
isAppEvent_Event()
}
type AppEvent_InternetStatus struct {
InternetStatus *InternetStatusEvent `protobuf:"bytes,1,opt,name=internetStatus,proto3,oneof"`
}
type AppEvent_AutostartFinished struct {
AutostartFinished *AutostartFinishedEvent `protobuf:"bytes,2,opt,name=autostartFinished,proto3,oneof"`
}
type AppEvent_ResetFinished struct {
ResetFinished *ResetFinishedEvent `protobuf:"bytes,3,opt,name=resetFinished,proto3,oneof"`
}
type AppEvent_ReportBugFinished struct {
ReportBugFinished *ReportBugFinishedEvent `protobuf:"bytes,4,opt,name=reportBugFinished,proto3,oneof"`
}
type AppEvent_ReportBugSuccess struct {
ReportBugSuccess *ReportBugSuccessEvent `protobuf:"bytes,5,opt,name=reportBugSuccess,proto3,oneof"`
}
type AppEvent_ReportBugError struct {
ReportBugError *ReportBugErrorEvent `protobuf:"bytes,6,opt,name=reportBugError,proto3,oneof"`
}
type AppEvent_ShowMainWindow struct {
ShowMainWindow *ShowMainWindowEvent `protobuf:"bytes,7,opt,name=showMainWindow,proto3,oneof"`
}
func (*AppEvent_InternetStatus) isAppEvent_Event() {}
func (*AppEvent_AutostartFinished) isAppEvent_Event() {}
func (*AppEvent_ResetFinished) isAppEvent_Event() {}
func (*AppEvent_ReportBugFinished) isAppEvent_Event() {}
func (*AppEvent_ReportBugSuccess) isAppEvent_Event() {}
func (*AppEvent_ReportBugError) isAppEvent_Event() {}
func (*AppEvent_ShowMainWindow) isAppEvent_Event() {}
type InternetStatusEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Connected bool `protobuf:"varint,1,opt,name=connected,proto3" json:"connected,omitempty"`
}
func (x *InternetStatusEvent) Reset() {
*x = InternetStatusEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *InternetStatusEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*InternetStatusEvent) ProtoMessage() {}
func (x *InternetStatusEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 InternetStatusEvent.ProtoReflect.Descriptor instead.
func (*InternetStatusEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{13}
}
func (x *InternetStatusEvent) GetConnected() bool {
if x != nil {
return x.Connected
}
return false
}
type AutostartFinishedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *AutostartFinishedEvent) Reset() {
*x = AutostartFinishedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AutostartFinishedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AutostartFinishedEvent) ProtoMessage() {}
func (x *AutostartFinishedEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 AutostartFinishedEvent.ProtoReflect.Descriptor instead.
func (*AutostartFinishedEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{14}
}
type ResetFinishedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *ResetFinishedEvent) Reset() {
*x = ResetFinishedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ResetFinishedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ResetFinishedEvent) ProtoMessage() {}
func (x *ResetFinishedEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 ResetFinishedEvent.ProtoReflect.Descriptor instead.
func (*ResetFinishedEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{15}
}
type ReportBugFinishedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *ReportBugFinishedEvent) Reset() {
*x = ReportBugFinishedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ReportBugFinishedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ReportBugFinishedEvent) ProtoMessage() {}
func (x *ReportBugFinishedEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 ReportBugFinishedEvent.ProtoReflect.Descriptor instead.
func (*ReportBugFinishedEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{16}
}
type ReportBugSuccessEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *ReportBugSuccessEvent) Reset() {
*x = ReportBugSuccessEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ReportBugSuccessEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ReportBugSuccessEvent) ProtoMessage() {}
func (x *ReportBugSuccessEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 ReportBugSuccessEvent.ProtoReflect.Descriptor instead.
func (*ReportBugSuccessEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{17}
}
type ReportBugErrorEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *ReportBugErrorEvent) Reset() {
*x = ReportBugErrorEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ReportBugErrorEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ReportBugErrorEvent) ProtoMessage() {}
func (x *ReportBugErrorEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 ReportBugErrorEvent.ProtoReflect.Descriptor instead.
func (*ReportBugErrorEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{18}
}
type ShowMainWindowEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *ShowMainWindowEvent) Reset() {
*x = ShowMainWindowEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ShowMainWindowEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ShowMainWindowEvent) ProtoMessage() {}
func (x *ShowMainWindowEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 ShowMainWindowEvent.ProtoReflect.Descriptor instead.
func (*ShowMainWindowEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{19}
}
//**********************************************************
// Login related events
//**********************************************************
type LoginEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Event:
// *LoginEvent_Error
// *LoginEvent_TfaRequested
// *LoginEvent_TwoPasswordRequested
// *LoginEvent_Finished
Event isLoginEvent_Event `protobuf_oneof:"event"`
}
func (x *LoginEvent) Reset() {
*x = LoginEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LoginEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LoginEvent) ProtoMessage() {}
func (x *LoginEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 LoginEvent.ProtoReflect.Descriptor instead.
func (*LoginEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{20}
}
func (m *LoginEvent) GetEvent() isLoginEvent_Event {
if m != nil {
return m.Event
}
return nil
}
func (x *LoginEvent) GetError() *LoginErrorEvent {
if x, ok := x.GetEvent().(*LoginEvent_Error); ok {
return x.Error
}
return nil
}
func (x *LoginEvent) GetTfaRequested() *LoginTfaRequestedEvent {
if x, ok := x.GetEvent().(*LoginEvent_TfaRequested); ok {
return x.TfaRequested
}
return nil
}
func (x *LoginEvent) GetTwoPasswordRequested() *LoginTwoPasswordsRequestedEvent {
if x, ok := x.GetEvent().(*LoginEvent_TwoPasswordRequested); ok {
return x.TwoPasswordRequested
}
return nil
}
func (x *LoginEvent) GetFinished() *LoginFinishedEvent {
if x, ok := x.GetEvent().(*LoginEvent_Finished); ok {
return x.Finished
}
return nil
}
type isLoginEvent_Event interface {
isLoginEvent_Event()
}
type LoginEvent_Error struct {
Error *LoginErrorEvent `protobuf:"bytes,1,opt,name=error,proto3,oneof"`
}
type LoginEvent_TfaRequested struct {
TfaRequested *LoginTfaRequestedEvent `protobuf:"bytes,2,opt,name=tfaRequested,proto3,oneof"`
}
type LoginEvent_TwoPasswordRequested struct {
TwoPasswordRequested *LoginTwoPasswordsRequestedEvent `protobuf:"bytes,3,opt,name=twoPasswordRequested,proto3,oneof"`
}
type LoginEvent_Finished struct {
Finished *LoginFinishedEvent `protobuf:"bytes,4,opt,name=finished,proto3,oneof"`
}
func (*LoginEvent_Error) isLoginEvent_Event() {}
func (*LoginEvent_TfaRequested) isLoginEvent_Event() {}
func (*LoginEvent_TwoPasswordRequested) isLoginEvent_Event() {}
func (*LoginEvent_Finished) isLoginEvent_Event() {}
type LoginErrorEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Type LoginErrorType `protobuf:"varint,1,opt,name=type,proto3,enum=bridgerpc.LoginErrorType" json:"type,omitempty"`
Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
}
func (x *LoginErrorEvent) Reset() {
*x = LoginErrorEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LoginErrorEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LoginErrorEvent) ProtoMessage() {}
func (x *LoginErrorEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 LoginErrorEvent.ProtoReflect.Descriptor instead.
func (*LoginErrorEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{21}
}
func (x *LoginErrorEvent) GetType() LoginErrorType {
if x != nil {
return x.Type
}
return LoginErrorType_USERNAME_PASSWORD_ERROR
}
func (x *LoginErrorEvent) GetMessage() string {
if x != nil {
return x.Message
}
return ""
}
type LoginTfaRequestedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
}
func (x *LoginTfaRequestedEvent) Reset() {
*x = LoginTfaRequestedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LoginTfaRequestedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LoginTfaRequestedEvent) ProtoMessage() {}
func (x *LoginTfaRequestedEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 LoginTfaRequestedEvent.ProtoReflect.Descriptor instead.
func (*LoginTfaRequestedEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{22}
}
func (x *LoginTfaRequestedEvent) GetUsername() string {
if x != nil {
return x.Username
}
return ""
}
type LoginTwoPasswordsRequestedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *LoginTwoPasswordsRequestedEvent) Reset() {
*x = LoginTwoPasswordsRequestedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LoginTwoPasswordsRequestedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LoginTwoPasswordsRequestedEvent) ProtoMessage() {}
func (x *LoginTwoPasswordsRequestedEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 LoginTwoPasswordsRequestedEvent.ProtoReflect.Descriptor instead.
func (*LoginTwoPasswordsRequestedEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{23}
}
type LoginFinishedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
WasAlreadyLoggedIn bool `protobuf:"varint,1,opt,name=wasAlreadyLoggedIn,proto3" json:"wasAlreadyLoggedIn,omitempty"`
}
func (x *LoginFinishedEvent) Reset() {
*x = LoginFinishedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LoginFinishedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LoginFinishedEvent) ProtoMessage() {}
func (x *LoginFinishedEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 LoginFinishedEvent.ProtoReflect.Descriptor instead.
func (*LoginFinishedEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{24}
}
func (x *LoginFinishedEvent) GetWasAlreadyLoggedIn() bool {
if x != nil {
return x.WasAlreadyLoggedIn
}
return false
}
//**********************************************************
// Update related events
//**********************************************************
type UpdateEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Event:
// *UpdateEvent_Error
// *UpdateEvent_ManualReady
// *UpdateEvent_ManualRestartNeeded
// *UpdateEvent_Force
// *UpdateEvent_SilentRestartNeeded
// *UpdateEvent_IsLatestVersion
// *UpdateEvent_CheckFinished
Event isUpdateEvent_Event `protobuf_oneof:"event"`
}
func (x *UpdateEvent) Reset() {
*x = UpdateEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateEvent) ProtoMessage() {}
func (x *UpdateEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 UpdateEvent.ProtoReflect.Descriptor instead.
func (*UpdateEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{25}
}
func (m *UpdateEvent) GetEvent() isUpdateEvent_Event {
if m != nil {
return m.Event
}
return nil
}
func (x *UpdateEvent) GetError() *UpdateErrorEvent {
if x, ok := x.GetEvent().(*UpdateEvent_Error); ok {
return x.Error
}
return nil
}
func (x *UpdateEvent) GetManualReady() *UpdateManualReadyEvent {
if x, ok := x.GetEvent().(*UpdateEvent_ManualReady); ok {
return x.ManualReady
}
return nil
}
func (x *UpdateEvent) GetManualRestartNeeded() *UpdateManualRestartNeededEvent {
if x, ok := x.GetEvent().(*UpdateEvent_ManualRestartNeeded); ok {
return x.ManualRestartNeeded
}
return nil
}
func (x *UpdateEvent) GetForce() *UpdateForceEvent {
if x, ok := x.GetEvent().(*UpdateEvent_Force); ok {
return x.Force
}
return nil
}
func (x *UpdateEvent) GetSilentRestartNeeded() *UpdateSilentRestartNeeded {
if x, ok := x.GetEvent().(*UpdateEvent_SilentRestartNeeded); ok {
return x.SilentRestartNeeded
}
return nil
}
func (x *UpdateEvent) GetIsLatestVersion() *UpdateIsLatestVersion {
if x, ok := x.GetEvent().(*UpdateEvent_IsLatestVersion); ok {
return x.IsLatestVersion
}
return nil
}
func (x *UpdateEvent) GetCheckFinished() *UpdateCheckFinished {
if x, ok := x.GetEvent().(*UpdateEvent_CheckFinished); ok {
return x.CheckFinished
}
return nil
}
type isUpdateEvent_Event interface {
isUpdateEvent_Event()
}
type UpdateEvent_Error struct {
Error *UpdateErrorEvent `protobuf:"bytes,1,opt,name=error,proto3,oneof"`
}
type UpdateEvent_ManualReady struct {
ManualReady *UpdateManualReadyEvent `protobuf:"bytes,2,opt,name=manualReady,proto3,oneof"`
}
type UpdateEvent_ManualRestartNeeded struct {
ManualRestartNeeded *UpdateManualRestartNeededEvent `protobuf:"bytes,3,opt,name=manualRestartNeeded,proto3,oneof"`
}
type UpdateEvent_Force struct {
Force *UpdateForceEvent `protobuf:"bytes,4,opt,name=force,proto3,oneof"`
}
type UpdateEvent_SilentRestartNeeded struct {
SilentRestartNeeded *UpdateSilentRestartNeeded `protobuf:"bytes,5,opt,name=silentRestartNeeded,proto3,oneof"`
}
type UpdateEvent_IsLatestVersion struct {
IsLatestVersion *UpdateIsLatestVersion `protobuf:"bytes,6,opt,name=isLatestVersion,proto3,oneof"`
}
type UpdateEvent_CheckFinished struct {
CheckFinished *UpdateCheckFinished `protobuf:"bytes,7,opt,name=checkFinished,proto3,oneof"`
}
func (*UpdateEvent_Error) isUpdateEvent_Event() {}
func (*UpdateEvent_ManualReady) isUpdateEvent_Event() {}
func (*UpdateEvent_ManualRestartNeeded) isUpdateEvent_Event() {}
func (*UpdateEvent_Force) isUpdateEvent_Event() {}
func (*UpdateEvent_SilentRestartNeeded) isUpdateEvent_Event() {}
func (*UpdateEvent_IsLatestVersion) isUpdateEvent_Event() {}
func (*UpdateEvent_CheckFinished) isUpdateEvent_Event() {}
type UpdateErrorEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Type UpdateErrorType `protobuf:"varint,1,opt,name=type,proto3,enum=bridgerpc.UpdateErrorType" json:"type,omitempty"`
}
func (x *UpdateErrorEvent) Reset() {
*x = UpdateErrorEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateErrorEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateErrorEvent) ProtoMessage() {}
func (x *UpdateErrorEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 UpdateErrorEvent.ProtoReflect.Descriptor instead.
func (*UpdateErrorEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{26}
}
func (x *UpdateErrorEvent) GetType() UpdateErrorType {
if x != nil {
return x.Type
}
return UpdateErrorType_UPDATE_MANUAL_ERROR
}
type UpdateManualReadyEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
}
func (x *UpdateManualReadyEvent) Reset() {
*x = UpdateManualReadyEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateManualReadyEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateManualReadyEvent) ProtoMessage() {}
func (x *UpdateManualReadyEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 UpdateManualReadyEvent.ProtoReflect.Descriptor instead.
func (*UpdateManualReadyEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{27}
}
func (x *UpdateManualReadyEvent) GetVersion() string {
if x != nil {
return x.Version
}
return ""
}
type UpdateManualRestartNeededEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *UpdateManualRestartNeededEvent) Reset() {
*x = UpdateManualRestartNeededEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateManualRestartNeededEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateManualRestartNeededEvent) ProtoMessage() {}
func (x *UpdateManualRestartNeededEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 UpdateManualRestartNeededEvent.ProtoReflect.Descriptor instead.
func (*UpdateManualRestartNeededEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{28}
}
type UpdateForceEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
}
func (x *UpdateForceEvent) Reset() {
*x = UpdateForceEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateForceEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateForceEvent) ProtoMessage() {}
func (x *UpdateForceEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 UpdateForceEvent.ProtoReflect.Descriptor instead.
func (*UpdateForceEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{29}
}
func (x *UpdateForceEvent) GetVersion() string {
if x != nil {
return x.Version
}
return ""
}
type UpdateSilentRestartNeeded struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *UpdateSilentRestartNeeded) Reset() {
*x = UpdateSilentRestartNeeded{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateSilentRestartNeeded) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateSilentRestartNeeded) ProtoMessage() {}
func (x *UpdateSilentRestartNeeded) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 UpdateSilentRestartNeeded.ProtoReflect.Descriptor instead.
func (*UpdateSilentRestartNeeded) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{30}
}
type UpdateIsLatestVersion struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *UpdateIsLatestVersion) Reset() {
*x = UpdateIsLatestVersion{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateIsLatestVersion) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateIsLatestVersion) ProtoMessage() {}
func (x *UpdateIsLatestVersion) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 UpdateIsLatestVersion.ProtoReflect.Descriptor instead.
func (*UpdateIsLatestVersion) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{31}
}
type UpdateCheckFinished struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *UpdateCheckFinished) Reset() {
*x = UpdateCheckFinished{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateCheckFinished) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateCheckFinished) ProtoMessage() {}
func (x *UpdateCheckFinished) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 UpdateCheckFinished.ProtoReflect.Descriptor instead.
func (*UpdateCheckFinished) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{32}
}
//**********************************************************
// Cache on disk related events
//**********************************************************
type CacheEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Event:
// *CacheEvent_Error
// *CacheEvent_LocationChangedSuccess
// *CacheEvent_ChangeLocalCacheFinished
Event isCacheEvent_Event `protobuf_oneof:"event"`
}
func (x *CacheEvent) Reset() {
*x = CacheEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CacheEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CacheEvent) ProtoMessage() {}
func (x *CacheEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 CacheEvent.ProtoReflect.Descriptor instead.
func (*CacheEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{33}
}
func (m *CacheEvent) GetEvent() isCacheEvent_Event {
if m != nil {
return m.Event
}
return nil
}
func (x *CacheEvent) GetError() *CacheErrorEvent {
if x, ok := x.GetEvent().(*CacheEvent_Error); ok {
return x.Error
}
return nil
}
func (x *CacheEvent) GetLocationChangedSuccess() *CacheLocationChangeSuccessEvent {
if x, ok := x.GetEvent().(*CacheEvent_LocationChangedSuccess); ok {
return x.LocationChangedSuccess
}
return nil
}
func (x *CacheEvent) GetChangeLocalCacheFinished() *ChangeLocalCacheFinishedEvent {
if x, ok := x.GetEvent().(*CacheEvent_ChangeLocalCacheFinished); ok {
return x.ChangeLocalCacheFinished
}
return nil
}
type isCacheEvent_Event interface {
isCacheEvent_Event()
}
type CacheEvent_Error struct {
Error *CacheErrorEvent `protobuf:"bytes,1,opt,name=error,proto3,oneof"`
}
type CacheEvent_LocationChangedSuccess struct {
LocationChangedSuccess *CacheLocationChangeSuccessEvent `protobuf:"bytes,2,opt,name=locationChangedSuccess,proto3,oneof"`
}
type CacheEvent_ChangeLocalCacheFinished struct {
ChangeLocalCacheFinished *ChangeLocalCacheFinishedEvent `protobuf:"bytes,3,opt,name=changeLocalCacheFinished,proto3,oneof"`
}
func (*CacheEvent_Error) isCacheEvent_Event() {}
func (*CacheEvent_LocationChangedSuccess) isCacheEvent_Event() {}
func (*CacheEvent_ChangeLocalCacheFinished) isCacheEvent_Event() {}
type CacheErrorEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Type CacheErrorType `protobuf:"varint,1,opt,name=type,proto3,enum=bridgerpc.CacheErrorType" json:"type,omitempty"`
}
func (x *CacheErrorEvent) Reset() {
*x = CacheErrorEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CacheErrorEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CacheErrorEvent) ProtoMessage() {}
func (x *CacheErrorEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 CacheErrorEvent.ProtoReflect.Descriptor instead.
func (*CacheErrorEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{34}
}
func (x *CacheErrorEvent) GetType() CacheErrorType {
if x != nil {
return x.Type
}
return CacheErrorType_CACHE_UNAVAILABLE_ERROR
}
type CacheLocationChangeSuccessEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *CacheLocationChangeSuccessEvent) Reset() {
*x = CacheLocationChangeSuccessEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CacheLocationChangeSuccessEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CacheLocationChangeSuccessEvent) ProtoMessage() {}
func (x *CacheLocationChangeSuccessEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 CacheLocationChangeSuccessEvent.ProtoReflect.Descriptor instead.
func (*CacheLocationChangeSuccessEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{35}
}
type ChangeLocalCacheFinishedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *ChangeLocalCacheFinishedEvent) Reset() {
*x = ChangeLocalCacheFinishedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ChangeLocalCacheFinishedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ChangeLocalCacheFinishedEvent) ProtoMessage() {}
func (x *ChangeLocalCacheFinishedEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 ChangeLocalCacheFinishedEvent.ProtoReflect.Descriptor instead.
func (*ChangeLocalCacheFinishedEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{36}
}
//**********************************************************
// Mail settings related events
//**********************************************************
type MailSettingsEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Event:
// *MailSettingsEvent_Error
// *MailSettingsEvent_UseSslForSmtpFinished
// *MailSettingsEvent_ChangePortsFinished
Event isMailSettingsEvent_Event `protobuf_oneof:"event"`
}
func (x *MailSettingsEvent) Reset() {
*x = MailSettingsEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[37]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MailSettingsEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MailSettingsEvent) ProtoMessage() {}
func (x *MailSettingsEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 MailSettingsEvent.ProtoReflect.Descriptor instead.
func (*MailSettingsEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{37}
}
func (m *MailSettingsEvent) GetEvent() isMailSettingsEvent_Event {
if m != nil {
return m.Event
}
return nil
}
func (x *MailSettingsEvent) GetError() *MailSettingsErrorEvent {
if x, ok := x.GetEvent().(*MailSettingsEvent_Error); ok {
return x.Error
}
return nil
}
func (x *MailSettingsEvent) GetUseSslForSmtpFinished() *UseSslForSmtpFinishedEvent {
if x, ok := x.GetEvent().(*MailSettingsEvent_UseSslForSmtpFinished); ok {
return x.UseSslForSmtpFinished
}
return nil
}
func (x *MailSettingsEvent) GetChangePortsFinished() *ChangePortsFinishedEvent {
if x, ok := x.GetEvent().(*MailSettingsEvent_ChangePortsFinished); ok {
return x.ChangePortsFinished
}
return nil
}
type isMailSettingsEvent_Event interface {
isMailSettingsEvent_Event()
}
type MailSettingsEvent_Error struct {
Error *MailSettingsErrorEvent `protobuf:"bytes,1,opt,name=error,proto3,oneof"`
}
type MailSettingsEvent_UseSslForSmtpFinished struct {
UseSslForSmtpFinished *UseSslForSmtpFinishedEvent `protobuf:"bytes,2,opt,name=useSslForSmtpFinished,proto3,oneof"`
}
type MailSettingsEvent_ChangePortsFinished struct {
ChangePortsFinished *ChangePortsFinishedEvent `protobuf:"bytes,3,opt,name=changePortsFinished,proto3,oneof"`
}
func (*MailSettingsEvent_Error) isMailSettingsEvent_Event() {}
func (*MailSettingsEvent_UseSslForSmtpFinished) isMailSettingsEvent_Event() {}
func (*MailSettingsEvent_ChangePortsFinished) isMailSettingsEvent_Event() {}
type MailSettingsErrorEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Type MailSettingsErrorType `protobuf:"varint,1,opt,name=type,proto3,enum=bridgerpc.MailSettingsErrorType" json:"type,omitempty"`
}
func (x *MailSettingsErrorEvent) Reset() {
*x = MailSettingsErrorEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[38]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MailSettingsErrorEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MailSettingsErrorEvent) ProtoMessage() {}
func (x *MailSettingsErrorEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 MailSettingsErrorEvent.ProtoReflect.Descriptor instead.
func (*MailSettingsErrorEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{38}
}
func (x *MailSettingsErrorEvent) GetType() MailSettingsErrorType {
if x != nil {
return x.Type
}
return MailSettingsErrorType_IMAP_PORT_ISSUE
}
type UseSslForSmtpFinishedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *UseSslForSmtpFinishedEvent) Reset() {
*x = UseSslForSmtpFinishedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[39]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UseSslForSmtpFinishedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UseSslForSmtpFinishedEvent) ProtoMessage() {}
func (x *UseSslForSmtpFinishedEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 UseSslForSmtpFinishedEvent.ProtoReflect.Descriptor instead.
func (*UseSslForSmtpFinishedEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{39}
}
type ChangePortsFinishedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *ChangePortsFinishedEvent) Reset() {
*x = ChangePortsFinishedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[40]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ChangePortsFinishedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ChangePortsFinishedEvent) ProtoMessage() {}
func (x *ChangePortsFinishedEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 ChangePortsFinishedEvent.ProtoReflect.Descriptor instead.
func (*ChangePortsFinishedEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{40}
}
//**********************************************************
// keychain related events
//**********************************************************
type KeychainEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Event:
// *KeychainEvent_ChangeKeychainFinished
// *KeychainEvent_HasNoKeychain
// *KeychainEvent_RebuildKeychain
Event isKeychainEvent_Event `protobuf_oneof:"event"`
}
func (x *KeychainEvent) Reset() {
*x = KeychainEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[41]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *KeychainEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*KeychainEvent) ProtoMessage() {}
func (x *KeychainEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 KeychainEvent.ProtoReflect.Descriptor instead.
func (*KeychainEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{41}
}
func (m *KeychainEvent) GetEvent() isKeychainEvent_Event {
if m != nil {
return m.Event
}
return nil
}
func (x *KeychainEvent) GetChangeKeychainFinished() *ChangeKeychainFinishedEvent {
if x, ok := x.GetEvent().(*KeychainEvent_ChangeKeychainFinished); ok {
return x.ChangeKeychainFinished
}
return nil
}
func (x *KeychainEvent) GetHasNoKeychain() *HasNoKeychainEvent {
if x, ok := x.GetEvent().(*KeychainEvent_HasNoKeychain); ok {
return x.HasNoKeychain
}
return nil
}
func (x *KeychainEvent) GetRebuildKeychain() *RebuildKeychainEvent {
if x, ok := x.GetEvent().(*KeychainEvent_RebuildKeychain); ok {
return x.RebuildKeychain
}
return nil
}
type isKeychainEvent_Event interface {
isKeychainEvent_Event()
}
type KeychainEvent_ChangeKeychainFinished struct {
ChangeKeychainFinished *ChangeKeychainFinishedEvent `protobuf:"bytes,1,opt,name=changeKeychainFinished,proto3,oneof"`
}
type KeychainEvent_HasNoKeychain struct {
HasNoKeychain *HasNoKeychainEvent `protobuf:"bytes,2,opt,name=hasNoKeychain,proto3,oneof"`
}
type KeychainEvent_RebuildKeychain struct {
RebuildKeychain *RebuildKeychainEvent `protobuf:"bytes,3,opt,name=rebuildKeychain,proto3,oneof"`
}
func (*KeychainEvent_ChangeKeychainFinished) isKeychainEvent_Event() {}
func (*KeychainEvent_HasNoKeychain) isKeychainEvent_Event() {}
func (*KeychainEvent_RebuildKeychain) isKeychainEvent_Event() {}
type ChangeKeychainFinishedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *ChangeKeychainFinishedEvent) Reset() {
*x = ChangeKeychainFinishedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[42]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ChangeKeychainFinishedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ChangeKeychainFinishedEvent) ProtoMessage() {}
func (x *ChangeKeychainFinishedEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 ChangeKeychainFinishedEvent.ProtoReflect.Descriptor instead.
func (*ChangeKeychainFinishedEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{42}
}
type HasNoKeychainEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *HasNoKeychainEvent) Reset() {
*x = HasNoKeychainEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[43]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *HasNoKeychainEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HasNoKeychainEvent) ProtoMessage() {}
func (x *HasNoKeychainEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 HasNoKeychainEvent.ProtoReflect.Descriptor instead.
func (*HasNoKeychainEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{43}
}
type RebuildKeychainEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *RebuildKeychainEvent) Reset() {
*x = RebuildKeychainEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[44]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RebuildKeychainEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RebuildKeychainEvent) ProtoMessage() {}
func (x *RebuildKeychainEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 RebuildKeychainEvent.ProtoReflect.Descriptor instead.
func (*RebuildKeychainEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{44}
}
//**********************************************************
// Mail related events
//**********************************************************
type MailEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Event:
// *MailEvent_NoActiveKeyForRecipientEvent
// *MailEvent_AddressChanged
// *MailEvent_AddressChangedLogout
// *MailEvent_ApiCertIssue
Event isMailEvent_Event `protobuf_oneof:"event"`
}
func (x *MailEvent) Reset() {
*x = MailEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[45]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MailEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MailEvent) ProtoMessage() {}
func (x *MailEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 MailEvent.ProtoReflect.Descriptor instead.
func (*MailEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{45}
}
func (m *MailEvent) GetEvent() isMailEvent_Event {
if m != nil {
return m.Event
}
return nil
}
func (x *MailEvent) GetNoActiveKeyForRecipientEvent() *NoActiveKeyForRecipientEvent {
if x, ok := x.GetEvent().(*MailEvent_NoActiveKeyForRecipientEvent); ok {
return x.NoActiveKeyForRecipientEvent
}
return nil
}
func (x *MailEvent) GetAddressChanged() *AddressChangedEvent {
if x, ok := x.GetEvent().(*MailEvent_AddressChanged); ok {
return x.AddressChanged
}
return nil
}
func (x *MailEvent) GetAddressChangedLogout() *AddressChangedLogoutEvent {
if x, ok := x.GetEvent().(*MailEvent_AddressChangedLogout); ok {
return x.AddressChangedLogout
}
return nil
}
func (x *MailEvent) GetApiCertIssue() *ApiCertIssueEvent {
if x, ok := x.GetEvent().(*MailEvent_ApiCertIssue); ok {
return x.ApiCertIssue
}
return nil
}
type isMailEvent_Event interface {
isMailEvent_Event()
}
type MailEvent_NoActiveKeyForRecipientEvent struct {
NoActiveKeyForRecipientEvent *NoActiveKeyForRecipientEvent `protobuf:"bytes,1,opt,name=noActiveKeyForRecipientEvent,proto3,oneof"`
}
type MailEvent_AddressChanged struct {
AddressChanged *AddressChangedEvent `protobuf:"bytes,2,opt,name=addressChanged,proto3,oneof"`
}
type MailEvent_AddressChangedLogout struct {
AddressChangedLogout *AddressChangedLogoutEvent `protobuf:"bytes,3,opt,name=addressChangedLogout,proto3,oneof"`
}
type MailEvent_ApiCertIssue struct {
ApiCertIssue *ApiCertIssueEvent `protobuf:"bytes,6,opt,name=apiCertIssue,proto3,oneof"`
}
func (*MailEvent_NoActiveKeyForRecipientEvent) isMailEvent_Event() {}
func (*MailEvent_AddressChanged) isMailEvent_Event() {}
func (*MailEvent_AddressChangedLogout) isMailEvent_Event() {}
func (*MailEvent_ApiCertIssue) isMailEvent_Event() {}
type NoActiveKeyForRecipientEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Email string `protobuf:"bytes,1,opt,name=email,proto3" json:"email,omitempty"`
}
func (x *NoActiveKeyForRecipientEvent) Reset() {
*x = NoActiveKeyForRecipientEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[46]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NoActiveKeyForRecipientEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NoActiveKeyForRecipientEvent) ProtoMessage() {}
func (x *NoActiveKeyForRecipientEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 NoActiveKeyForRecipientEvent.ProtoReflect.Descriptor instead.
func (*NoActiveKeyForRecipientEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{46}
}
func (x *NoActiveKeyForRecipientEvent) GetEmail() string {
if x != nil {
return x.Email
}
return ""
}
type AddressChangedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` // TODO: user event ?
}
func (x *AddressChangedEvent) Reset() {
*x = AddressChangedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[47]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AddressChangedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AddressChangedEvent) ProtoMessage() {}
func (x *AddressChangedEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 AddressChangedEvent.ProtoReflect.Descriptor instead.
func (*AddressChangedEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{47}
}
func (x *AddressChangedEvent) GetAddress() string {
if x != nil {
return x.Address
}
return ""
}
type AddressChangedLogoutEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` // TODO: user event ?
}
func (x *AddressChangedLogoutEvent) Reset() {
*x = AddressChangedLogoutEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[48]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AddressChangedLogoutEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AddressChangedLogoutEvent) ProtoMessage() {}
func (x *AddressChangedLogoutEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 AddressChangedLogoutEvent.ProtoReflect.Descriptor instead.
func (*AddressChangedLogoutEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{48}
}
func (x *AddressChangedLogoutEvent) GetAddress() string {
if x != nil {
return x.Address
}
return ""
}
type ApiCertIssueEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *ApiCertIssueEvent) Reset() {
*x = ApiCertIssueEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[49]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ApiCertIssueEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ApiCertIssueEvent) ProtoMessage() {}
func (x *ApiCertIssueEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 ApiCertIssueEvent.ProtoReflect.Descriptor instead.
func (*ApiCertIssueEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{49}
}
type UserEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Event:
// *UserEvent_ToggleSplitModeFinished
// *UserEvent_UserDisconnected
// *UserEvent_UserChanged
Event isUserEvent_Event `protobuf_oneof:"event"`
}
func (x *UserEvent) Reset() {
*x = UserEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[50]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UserEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UserEvent) ProtoMessage() {}
func (x *UserEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 UserEvent.ProtoReflect.Descriptor instead.
func (*UserEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{50}
}
func (m *UserEvent) GetEvent() isUserEvent_Event {
if m != nil {
return m.Event
}
return nil
}
func (x *UserEvent) GetToggleSplitModeFinished() *ToggleSplitModeFinishedEvent {
if x, ok := x.GetEvent().(*UserEvent_ToggleSplitModeFinished); ok {
return x.ToggleSplitModeFinished
}
return nil
}
func (x *UserEvent) GetUserDisconnected() *UserDisconnectedEvent {
if x, ok := x.GetEvent().(*UserEvent_UserDisconnected); ok {
return x.UserDisconnected
}
return nil
}
func (x *UserEvent) GetUserChanged() *UserChangedEvent {
if x, ok := x.GetEvent().(*UserEvent_UserChanged); ok {
return x.UserChanged
}
return nil
}
type isUserEvent_Event interface {
isUserEvent_Event()
}
type UserEvent_ToggleSplitModeFinished struct {
ToggleSplitModeFinished *ToggleSplitModeFinishedEvent `protobuf:"bytes,1,opt,name=toggleSplitModeFinished,proto3,oneof"`
}
type UserEvent_UserDisconnected struct {
UserDisconnected *UserDisconnectedEvent `protobuf:"bytes,2,opt,name=userDisconnected,proto3,oneof"`
}
type UserEvent_UserChanged struct {
UserChanged *UserChangedEvent `protobuf:"bytes,3,opt,name=userChanged,proto3,oneof"`
}
func (*UserEvent_ToggleSplitModeFinished) isUserEvent_Event() {}
func (*UserEvent_UserDisconnected) isUserEvent_Event() {}
func (*UserEvent_UserChanged) isUserEvent_Event() {}
type ToggleSplitModeFinishedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID,omitempty"`
}
func (x *ToggleSplitModeFinishedEvent) Reset() {
*x = ToggleSplitModeFinishedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[51]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ToggleSplitModeFinishedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ToggleSplitModeFinishedEvent) ProtoMessage() {}
func (x *ToggleSplitModeFinishedEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 ToggleSplitModeFinishedEvent.ProtoReflect.Descriptor instead.
func (*ToggleSplitModeFinishedEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{51}
}
func (x *ToggleSplitModeFinishedEvent) GetUserID() string {
if x != nil {
return x.UserID
}
return ""
}
type UserDisconnectedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"` // TODO: isn't it userID ?
}
func (x *UserDisconnectedEvent) Reset() {
*x = UserDisconnectedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[52]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UserDisconnectedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UserDisconnectedEvent) ProtoMessage() {}
func (x *UserDisconnectedEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 UserDisconnectedEvent.ProtoReflect.Descriptor instead.
func (*UserDisconnectedEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{52}
}
func (x *UserDisconnectedEvent) GetUsername() string {
if x != nil {
return x.Username
}
return ""
}
type UserChangedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
User *User `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"`
}
func (x *UserChangedEvent) Reset() {
*x = UserChangedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_bridge_rpc_proto_msgTypes[53]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UserChangedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UserChangedEvent) ProtoMessage() {}
func (x *UserChangedEvent) ProtoReflect() protoreflect.Message {
mi := &file_bridge_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 UserChangedEvent.ProtoReflect.Descriptor instead.
func (*UserChangedEvent) Descriptor() ([]byte, []int) {
return file_bridge_rpc_proto_rawDescGZIP(), []int{53}
}
func (x *UserChangedEvent) GetUser() *User {
if x != nil {
return x.User
}
return nil
}
var File_bridge_rpc_proto protoreflect.FileDescriptor
var file_bridge_rpc_proto_rawDesc = []byte{
0x0a, 0x10, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x12, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x1a, 0x1b, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65,
0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70,
0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x2b, 0x0a, 0x0d, 0x50, 0x6f,
0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x78,
0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02,
0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x22, 0x92, 0x01, 0x0a, 0x10, 0x52, 0x65, 0x70, 0x6f,
0x72, 0x74, 0x42, 0x75, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b,
0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18,
0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x65, 0x6d, 0x61, 0x69,
0x6c, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x65,
0x6d, 0x61, 0x69, 0x6c, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e,
0x63, 0x6c, 0x75, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52,
0x0b, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x22, 0x46, 0x0a, 0x0c,
0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08,
0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 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, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73,
0x77, 0x6f, 0x72, 0x64, 0x22, 0x2f, 0x0a, 0x11, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x41, 0x62, 0x6f,
0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65,
0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65,
0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x69, 0x0a, 0x17, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4c,
0x6f, 0x63, 0x61, 0x6c, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x28, 0x0a, 0x0f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x69, 0x73, 0x6b, 0x43, 0x61,
0x63, 0x68, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x65, 0x6e, 0x61, 0x62, 0x6c,
0x65, 0x44, 0x69, 0x73, 0x6b, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x64, 0x69,
0x73, 0x6b, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x6b, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x61, 0x74, 0x68,
0x22, 0x4c, 0x0a, 0x12, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6d, 0x61, 0x70, 0x50, 0x6f,
0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x70, 0x50, 0x6f,
0x72, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x6d, 0x74, 0x70, 0x50, 0x6f, 0x72, 0x74, 0x18, 0x02,
0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x73, 0x6d, 0x74, 0x70, 0x50, 0x6f, 0x72, 0x74, 0x22, 0x3a,
0x0a, 0x1a, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x63, 0x68,
0x61, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09,
0x6b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52,
0x09, 0x6b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x73, 0x22, 0xac, 0x02, 0x0a, 0x04, 0x55,
0x73, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12,
0x1e, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x54, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x54, 0x65, 0x78, 0x74, 0x12,
0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28,
0x08, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x73,
0x70, 0x6c, 0x69, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
0x73, 0x70, 0x6c, 0x69, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x65, 0x74,
0x75, 0x70, 0x47, 0x75, 0x69, 0x64, 0x65, 0x53, 0x65, 0x65, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28,
0x08, 0x52, 0x0e, 0x73, 0x65, 0x74, 0x75, 0x70, 0x47, 0x75, 0x69, 0x64, 0x65, 0x53, 0x65, 0x65,
0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x07,
0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x73, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12,
0x1e, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x08, 0x20,
0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12,
0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28,
0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x61,
0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09,
0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x22, 0x46, 0x0a, 0x14, 0x55, 0x73, 0x65,
0x72, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74,
0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76,
0x65, 0x22, 0x39, 0x0a, 0x10, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63,
0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x22, 0x4d, 0x0a, 0x19,
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x65, 0x4d, 0x61,
0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65,
0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49,
0x44, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01,
0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0xa3, 0x03, 0x0a, 0x0b,
0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x03, 0x61,
0x70, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67,
0x65, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x70, 0x70, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52,
0x03, 0x61, 0x70, 0x70, 0x12, 0x2d, 0x0a, 0x05, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x02, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e,
0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x6f,
0x67, 0x69, 0x6e, 0x12, 0x30, 0x0a, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e,
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x06, 0x75,
0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x2d, 0x0a, 0x05, 0x63, 0x61, 0x63, 0x68, 0x65, 0x18, 0x04,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63,
0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x05, 0x63,
0x61, 0x63, 0x68, 0x65, 0x12, 0x42, 0x0a, 0x0c, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x74, 0x74,
0x69, 0x6e, 0x67, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x62, 0x72, 0x69,
0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x74, 0x74, 0x69,
0x6e, 0x67, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x6d, 0x61, 0x69, 0x6c,
0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x36, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x63,
0x68, 0x61, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x62, 0x72, 0x69,
0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x45,
0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e,
0x12, 0x2a, 0x0a, 0x04, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14,
0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x69, 0x6c, 0x45,
0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x04, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x2a, 0x0a, 0x04,
0x75, 0x73, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x62, 0x72, 0x69,
0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74,
0x48, 0x00, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e,
0x74, 0x22, 0xae, 0x04, 0x0a, 0x08, 0x41, 0x70, 0x70, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x48,
0x0a, 0x0e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72,
0x70, 0x63, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75,
0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x51, 0x0a, 0x11, 0x61, 0x75, 0x74, 0x6f,
0x73, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x02, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e,
0x41, 0x75, 0x74, 0x6f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65,
0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x11, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x74,
0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x45, 0x0a, 0x0d, 0x72,
0x65, 0x73, 0x65, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x52,
0x65, 0x73, 0x65, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e,
0x74, 0x48, 0x00, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x65, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68,
0x65, 0x64, 0x12, 0x51, 0x0a, 0x11, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x75, 0x67, 0x46,
0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e,
0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74,
0x42, 0x75, 0x67, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74,
0x48, 0x00, 0x52, 0x11, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x75, 0x67, 0x46, 0x69, 0x6e,
0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x4e, 0x0a, 0x10, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x42,
0x75, 0x67, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x20, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6f,
0x72, 0x74, 0x42, 0x75, 0x67, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x45, 0x76, 0x65, 0x6e,
0x74, 0x48, 0x00, 0x52, 0x10, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x75, 0x67, 0x53, 0x75,
0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x48, 0x0a, 0x0e, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x42,
0x75, 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e,
0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74,
0x42, 0x75, 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52,
0x0e, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x75, 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12,
0x48, 0x0a, 0x0e, 0x73, 0x68, 0x6f, 0x77, 0x4d, 0x61, 0x69, 0x6e, 0x57, 0x69, 0x6e, 0x64, 0x6f,
0x77, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65,
0x72, 0x70, 0x63, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4d, 0x61, 0x69, 0x6e, 0x57, 0x69, 0x6e, 0x64,
0x6f, 0x77, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x77, 0x4d,
0x61, 0x69, 0x6e, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65,
0x6e, 0x74, 0x22, 0x33, 0x0a, 0x13, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x53, 0x74,
0x61, 0x74, 0x75, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e,
0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x6f,
0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x22, 0x18, 0x0a, 0x16, 0x41, 0x75, 0x74, 0x6f, 0x73,
0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e,
0x74, 0x22, 0x14, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x65, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68,
0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x18, 0x0a, 0x16, 0x52, 0x65, 0x70, 0x6f, 0x72,
0x74, 0x42, 0x75, 0x67, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e,
0x74, 0x22, 0x17, 0x0a, 0x15, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x75, 0x67, 0x53, 0x75,
0x63, 0x63, 0x65, 0x73, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x15, 0x0a, 0x13, 0x52, 0x65,
0x70, 0x6f, 0x72, 0x74, 0x42, 0x75, 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x45, 0x76, 0x65, 0x6e,
0x74, 0x22, 0x15, 0x0a, 0x13, 0x53, 0x68, 0x6f, 0x77, 0x4d, 0x61, 0x69, 0x6e, 0x57, 0x69, 0x6e,
0x64, 0x6f, 0x77, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0xb1, 0x02, 0x0a, 0x0a, 0x4c, 0x6f, 0x67,
0x69, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72,
0x70, 0x63, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x45, 0x76, 0x65,
0x6e, 0x74, 0x48, 0x00, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x47, 0x0a, 0x0c, 0x74,
0x66, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x21, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f,
0x67, 0x69, 0x6e, 0x54, 0x66, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x45,
0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x74, 0x66, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x65, 0x64, 0x12, 0x60, 0x0a, 0x14, 0x74, 0x77, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x77,
0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x4c,
0x6f, 0x67, 0x69, 0x6e, 0x54, 0x77, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x73,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00,
0x52, 0x14, 0x74, 0x77, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x3b, 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68,
0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67,
0x65, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68,
0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73,
0x68, 0x65, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x5a, 0x0a, 0x0f,
0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12,
0x2d, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e,
0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x45,
0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x18,
0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x34, 0x0a, 0x16, 0x4c, 0x6f, 0x67, 0x69,
0x6e, 0x54, 0x66, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65,
0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x21,
0x0a, 0x1f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x54, 0x77, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f,
0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e,
0x74, 0x22, 0x44, 0x0a, 0x12, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68,
0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x77, 0x61, 0x73, 0x41, 0x6c,
0x72, 0x65, 0x61, 0x64, 0x79, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x18, 0x01, 0x20,
0x01, 0x28, 0x08, 0x52, 0x12, 0x77, 0x61, 0x73, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x4c,
0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x22, 0x96, 0x04, 0x0a, 0x0b, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x33, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72,
0x70, 0x63, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x45, 0x76,
0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x45, 0x0a, 0x0b,
0x6d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x61, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x21, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x61, 0x64, 0x79, 0x45,
0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x52, 0x65,
0x61, 0x64, 0x79, 0x12, 0x5d, 0x0a, 0x13, 0x6d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x73,
0x74, 0x61, 0x72, 0x74, 0x4e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x29, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x70, 0x64,
0x61, 0x74, 0x65, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74,
0x4e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x13, 0x6d,
0x61, 0x6e, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4e, 0x65, 0x65, 0x64,
0x65, 0x64, 0x12, 0x33, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x1b, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00,
0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x12, 0x58, 0x0a, 0x13, 0x73, 0x69, 0x6c, 0x65, 0x6e,
0x74, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x18, 0x05,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63,
0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x69, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73,
0x74, 0x61, 0x72, 0x74, 0x4e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x48, 0x00, 0x52, 0x13, 0x73, 0x69,
0x6c, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4e, 0x65, 0x65, 0x64, 0x65,
0x64, 0x12, 0x4c, 0x0a, 0x0f, 0x69, 0x73, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72,
0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x62, 0x72, 0x69,
0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x73, 0x4c,
0x61, 0x74, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0f,
0x69, 0x73, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
0x46, 0x0a, 0x0d, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64,
0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72,
0x70, 0x63, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x46, 0x69,
0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0d, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x46,
0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74,
0x22, 0x42, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x45,
0x76, 0x65, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x55,
0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04,
0x74, 0x79, 0x70, 0x65, 0x22, 0x32, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61,
0x6e, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x61, 0x64, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 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, 0x22, 0x20, 0x0a, 0x1e, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4e,
0x65, 0x65, 0x64, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x2c, 0x0a, 0x10, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 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, 0x22, 0x1b, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x53, 0x69, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4e,
0x65, 0x65, 0x64, 0x65, 0x64, 0x22, 0x17, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49,
0x73, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x15,
0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x46, 0x69, 0x6e,
0x69, 0x73, 0x68, 0x65, 0x64, 0x22, 0x97, 0x02, 0x0a, 0x0a, 0x43, 0x61, 0x63, 0x68, 0x65, 0x45,
0x76, 0x65, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e,
0x43, 0x61, 0x63, 0x68, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48,
0x00, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x64, 0x0a, 0x16, 0x6c, 0x6f, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x53, 0x75, 0x63, 0x63, 0x65,
0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67,
0x65, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x45,
0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x16, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x66,
0x0a, 0x18, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x61, 0x63,
0x68, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x28, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61,
0x6e, 0x67, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x69, 0x6e,
0x69, 0x73, 0x68, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x18, 0x63, 0x68,
0x61, 0x6e, 0x67, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x69,
0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x22,
0x40, 0x0a, 0x0f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x45, 0x76, 0x65,
0x6e, 0x74, 0x12, 0x2d, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
0x32, 0x19, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x63,
0x68, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70,
0x65, 0x22, 0x21, 0x0a, 0x1f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x45,
0x76, 0x65, 0x6e, 0x74, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4c, 0x6f,
0x63, 0x61, 0x6c, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64,
0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x8f, 0x02, 0x0a, 0x11, 0x4d, 0x61, 0x69, 0x6c, 0x53, 0x65,
0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x05, 0x65,
0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x62, 0x72, 0x69,
0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x74, 0x74, 0x69,
0x6e, 0x67, 0x73, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52,
0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x5d, 0x0a, 0x15, 0x75, 0x73, 0x65, 0x53, 0x73, 0x6c,
0x46, 0x6f, 0x72, 0x53, 0x6d, 0x74, 0x70, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70,
0x63, 0x2e, 0x55, 0x73, 0x65, 0x53, 0x73, 0x6c, 0x46, 0x6f, 0x72, 0x53, 0x6d, 0x74, 0x70, 0x46,
0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x15,
0x75, 0x73, 0x65, 0x53, 0x73, 0x6c, 0x46, 0x6f, 0x72, 0x53, 0x6d, 0x74, 0x70, 0x46, 0x69, 0x6e,
0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x57, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50,
0x6f, 0x72, 0x74, 0x73, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x23, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x43,
0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68,
0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x13, 0x63, 0x68, 0x61, 0x6e, 0x67,
0x65, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x42, 0x07,
0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x4e, 0x0a, 0x16, 0x4d, 0x61, 0x69, 0x6c, 0x53,
0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x45, 0x76, 0x65, 0x6e,
0x74, 0x12, 0x34, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x20, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x69, 0x6c,
0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70,
0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x1c, 0x0a, 0x1a, 0x55, 0x73, 0x65, 0x53, 0x73,
0x6c, 0x46, 0x6f, 0x72, 0x53, 0x6d, 0x74, 0x70, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64,
0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x1a, 0x0a, 0x18, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50,
0x6f, 0x72, 0x74, 0x73, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e,
0x74, 0x22, 0x8e, 0x02, 0x0a, 0x0d, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x45, 0x76,
0x65, 0x6e, 0x74, 0x12, 0x60, 0x0a, 0x16, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4b, 0x65, 0x79,
0x63, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e,
0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x69,
0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x16, 0x63,
0x68, 0x61, 0x6e, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x69, 0x6e,
0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x45, 0x0a, 0x0d, 0x68, 0x61, 0x73, 0x4e, 0x6f, 0x4b, 0x65,
0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x62,
0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x48, 0x61, 0x73, 0x4e, 0x6f, 0x4b, 0x65,
0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x68,
0x61, 0x73, 0x4e, 0x6f, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x4b, 0x0a, 0x0f,
0x72, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x18,
0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70,
0x63, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69,
0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x72, 0x65, 0x62, 0x75, 0x69, 0x6c,
0x64, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65,
0x6e, 0x74, 0x22, 0x1d, 0x0a, 0x1b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x63,
0x68, 0x61, 0x69, 0x6e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e,
0x74, 0x22, 0x14, 0x0a, 0x12, 0x48, 0x61, 0x73, 0x4e, 0x6f, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61,
0x69, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x16, 0x0a, 0x14, 0x52, 0x65, 0x62, 0x75, 0x69,
0x6c, 0x64, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22,
0xed, 0x02, 0x0a, 0x09, 0x4d, 0x61, 0x69, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x6d, 0x0a,
0x1c, 0x6e, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4b, 0x65, 0x79, 0x46, 0x6f, 0x72, 0x52,
0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e,
0x4e, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4b, 0x65, 0x79, 0x46, 0x6f, 0x72, 0x52, 0x65,
0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1c,
0x6e, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4b, 0x65, 0x79, 0x46, 0x6f, 0x72, 0x52, 0x65,
0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x48, 0x0a, 0x0e,
0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63,
0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x45,
0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x43,
0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x12, 0x5a, 0x0a, 0x14, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x4c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x18, 0x03,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63,
0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x4c,
0x6f, 0x67, 0x6f, 0x75, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x14, 0x61, 0x64,
0x64, 0x72, 0x65, 0x73, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x4c, 0x6f, 0x67, 0x6f,
0x75, 0x74, 0x12, 0x42, 0x0a, 0x0c, 0x61, 0x70, 0x69, 0x43, 0x65, 0x72, 0x74, 0x49, 0x73, 0x73,
0x75, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67,
0x65, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x70, 0x69, 0x43, 0x65, 0x72, 0x74, 0x49, 0x73, 0x73, 0x75,
0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x61, 0x70, 0x69, 0x43, 0x65, 0x72,
0x74, 0x49, 0x73, 0x73, 0x75, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x22,
0x34, 0x0a, 0x1c, 0x4e, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4b, 0x65, 0x79, 0x46, 0x6f,
0x72, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12,
0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
0x65, 0x6d, 0x61, 0x69, 0x6c, 0x22, 0x2f, 0x0a, 0x13, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07,
0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61,
0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x35, 0x0a, 0x19, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x4c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x45, 0x76,
0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x13, 0x0a,
0x11, 0x41, 0x70, 0x69, 0x43, 0x65, 0x72, 0x74, 0x49, 0x73, 0x73, 0x75, 0x65, 0x45, 0x76, 0x65,
0x6e, 0x74, 0x22, 0x8a, 0x02, 0x0a, 0x09, 0x55, 0x73, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74,
0x12, 0x63, 0x0a, 0x17, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x4d,
0x6f, 0x64, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x27, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x6f,
0x67, 0x67, 0x6c, 0x65, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x46, 0x69, 0x6e,
0x69, 0x73, 0x68, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x17, 0x74, 0x6f,
0x67, 0x67, 0x6c, 0x65, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x46, 0x69, 0x6e,
0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x4e, 0x0a, 0x10, 0x75, 0x73, 0x65, 0x72, 0x44, 0x69, 0x73,
0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x20, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72,
0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e,
0x74, 0x48, 0x00, 0x52, 0x10, 0x75, 0x73, 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e,
0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x3f, 0x0a, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x43, 0x68, 0x61,
0x6e, 0x67, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x62, 0x72, 0x69,
0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67,
0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x43,
0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x22,
0x36, 0x0a, 0x1c, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x4d, 0x6f,
0x64, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12,
0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x33, 0x0a, 0x15, 0x55, 0x73, 0x65, 0x72, 0x44,
0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74,
0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x37, 0x0a, 0x10,
0x55, 0x73, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74,
0x12, 0x23, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f,
0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52,
0x04, 0x75, 0x73, 0x65, 0x72, 0x2a, 0xa2, 0x01, 0x0a, 0x0e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x45,
0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x55, 0x53, 0x45, 0x52,
0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52, 0x44, 0x5f, 0x45, 0x52,
0x52, 0x4f, 0x52, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x46, 0x52, 0x45, 0x45, 0x5f, 0x55, 0x53,
0x45, 0x52, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49,
0x4f, 0x4e, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x46,
0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x46, 0x41,
0x5f, 0x41, 0x42, 0x4f, 0x52, 0x54, 0x10, 0x04, 0x12, 0x17, 0x0a, 0x13, 0x54, 0x57, 0x4f, 0x5f,
0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52, 0x44, 0x53, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10,
0x05, 0x12, 0x17, 0x0a, 0x13, 0x54, 0x57, 0x4f, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52,
0x44, 0x53, 0x5f, 0x41, 0x42, 0x4f, 0x52, 0x54, 0x10, 0x06, 0x2a, 0x5b, 0x0a, 0x0f, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a,
0x13, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x55, 0x41, 0x4c, 0x5f, 0x45,
0x52, 0x52, 0x4f, 0x52, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45,
0x5f, 0x46, 0x4f, 0x52, 0x43, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x01, 0x12, 0x17,
0x0a, 0x13, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x49, 0x4c, 0x45, 0x4e, 0x54, 0x5f,
0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x02, 0x2a, 0x57, 0x0a, 0x0e, 0x43, 0x61, 0x63, 0x68, 0x65,
0x45, 0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x41, 0x43,
0x48, 0x45, 0x5f, 0x55, 0x4e, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x45,
0x52, 0x52, 0x4f, 0x52, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f,
0x43, 0x41, 0x4e, 0x54, 0x5f, 0x4d, 0x4f, 0x56, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10,
0x01, 0x12, 0x0d, 0x0a, 0x09, 0x44, 0x49, 0x53, 0x4b, 0x5f, 0x46, 0x55, 0x4c, 0x4c, 0x10, 0x02,
0x2a, 0x41, 0x0a, 0x15, 0x4d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73,
0x45, 0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x49, 0x4d, 0x41,
0x50, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x49, 0x53, 0x53, 0x55, 0x45, 0x10, 0x00, 0x12, 0x13,
0x0a, 0x0f, 0x53, 0x4d, 0x54, 0x50, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x49, 0x53, 0x53, 0x55,
0x45, 0x10, 0x01, 0x32, 0xf5, 0x21, 0x0a, 0x09, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x52, 0x70,
0x63, 0x12, 0x40, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x50, 0x6f,
0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x18, 0x2e, 0x62, 0x72, 0x69, 0x64,
0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x08, 0x47, 0x75, 0x69, 0x52, 0x65, 0x61, 0x64, 0x79, 0x12,
0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12,
0x36, 0x0a, 0x04, 0x51, 0x75, 0x69, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a,
0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x39, 0x0a, 0x07, 0x52, 0x65, 0x73, 0x74, 0x61,
0x72, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
0x74, 0x79, 0x12, 0x46, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x4f, 0x6e, 0x53,
0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x12, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x43, 0x0a, 0x0d, 0x53, 0x68,
0x6f, 0x77, 0x4f, 0x6e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x12, 0x16, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12,
0x49, 0x0a, 0x13, 0x53, 0x65, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x70, 0x6c, 0x61, 0x73, 0x68,
0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x12, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x46, 0x0a, 0x10, 0x53, 0x68,
0x6f, 0x77, 0x53, 0x70, 0x6c, 0x61, 0x73, 0x68, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x12, 0x16,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x12, 0x48, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x44, 0x6f, 0x63, 0x6b, 0x49, 0x63, 0x6f,
0x6e, 0x56, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x12, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x45, 0x0a, 0x0f,
0x44, 0x6f, 0x63, 0x6b, 0x49, 0x63, 0x6f, 0x6e, 0x56, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x12,
0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61,
0x6c, 0x75, 0x65, 0x12, 0x48, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x49, 0x73, 0x46, 0x69, 0x72, 0x73,
0x74, 0x47, 0x75, 0x69, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c,
0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x45, 0x0a,
0x0f, 0x49, 0x73, 0x46, 0x69, 0x72, 0x73, 0x74, 0x47, 0x75, 0x69, 0x53, 0x74, 0x61, 0x72, 0x74,
0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x12, 0x46, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x49, 0x73, 0x41, 0x75, 0x74,
0x6f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4f, 0x6e, 0x12, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x43, 0x0a, 0x0d,
0x49, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4f, 0x6e, 0x12, 0x16, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75,
0x65, 0x12, 0x46, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x49, 0x73, 0x42, 0x65, 0x74, 0x61, 0x45, 0x6e,
0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75,
0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x43, 0x0a, 0x0d, 0x49, 0x73, 0x42,
0x65, 0x74, 0x61, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3c,
0x0a, 0x04, 0x47, 0x6f, 0x4f, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3e, 0x0a, 0x0c,
0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73, 0x65, 0x74, 0x12, 0x16, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3f, 0x0a, 0x07,
0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a,
0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3f, 0x0a,
0x07, 0x4c, 0x6f, 0x67, 0x50, 0x61, 0x74, 0x68, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
0x1a, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x43,
0x0a, 0x0b, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x16, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61,
0x6c, 0x75, 0x65, 0x12, 0x48, 0x0a, 0x10, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x4e, 0x6f,
0x74, 0x65, 0x73, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a,
0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x47, 0x0a,
0x0f, 0x4c, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x67, 0x65, 0x4c, 0x69, 0x6e, 0x6b,
0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e,
0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x4a, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6c,
0x6f, 0x72, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53,
0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
0x74, 0x79, 0x12, 0x47, 0x0a, 0x0f, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x53, 0x63, 0x68, 0x65, 0x6d,
0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x4d, 0x0a, 0x15, 0x53,
0x65, 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x43, 0x6c,
0x69, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4a, 0x0a, 0x12, 0x43, 0x75,
0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74,
0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e,
0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74,
0x42, 0x75, 0x67, 0x12, 0x1b, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e,
0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x75, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x38, 0x0a, 0x05, 0x4c, 0x6f, 0x67, 0x69,
0x6e, 0x12, 0x17, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f,
0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
0x74, 0x79, 0x12, 0x3b, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x32, 0x46, 0x41, 0x12, 0x17,
0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12,
0x42, 0x0a, 0x0f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x32, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72,
0x64, 0x73, 0x12, 0x17, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x4c,
0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
0x70, 0x74, 0x79, 0x12, 0x42, 0x0a, 0x0a, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x41, 0x62, 0x6f, 0x72,
0x74, 0x12, 0x1c, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f,
0x67, 0x69, 0x6e, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3d, 0x0a, 0x0b, 0x43, 0x68, 0x65, 0x63, 0x6b,
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3f, 0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c,
0x6c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a,
0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4c, 0x0a, 0x16, 0x53, 0x65, 0x74, 0x49, 0x73,
0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f,
0x6e, 0x12, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x49, 0x0a, 0x13, 0x49, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x6d,
0x61, 0x74, 0x69, 0x63, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x6e, 0x12, 0x16, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65,
0x12, 0x4d, 0x0a, 0x17, 0x53, 0x65, 0x74, 0x49, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x4f, 0x6e,
0x44, 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1a, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f,
0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12,
0x4a, 0x0a, 0x14, 0x49, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x4f, 0x6e, 0x44, 0x69, 0x73, 0x6b,
0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a,
0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x48, 0x0a, 0x10, 0x53,
0x65, 0x74, 0x44, 0x69, 0x73, 0x6b, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12,
0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x45, 0x0a, 0x0d, 0x44, 0x69, 0x73, 0x6b, 0x43, 0x61, 0x63,
0x68, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x4e, 0x0a, 0x10,
0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x61, 0x63, 0x68, 0x65,
0x12, 0x22, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61,
0x6e, 0x67, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x45, 0x0a, 0x0f,
0x53, 0x65, 0x74, 0x49, 0x73, 0x44, 0x6f, 0x48, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12,
0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
0x70, 0x74, 0x79, 0x12, 0x42, 0x0a, 0x0c, 0x49, 0x73, 0x44, 0x6f, 0x48, 0x45, 0x6e, 0x61, 0x62,
0x6c, 0x65, 0x64, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f,
0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x46, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x55, 0x73,
0x65, 0x53, 0x73, 0x6c, 0x46, 0x6f, 0x72, 0x53, 0x6d, 0x74, 0x70, 0x12, 0x1a, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f,
0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12,
0x43, 0x0a, 0x0d, 0x55, 0x73, 0x65, 0x53, 0x73, 0x6c, 0x46, 0x6f, 0x72, 0x53, 0x6d, 0x74, 0x70,
0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x12, 0x40, 0x0a, 0x08, 0x48, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65,
0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e,
0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x42, 0x0a, 0x0b, 0x53, 0x65, 0x74, 0x49, 0x6d, 0x61,
0x70, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3f, 0x0a, 0x08, 0x49, 0x6d,
0x61, 0x70, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1b,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x42, 0x0a, 0x0b, 0x53,
0x65, 0x74, 0x53, 0x6d, 0x74, 0x70, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x1b, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74,
0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12,
0x3f, 0x0a, 0x08, 0x53, 0x6d, 0x74, 0x70, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
0x70, 0x74, 0x79, 0x1a, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65,
0x12, 0x44, 0x0a, 0x0b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x12,
0x1d, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e,
0x67, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x45, 0x0a, 0x0a, 0x49, 0x73, 0x50, 0x6f, 0x72, 0x74,
0x46, 0x72, 0x65, 0x65, 0x12, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75,
0x65, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x53, 0x0a,
0x12, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61,
0x69, 0x6e, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x25, 0x2e, 0x62, 0x72,
0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c,
0x65, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x4a, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74,
0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e,
0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x47,
0x0a, 0x0f, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69,
0x6e, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69,
0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x42, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x55, 0x73,
0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1b,
0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x4c,
0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x07, 0x47,
0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x0f,
0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x12,
0x4b, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x4d,
0x6f, 0x64, 0x65, 0x12, 0x1f, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e,
0x55, 0x73, 0x65, 0x72, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x42, 0x0a, 0x0a,
0x4c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72,
0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
0x12, 0x42, 0x0a, 0x0a, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
0x6d, 0x70, 0x74, 0x79, 0x12, 0x56, 0x0a, 0x16, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72,
0x65, 0x55, 0x73, 0x65, 0x72, 0x41, 0x70, 0x70, 0x6c, 0x65, 0x4d, 0x61, 0x69, 0x6c, 0x12, 0x24,
0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69,
0x67, 0x75, 0x72, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x65, 0x4d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3d, 0x0a, 0x09,
0x47, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
0x79, 0x1a, 0x16, 0x2e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74,
0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x30, 0x01, 0x42, 0x32, 0x5a, 0x30, 0x67,
0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x6e,
0x4d, 0x61, 0x69, 0x6c, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x6e, 0x2d, 0x62, 0x72, 0x69, 0x64,
0x67, 0x65, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x72, 0x70, 0x63, 0x62,
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_bridge_rpc_proto_rawDescOnce sync.Once
file_bridge_rpc_proto_rawDescData = file_bridge_rpc_proto_rawDesc
)
func file_bridge_rpc_proto_rawDescGZIP() []byte {
file_bridge_rpc_proto_rawDescOnce.Do(func() {
file_bridge_rpc_proto_rawDescData = protoimpl.X.CompressGZIP(file_bridge_rpc_proto_rawDescData)
})
return file_bridge_rpc_proto_rawDescData
}
var file_bridge_rpc_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
var file_bridge_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 54)
var file_bridge_rpc_proto_goTypes = []interface{}{
(LoginErrorType)(0), // 0: bridgerpc.LoginErrorType
(UpdateErrorType)(0), // 1: bridgerpc.UpdateErrorType
(CacheErrorType)(0), // 2: bridgerpc.CacheErrorType
(MailSettingsErrorType)(0), // 3: bridgerpc.MailSettingsErrorType
(*PointResponse)(nil), // 4: bridgerpc.PointResponse
(*ReportBugRequest)(nil), // 5: bridgerpc.ReportBugRequest
(*LoginRequest)(nil), // 6: bridgerpc.LoginRequest
(*LoginAbortRequest)(nil), // 7: bridgerpc.LoginAbortRequest
(*ChangeLocalCacheRequest)(nil), // 8: bridgerpc.ChangeLocalCacheRequest
(*ChangePortsRequest)(nil), // 9: bridgerpc.ChangePortsRequest
(*AvailableKeychainsResponse)(nil), // 10: bridgerpc.AvailableKeychainsResponse
(*User)(nil), // 11: bridgerpc.User
(*UserSplitModeRequest)(nil), // 12: bridgerpc.UserSplitModeRequest
(*UserListResponse)(nil), // 13: bridgerpc.UserListResponse
(*ConfigureAppleMailRequest)(nil), // 14: bridgerpc.ConfigureAppleMailRequest
(*StreamEvent)(nil), // 15: bridgerpc.StreamEvent
(*AppEvent)(nil), // 16: bridgerpc.AppEvent
(*InternetStatusEvent)(nil), // 17: bridgerpc.InternetStatusEvent
(*AutostartFinishedEvent)(nil), // 18: bridgerpc.AutostartFinishedEvent
(*ResetFinishedEvent)(nil), // 19: bridgerpc.ResetFinishedEvent
(*ReportBugFinishedEvent)(nil), // 20: bridgerpc.ReportBugFinishedEvent
(*ReportBugSuccessEvent)(nil), // 21: bridgerpc.ReportBugSuccessEvent
(*ReportBugErrorEvent)(nil), // 22: bridgerpc.ReportBugErrorEvent
(*ShowMainWindowEvent)(nil), // 23: bridgerpc.ShowMainWindowEvent
(*LoginEvent)(nil), // 24: bridgerpc.LoginEvent
(*LoginErrorEvent)(nil), // 25: bridgerpc.LoginErrorEvent
(*LoginTfaRequestedEvent)(nil), // 26: bridgerpc.LoginTfaRequestedEvent
(*LoginTwoPasswordsRequestedEvent)(nil), // 27: bridgerpc.LoginTwoPasswordsRequestedEvent
(*LoginFinishedEvent)(nil), // 28: bridgerpc.LoginFinishedEvent
(*UpdateEvent)(nil), // 29: bridgerpc.UpdateEvent
(*UpdateErrorEvent)(nil), // 30: bridgerpc.UpdateErrorEvent
(*UpdateManualReadyEvent)(nil), // 31: bridgerpc.UpdateManualReadyEvent
(*UpdateManualRestartNeededEvent)(nil), // 32: bridgerpc.UpdateManualRestartNeededEvent
(*UpdateForceEvent)(nil), // 33: bridgerpc.UpdateForceEvent
(*UpdateSilentRestartNeeded)(nil), // 34: bridgerpc.UpdateSilentRestartNeeded
(*UpdateIsLatestVersion)(nil), // 35: bridgerpc.UpdateIsLatestVersion
(*UpdateCheckFinished)(nil), // 36: bridgerpc.UpdateCheckFinished
(*CacheEvent)(nil), // 37: bridgerpc.CacheEvent
(*CacheErrorEvent)(nil), // 38: bridgerpc.CacheErrorEvent
(*CacheLocationChangeSuccessEvent)(nil), // 39: bridgerpc.CacheLocationChangeSuccessEvent
(*ChangeLocalCacheFinishedEvent)(nil), // 40: bridgerpc.ChangeLocalCacheFinishedEvent
(*MailSettingsEvent)(nil), // 41: bridgerpc.MailSettingsEvent
(*MailSettingsErrorEvent)(nil), // 42: bridgerpc.MailSettingsErrorEvent
(*UseSslForSmtpFinishedEvent)(nil), // 43: bridgerpc.UseSslForSmtpFinishedEvent
(*ChangePortsFinishedEvent)(nil), // 44: bridgerpc.ChangePortsFinishedEvent
(*KeychainEvent)(nil), // 45: bridgerpc.KeychainEvent
(*ChangeKeychainFinishedEvent)(nil), // 46: bridgerpc.ChangeKeychainFinishedEvent
(*HasNoKeychainEvent)(nil), // 47: bridgerpc.HasNoKeychainEvent
(*RebuildKeychainEvent)(nil), // 48: bridgerpc.RebuildKeychainEvent
(*MailEvent)(nil), // 49: bridgerpc.MailEvent
(*NoActiveKeyForRecipientEvent)(nil), // 50: bridgerpc.NoActiveKeyForRecipientEvent
(*AddressChangedEvent)(nil), // 51: bridgerpc.AddressChangedEvent
(*AddressChangedLogoutEvent)(nil), // 52: bridgerpc.AddressChangedLogoutEvent
(*ApiCertIssueEvent)(nil), // 53: bridgerpc.ApiCertIssueEvent
(*UserEvent)(nil), // 54: bridgerpc.UserEvent
(*ToggleSplitModeFinishedEvent)(nil), // 55: bridgerpc.ToggleSplitModeFinishedEvent
(*UserDisconnectedEvent)(nil), // 56: bridgerpc.UserDisconnectedEvent
(*UserChangedEvent)(nil), // 57: bridgerpc.UserChangedEvent
(*emptypb.Empty)(nil), // 58: google.protobuf.Empty
(*wrapperspb.BoolValue)(nil), // 59: google.protobuf.BoolValue
(*wrapperspb.StringValue)(nil), // 60: google.protobuf.StringValue
(*wrapperspb.Int32Value)(nil), // 61: google.protobuf.Int32Value
}
var file_bridge_rpc_proto_depIdxs = []int32{
11, // 0: bridgerpc.UserListResponse.users:type_name -> bridgerpc.User
16, // 1: bridgerpc.StreamEvent.app:type_name -> bridgerpc.AppEvent
24, // 2: bridgerpc.StreamEvent.login:type_name -> bridgerpc.LoginEvent
29, // 3: bridgerpc.StreamEvent.update:type_name -> bridgerpc.UpdateEvent
37, // 4: bridgerpc.StreamEvent.cache:type_name -> bridgerpc.CacheEvent
41, // 5: bridgerpc.StreamEvent.mailSettings:type_name -> bridgerpc.MailSettingsEvent
45, // 6: bridgerpc.StreamEvent.keychain:type_name -> bridgerpc.KeychainEvent
49, // 7: bridgerpc.StreamEvent.mail:type_name -> bridgerpc.MailEvent
54, // 8: bridgerpc.StreamEvent.user:type_name -> bridgerpc.UserEvent
17, // 9: bridgerpc.AppEvent.internetStatus:type_name -> bridgerpc.InternetStatusEvent
18, // 10: bridgerpc.AppEvent.autostartFinished:type_name -> bridgerpc.AutostartFinishedEvent
19, // 11: bridgerpc.AppEvent.resetFinished:type_name -> bridgerpc.ResetFinishedEvent
20, // 12: bridgerpc.AppEvent.reportBugFinished:type_name -> bridgerpc.ReportBugFinishedEvent
21, // 13: bridgerpc.AppEvent.reportBugSuccess:type_name -> bridgerpc.ReportBugSuccessEvent
22, // 14: bridgerpc.AppEvent.reportBugError:type_name -> bridgerpc.ReportBugErrorEvent
23, // 15: bridgerpc.AppEvent.showMainWindow:type_name -> bridgerpc.ShowMainWindowEvent
25, // 16: bridgerpc.LoginEvent.error:type_name -> bridgerpc.LoginErrorEvent
26, // 17: bridgerpc.LoginEvent.tfaRequested:type_name -> bridgerpc.LoginTfaRequestedEvent
27, // 18: bridgerpc.LoginEvent.twoPasswordRequested:type_name -> bridgerpc.LoginTwoPasswordsRequestedEvent
28, // 19: bridgerpc.LoginEvent.finished:type_name -> bridgerpc.LoginFinishedEvent
0, // 20: bridgerpc.LoginErrorEvent.type:type_name -> bridgerpc.LoginErrorType
30, // 21: bridgerpc.UpdateEvent.error:type_name -> bridgerpc.UpdateErrorEvent
31, // 22: bridgerpc.UpdateEvent.manualReady:type_name -> bridgerpc.UpdateManualReadyEvent
32, // 23: bridgerpc.UpdateEvent.manualRestartNeeded:type_name -> bridgerpc.UpdateManualRestartNeededEvent
33, // 24: bridgerpc.UpdateEvent.force:type_name -> bridgerpc.UpdateForceEvent
34, // 25: bridgerpc.UpdateEvent.silentRestartNeeded:type_name -> bridgerpc.UpdateSilentRestartNeeded
35, // 26: bridgerpc.UpdateEvent.isLatestVersion:type_name -> bridgerpc.UpdateIsLatestVersion
36, // 27: bridgerpc.UpdateEvent.checkFinished:type_name -> bridgerpc.UpdateCheckFinished
1, // 28: bridgerpc.UpdateErrorEvent.type:type_name -> bridgerpc.UpdateErrorType
38, // 29: bridgerpc.CacheEvent.error:type_name -> bridgerpc.CacheErrorEvent
39, // 30: bridgerpc.CacheEvent.locationChangedSuccess:type_name -> bridgerpc.CacheLocationChangeSuccessEvent
40, // 31: bridgerpc.CacheEvent.changeLocalCacheFinished:type_name -> bridgerpc.ChangeLocalCacheFinishedEvent
2, // 32: bridgerpc.CacheErrorEvent.type:type_name -> bridgerpc.CacheErrorType
42, // 33: bridgerpc.MailSettingsEvent.error:type_name -> bridgerpc.MailSettingsErrorEvent
43, // 34: bridgerpc.MailSettingsEvent.useSslForSmtpFinished:type_name -> bridgerpc.UseSslForSmtpFinishedEvent
44, // 35: bridgerpc.MailSettingsEvent.changePortsFinished:type_name -> bridgerpc.ChangePortsFinishedEvent
3, // 36: bridgerpc.MailSettingsErrorEvent.type:type_name -> bridgerpc.MailSettingsErrorType
46, // 37: bridgerpc.KeychainEvent.changeKeychainFinished:type_name -> bridgerpc.ChangeKeychainFinishedEvent
47, // 38: bridgerpc.KeychainEvent.hasNoKeychain:type_name -> bridgerpc.HasNoKeychainEvent
48, // 39: bridgerpc.KeychainEvent.rebuildKeychain:type_name -> bridgerpc.RebuildKeychainEvent
50, // 40: bridgerpc.MailEvent.noActiveKeyForRecipientEvent:type_name -> bridgerpc.NoActiveKeyForRecipientEvent
51, // 41: bridgerpc.MailEvent.addressChanged:type_name -> bridgerpc.AddressChangedEvent
52, // 42: bridgerpc.MailEvent.addressChangedLogout:type_name -> bridgerpc.AddressChangedLogoutEvent
53, // 43: bridgerpc.MailEvent.apiCertIssue:type_name -> bridgerpc.ApiCertIssueEvent
55, // 44: bridgerpc.UserEvent.toggleSplitModeFinished:type_name -> bridgerpc.ToggleSplitModeFinishedEvent
56, // 45: bridgerpc.UserEvent.userDisconnected:type_name -> bridgerpc.UserDisconnectedEvent
57, // 46: bridgerpc.UserEvent.userChanged:type_name -> bridgerpc.UserChangedEvent
11, // 47: bridgerpc.UserChangedEvent.user:type_name -> bridgerpc.User
58, // 48: bridgerpc.BridgeRpc.GetCursorPos:input_type -> google.protobuf.Empty
58, // 49: bridgerpc.BridgeRpc.GuiReady:input_type -> google.protobuf.Empty
58, // 50: bridgerpc.BridgeRpc.Quit:input_type -> google.protobuf.Empty
58, // 51: bridgerpc.BridgeRpc.Restart:input_type -> google.protobuf.Empty
59, // 52: bridgerpc.BridgeRpc.SetShowOnStartup:input_type -> google.protobuf.BoolValue
58, // 53: bridgerpc.BridgeRpc.ShowOnStartup:input_type -> google.protobuf.Empty
59, // 54: bridgerpc.BridgeRpc.SetShowSplashScreen:input_type -> google.protobuf.BoolValue
58, // 55: bridgerpc.BridgeRpc.ShowSplashScreen:input_type -> google.protobuf.Empty
59, // 56: bridgerpc.BridgeRpc.SetDockIconVisible:input_type -> google.protobuf.BoolValue
58, // 57: bridgerpc.BridgeRpc.DockIconVisible:input_type -> google.protobuf.Empty
59, // 58: bridgerpc.BridgeRpc.SetIsFirstGuiStart:input_type -> google.protobuf.BoolValue
58, // 59: bridgerpc.BridgeRpc.IsFirstGuiStart:input_type -> google.protobuf.Empty
59, // 60: bridgerpc.BridgeRpc.SetIsAutostartOn:input_type -> google.protobuf.BoolValue
58, // 61: bridgerpc.BridgeRpc.IsAutostartOn:input_type -> google.protobuf.Empty
59, // 62: bridgerpc.BridgeRpc.SetIsBetaEnabled:input_type -> google.protobuf.BoolValue
58, // 63: bridgerpc.BridgeRpc.IsBetaEnabled:input_type -> google.protobuf.Empty
58, // 64: bridgerpc.BridgeRpc.GoOs:input_type -> google.protobuf.Empty
58, // 65: bridgerpc.BridgeRpc.TriggerReset:input_type -> google.protobuf.Empty
58, // 66: bridgerpc.BridgeRpc.Version:input_type -> google.protobuf.Empty
58, // 67: bridgerpc.BridgeRpc.LogPath:input_type -> google.protobuf.Empty
58, // 68: bridgerpc.BridgeRpc.LicensePath:input_type -> google.protobuf.Empty
58, // 69: bridgerpc.BridgeRpc.ReleaseNotesLink:input_type -> google.protobuf.Empty
58, // 70: bridgerpc.BridgeRpc.LandingPageLink:input_type -> google.protobuf.Empty
60, // 71: bridgerpc.BridgeRpc.SetColorSchemeName:input_type -> google.protobuf.StringValue
58, // 72: bridgerpc.BridgeRpc.ColorSchemeName:input_type -> google.protobuf.Empty
60, // 73: bridgerpc.BridgeRpc.SetCurrentEmailClient:input_type -> google.protobuf.StringValue
58, // 74: bridgerpc.BridgeRpc.CurrentEmailClient:input_type -> google.protobuf.Empty
5, // 75: bridgerpc.BridgeRpc.ReportBug:input_type -> bridgerpc.ReportBugRequest
6, // 76: bridgerpc.BridgeRpc.Login:input_type -> bridgerpc.LoginRequest
6, // 77: bridgerpc.BridgeRpc.Login2FA:input_type -> bridgerpc.LoginRequest
6, // 78: bridgerpc.BridgeRpc.Login2Passwords:input_type -> bridgerpc.LoginRequest
7, // 79: bridgerpc.BridgeRpc.LoginAbort:input_type -> bridgerpc.LoginAbortRequest
58, // 80: bridgerpc.BridgeRpc.CheckUpdate:input_type -> google.protobuf.Empty
58, // 81: bridgerpc.BridgeRpc.InstallUpdate:input_type -> google.protobuf.Empty
59, // 82: bridgerpc.BridgeRpc.SetIsAutomaticUpdateOn:input_type -> google.protobuf.BoolValue
58, // 83: bridgerpc.BridgeRpc.IsAutomaticUpdateOn:input_type -> google.protobuf.Empty
59, // 84: bridgerpc.BridgeRpc.SetIsCacheOnDiskEnabled:input_type -> google.protobuf.BoolValue
58, // 85: bridgerpc.BridgeRpc.IsCacheOnDiskEnabled:input_type -> google.protobuf.Empty
60, // 86: bridgerpc.BridgeRpc.SetDiskCachePath:input_type -> google.protobuf.StringValue
58, // 87: bridgerpc.BridgeRpc.DiskCachePath:input_type -> google.protobuf.Empty
8, // 88: bridgerpc.BridgeRpc.ChangeLocalCache:input_type -> bridgerpc.ChangeLocalCacheRequest
59, // 89: bridgerpc.BridgeRpc.SetIsDoHEnabled:input_type -> google.protobuf.BoolValue
58, // 90: bridgerpc.BridgeRpc.IsDoHEnabled:input_type -> google.protobuf.Empty
59, // 91: bridgerpc.BridgeRpc.SetUseSslForSmtp:input_type -> google.protobuf.BoolValue
58, // 92: bridgerpc.BridgeRpc.UseSslForSmtp:input_type -> google.protobuf.Empty
58, // 93: bridgerpc.BridgeRpc.Hostname:input_type -> google.protobuf.Empty
61, // 94: bridgerpc.BridgeRpc.SetImapPort:input_type -> google.protobuf.Int32Value
58, // 95: bridgerpc.BridgeRpc.ImapPort:input_type -> google.protobuf.Empty
61, // 96: bridgerpc.BridgeRpc.SetSmtpPort:input_type -> google.protobuf.Int32Value
58, // 97: bridgerpc.BridgeRpc.SmtpPort:input_type -> google.protobuf.Empty
9, // 98: bridgerpc.BridgeRpc.ChangePorts:input_type -> bridgerpc.ChangePortsRequest
61, // 99: bridgerpc.BridgeRpc.IsPortFree:input_type -> google.protobuf.Int32Value
58, // 100: bridgerpc.BridgeRpc.AvailableKeychains:input_type -> google.protobuf.Empty
60, // 101: bridgerpc.BridgeRpc.SetCurrentKeychain:input_type -> google.protobuf.StringValue
58, // 102: bridgerpc.BridgeRpc.CurrentKeychain:input_type -> google.protobuf.Empty
58, // 103: bridgerpc.BridgeRpc.GetUserList:input_type -> google.protobuf.Empty
58, // 104: bridgerpc.BridgeRpc.GetUser:input_type -> google.protobuf.Empty
12, // 105: bridgerpc.BridgeRpc.SetUserSplitMode:input_type -> bridgerpc.UserSplitModeRequest
60, // 106: bridgerpc.BridgeRpc.LogoutUser:input_type -> google.protobuf.StringValue
60, // 107: bridgerpc.BridgeRpc.RemoveUser:input_type -> google.protobuf.StringValue
14, // 108: bridgerpc.BridgeRpc.ConfigureUserAppleMail:input_type -> bridgerpc.ConfigureAppleMailRequest
58, // 109: bridgerpc.BridgeRpc.GetEvents:input_type -> google.protobuf.Empty
4, // 110: bridgerpc.BridgeRpc.GetCursorPos:output_type -> bridgerpc.PointResponse
58, // 111: bridgerpc.BridgeRpc.GuiReady:output_type -> google.protobuf.Empty
58, // 112: bridgerpc.BridgeRpc.Quit:output_type -> google.protobuf.Empty
58, // 113: bridgerpc.BridgeRpc.Restart:output_type -> google.protobuf.Empty
58, // 114: bridgerpc.BridgeRpc.SetShowOnStartup:output_type -> google.protobuf.Empty
59, // 115: bridgerpc.BridgeRpc.ShowOnStartup:output_type -> google.protobuf.BoolValue
58, // 116: bridgerpc.BridgeRpc.SetShowSplashScreen:output_type -> google.protobuf.Empty
59, // 117: bridgerpc.BridgeRpc.ShowSplashScreen:output_type -> google.protobuf.BoolValue
58, // 118: bridgerpc.BridgeRpc.SetDockIconVisible:output_type -> google.protobuf.Empty
59, // 119: bridgerpc.BridgeRpc.DockIconVisible:output_type -> google.protobuf.BoolValue
58, // 120: bridgerpc.BridgeRpc.SetIsFirstGuiStart:output_type -> google.protobuf.Empty
59, // 121: bridgerpc.BridgeRpc.IsFirstGuiStart:output_type -> google.protobuf.BoolValue
58, // 122: bridgerpc.BridgeRpc.SetIsAutostartOn:output_type -> google.protobuf.Empty
59, // 123: bridgerpc.BridgeRpc.IsAutostartOn:output_type -> google.protobuf.BoolValue
58, // 124: bridgerpc.BridgeRpc.SetIsBetaEnabled:output_type -> google.protobuf.Empty
59, // 125: bridgerpc.BridgeRpc.IsBetaEnabled:output_type -> google.protobuf.BoolValue
60, // 126: bridgerpc.BridgeRpc.GoOs:output_type -> google.protobuf.StringValue
58, // 127: bridgerpc.BridgeRpc.TriggerReset:output_type -> google.protobuf.Empty
60, // 128: bridgerpc.BridgeRpc.Version:output_type -> google.protobuf.StringValue
60, // 129: bridgerpc.BridgeRpc.LogPath:output_type -> google.protobuf.StringValue
60, // 130: bridgerpc.BridgeRpc.LicensePath:output_type -> google.protobuf.StringValue
60, // 131: bridgerpc.BridgeRpc.ReleaseNotesLink:output_type -> google.protobuf.StringValue
60, // 132: bridgerpc.BridgeRpc.LandingPageLink:output_type -> google.protobuf.StringValue
58, // 133: bridgerpc.BridgeRpc.SetColorSchemeName:output_type -> google.protobuf.Empty
60, // 134: bridgerpc.BridgeRpc.ColorSchemeName:output_type -> google.protobuf.StringValue
58, // 135: bridgerpc.BridgeRpc.SetCurrentEmailClient:output_type -> google.protobuf.Empty
60, // 136: bridgerpc.BridgeRpc.CurrentEmailClient:output_type -> google.protobuf.StringValue
58, // 137: bridgerpc.BridgeRpc.ReportBug:output_type -> google.protobuf.Empty
58, // 138: bridgerpc.BridgeRpc.Login:output_type -> google.protobuf.Empty
58, // 139: bridgerpc.BridgeRpc.Login2FA:output_type -> google.protobuf.Empty
58, // 140: bridgerpc.BridgeRpc.Login2Passwords:output_type -> google.protobuf.Empty
58, // 141: bridgerpc.BridgeRpc.LoginAbort:output_type -> google.protobuf.Empty
58, // 142: bridgerpc.BridgeRpc.CheckUpdate:output_type -> google.protobuf.Empty
58, // 143: bridgerpc.BridgeRpc.InstallUpdate:output_type -> google.protobuf.Empty
58, // 144: bridgerpc.BridgeRpc.SetIsAutomaticUpdateOn:output_type -> google.protobuf.Empty
59, // 145: bridgerpc.BridgeRpc.IsAutomaticUpdateOn:output_type -> google.protobuf.BoolValue
58, // 146: bridgerpc.BridgeRpc.SetIsCacheOnDiskEnabled:output_type -> google.protobuf.Empty
59, // 147: bridgerpc.BridgeRpc.IsCacheOnDiskEnabled:output_type -> google.protobuf.BoolValue
58, // 148: bridgerpc.BridgeRpc.SetDiskCachePath:output_type -> google.protobuf.Empty
60, // 149: bridgerpc.BridgeRpc.DiskCachePath:output_type -> google.protobuf.StringValue
58, // 150: bridgerpc.BridgeRpc.ChangeLocalCache:output_type -> google.protobuf.Empty
58, // 151: bridgerpc.BridgeRpc.SetIsDoHEnabled:output_type -> google.protobuf.Empty
59, // 152: bridgerpc.BridgeRpc.IsDoHEnabled:output_type -> google.protobuf.BoolValue
58, // 153: bridgerpc.BridgeRpc.SetUseSslForSmtp:output_type -> google.protobuf.Empty
59, // 154: bridgerpc.BridgeRpc.UseSslForSmtp:output_type -> google.protobuf.BoolValue
60, // 155: bridgerpc.BridgeRpc.Hostname:output_type -> google.protobuf.StringValue
58, // 156: bridgerpc.BridgeRpc.SetImapPort:output_type -> google.protobuf.Empty
61, // 157: bridgerpc.BridgeRpc.ImapPort:output_type -> google.protobuf.Int32Value
58, // 158: bridgerpc.BridgeRpc.SetSmtpPort:output_type -> google.protobuf.Empty
61, // 159: bridgerpc.BridgeRpc.SmtpPort:output_type -> google.protobuf.Int32Value
58, // 160: bridgerpc.BridgeRpc.ChangePorts:output_type -> google.protobuf.Empty
59, // 161: bridgerpc.BridgeRpc.IsPortFree:output_type -> google.protobuf.BoolValue
10, // 162: bridgerpc.BridgeRpc.AvailableKeychains:output_type -> bridgerpc.AvailableKeychainsResponse
58, // 163: bridgerpc.BridgeRpc.SetCurrentKeychain:output_type -> google.protobuf.Empty
60, // 164: bridgerpc.BridgeRpc.CurrentKeychain:output_type -> google.protobuf.StringValue
13, // 165: bridgerpc.BridgeRpc.GetUserList:output_type -> bridgerpc.UserListResponse
11, // 166: bridgerpc.BridgeRpc.GetUser:output_type -> bridgerpc.User
58, // 167: bridgerpc.BridgeRpc.SetUserSplitMode:output_type -> google.protobuf.Empty
58, // 168: bridgerpc.BridgeRpc.LogoutUser:output_type -> google.protobuf.Empty
58, // 169: bridgerpc.BridgeRpc.RemoveUser:output_type -> google.protobuf.Empty
58, // 170: bridgerpc.BridgeRpc.ConfigureUserAppleMail:output_type -> google.protobuf.Empty
15, // 171: bridgerpc.BridgeRpc.GetEvents:output_type -> bridgerpc.StreamEvent
110, // [110:172] is the sub-list for method output_type
48, // [48:110] is the sub-list for method input_type
48, // [48:48] is the sub-list for extension type_name
48, // [48:48] is the sub-list for extension extendee
0, // [0:48] is the sub-list for field type_name
}
func init() { file_bridge_rpc_proto_init() }
func file_bridge_rpc_proto_init() {
if File_bridge_rpc_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_bridge_rpc_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PointResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ReportBugRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LoginRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LoginAbortRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ChangeLocalCacheRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ChangePortsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AvailableKeychainsResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[7].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_bridge_rpc_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UserSplitModeRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UserListResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ConfigureAppleMailRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StreamEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AppEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*InternetStatusEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AutostartFinishedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ResetFinishedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ReportBugFinishedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ReportBugSuccessEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ReportBugErrorEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ShowMainWindowEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LoginEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LoginErrorEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LoginTfaRequestedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LoginTwoPasswordsRequestedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LoginFinishedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateErrorEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateManualReadyEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateManualRestartNeededEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateForceEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateSilentRestartNeeded); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateIsLatestVersion); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateCheckFinished); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CacheEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CacheErrorEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CacheLocationChangeSuccessEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ChangeLocalCacheFinishedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*MailSettingsEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*MailSettingsErrorEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UseSslForSmtpFinishedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ChangePortsFinishedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*KeychainEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ChangeKeychainFinishedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*HasNoKeychainEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RebuildKeychainEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*MailEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*NoActiveKeyForRecipientEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AddressChangedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AddressChangedLogoutEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ApiCertIssueEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UserEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ToggleSplitModeFinishedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UserDisconnectedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_bridge_rpc_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UserChangedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_bridge_rpc_proto_msgTypes[11].OneofWrappers = []interface{}{
(*StreamEvent_App)(nil),
(*StreamEvent_Login)(nil),
(*StreamEvent_Update)(nil),
(*StreamEvent_Cache)(nil),
(*StreamEvent_MailSettings)(nil),
(*StreamEvent_Keychain)(nil),
(*StreamEvent_Mail)(nil),
(*StreamEvent_User)(nil),
}
file_bridge_rpc_proto_msgTypes[12].OneofWrappers = []interface{}{
(*AppEvent_InternetStatus)(nil),
(*AppEvent_AutostartFinished)(nil),
(*AppEvent_ResetFinished)(nil),
(*AppEvent_ReportBugFinished)(nil),
(*AppEvent_ReportBugSuccess)(nil),
(*AppEvent_ReportBugError)(nil),
(*AppEvent_ShowMainWindow)(nil),
}
file_bridge_rpc_proto_msgTypes[20].OneofWrappers = []interface{}{
(*LoginEvent_Error)(nil),
(*LoginEvent_TfaRequested)(nil),
(*LoginEvent_TwoPasswordRequested)(nil),
(*LoginEvent_Finished)(nil),
}
file_bridge_rpc_proto_msgTypes[25].OneofWrappers = []interface{}{
(*UpdateEvent_Error)(nil),
(*UpdateEvent_ManualReady)(nil),
(*UpdateEvent_ManualRestartNeeded)(nil),
(*UpdateEvent_Force)(nil),
(*UpdateEvent_SilentRestartNeeded)(nil),
(*UpdateEvent_IsLatestVersion)(nil),
(*UpdateEvent_CheckFinished)(nil),
}
file_bridge_rpc_proto_msgTypes[33].OneofWrappers = []interface{}{
(*CacheEvent_Error)(nil),
(*CacheEvent_LocationChangedSuccess)(nil),
(*CacheEvent_ChangeLocalCacheFinished)(nil),
}
file_bridge_rpc_proto_msgTypes[37].OneofWrappers = []interface{}{
(*MailSettingsEvent_Error)(nil),
(*MailSettingsEvent_UseSslForSmtpFinished)(nil),
(*MailSettingsEvent_ChangePortsFinished)(nil),
}
file_bridge_rpc_proto_msgTypes[41].OneofWrappers = []interface{}{
(*KeychainEvent_ChangeKeychainFinished)(nil),
(*KeychainEvent_HasNoKeychain)(nil),
(*KeychainEvent_RebuildKeychain)(nil),
}
file_bridge_rpc_proto_msgTypes[45].OneofWrappers = []interface{}{
(*MailEvent_NoActiveKeyForRecipientEvent)(nil),
(*MailEvent_AddressChanged)(nil),
(*MailEvent_AddressChangedLogout)(nil),
(*MailEvent_ApiCertIssue)(nil),
}
file_bridge_rpc_proto_msgTypes[50].OneofWrappers = []interface{}{
(*UserEvent_ToggleSplitModeFinished)(nil),
(*UserEvent_UserDisconnected)(nil),
(*UserEvent_UserChanged)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_bridge_rpc_proto_rawDesc,
NumEnums: 4,
NumMessages: 54,
NumExtensions: 0,
NumServices: 1,
},
GoTypes: file_bridge_rpc_proto_goTypes,
DependencyIndexes: file_bridge_rpc_proto_depIdxs,
EnumInfos: file_bridge_rpc_proto_enumTypes,
MessageInfos: file_bridge_rpc_proto_msgTypes,
}.Build()
File_bridge_rpc_proto = out.File
file_bridge_rpc_proto_rawDesc = nil
file_bridge_rpc_proto_goTypes = nil
file_bridge_rpc_proto_depIdxs = nil
}