// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: bridge.proto

#include "bridge.pb.h"

#include <algorithm>

#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/extension_set.h>
#include <google/protobuf/wire_format_lite.h>
#include <google/protobuf/descriptor.h>
#include <google/protobuf/generated_message_reflection.h>
#include <google/protobuf/reflection_ops.h>
#include <google/protobuf/wire_format.h>
// @@protoc_insertion_point(includes)
#include <google/protobuf/port_def.inc>

PROTOBUF_PRAGMA_INIT_SEG

namespace _pb = ::PROTOBUF_NAMESPACE_ID;
namespace _pbi = _pb::internal;

namespace grpc {
PROTOBUF_CONSTEXPR AddLogEntryRequest::AddLogEntryRequest(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.package_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.message_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.level_)*/0
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct AddLogEntryRequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR AddLogEntryRequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~AddLogEntryRequestDefaultTypeInternal() {}
  union {
    AddLogEntryRequest _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AddLogEntryRequestDefaultTypeInternal _AddLogEntryRequest_default_instance_;
PROTOBUF_CONSTEXPR ReportBugRequest::ReportBugRequest(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.ostype_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.osversion_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.description_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.address_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.emailclient_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.includelogs_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct ReportBugRequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ReportBugRequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ReportBugRequestDefaultTypeInternal() {}
  union {
    ReportBugRequest _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ReportBugRequestDefaultTypeInternal _ReportBugRequest_default_instance_;
PROTOBUF_CONSTEXPR LoginRequest::LoginRequest(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.username_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.password_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct LoginRequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR LoginRequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~LoginRequestDefaultTypeInternal() {}
  union {
    LoginRequest _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 LoginRequestDefaultTypeInternal _LoginRequest_default_instance_;
PROTOBUF_CONSTEXPR LoginAbortRequest::LoginAbortRequest(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.username_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct LoginAbortRequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR LoginAbortRequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~LoginAbortRequestDefaultTypeInternal() {}
  union {
    LoginAbortRequest _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 LoginAbortRequestDefaultTypeInternal _LoginAbortRequest_default_instance_;
PROTOBUF_CONSTEXPR ChangeLocalCacheRequest::ChangeLocalCacheRequest(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.diskcachepath_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.enablediskcache_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct ChangeLocalCacheRequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ChangeLocalCacheRequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ChangeLocalCacheRequestDefaultTypeInternal() {}
  union {
    ChangeLocalCacheRequest _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ChangeLocalCacheRequestDefaultTypeInternal _ChangeLocalCacheRequest_default_instance_;
PROTOBUF_CONSTEXPR ChangePortsRequest::ChangePortsRequest(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.imapport_)*/0
  , /*decltype(_impl_.smtpport_)*/0
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct ChangePortsRequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ChangePortsRequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ChangePortsRequestDefaultTypeInternal() {}
  union {
    ChangePortsRequest _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ChangePortsRequestDefaultTypeInternal _ChangePortsRequest_default_instance_;
PROTOBUF_CONSTEXPR AvailableKeychainsResponse::AvailableKeychainsResponse(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.keychains_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct AvailableKeychainsResponseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR AvailableKeychainsResponseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~AvailableKeychainsResponseDefaultTypeInternal() {}
  union {
    AvailableKeychainsResponse _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AvailableKeychainsResponseDefaultTypeInternal _AvailableKeychainsResponse_default_instance_;
PROTOBUF_CONSTEXPR User::User(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.addresses_)*/{}
  , /*decltype(_impl_.id_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.username_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.avatartext_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.password_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.usedbytes_)*/int64_t{0}
  , /*decltype(_impl_.totalbytes_)*/int64_t{0}
  , /*decltype(_impl_.loggedin_)*/false
  , /*decltype(_impl_.splitmode_)*/false
  , /*decltype(_impl_.setupguideseen_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UserDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UserDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UserDefaultTypeInternal() {}
  union {
    User _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UserDefaultTypeInternal _User_default_instance_;
PROTOBUF_CONSTEXPR UserSplitModeRequest::UserSplitModeRequest(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.userid_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.active_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UserSplitModeRequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UserSplitModeRequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UserSplitModeRequestDefaultTypeInternal() {}
  union {
    UserSplitModeRequest _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UserSplitModeRequestDefaultTypeInternal _UserSplitModeRequest_default_instance_;
PROTOBUF_CONSTEXPR UserListResponse::UserListResponse(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.users_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UserListResponseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UserListResponseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UserListResponseDefaultTypeInternal() {}
  union {
    UserListResponse _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UserListResponseDefaultTypeInternal _UserListResponse_default_instance_;
PROTOBUF_CONSTEXPR ConfigureAppleMailRequest::ConfigureAppleMailRequest(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.userid_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.address_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct ConfigureAppleMailRequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ConfigureAppleMailRequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ConfigureAppleMailRequestDefaultTypeInternal() {}
  union {
    ConfigureAppleMailRequest _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ConfigureAppleMailRequestDefaultTypeInternal _ConfigureAppleMailRequest_default_instance_;
PROTOBUF_CONSTEXPR EventStreamRequest::EventStreamRequest(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.clientplatform_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct EventStreamRequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR EventStreamRequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~EventStreamRequestDefaultTypeInternal() {}
  union {
    EventStreamRequest _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 EventStreamRequestDefaultTypeInternal _EventStreamRequest_default_instance_;
PROTOBUF_CONSTEXPR StreamEvent::StreamEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.event_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct StreamEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR StreamEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~StreamEventDefaultTypeInternal() {}
  union {
    StreamEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 StreamEventDefaultTypeInternal _StreamEvent_default_instance_;
PROTOBUF_CONSTEXPR AppEvent::AppEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.event_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct AppEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR AppEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~AppEventDefaultTypeInternal() {}
  union {
    AppEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppEventDefaultTypeInternal _AppEvent_default_instance_;
PROTOBUF_CONSTEXPR InternetStatusEvent::InternetStatusEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.connected_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct InternetStatusEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR InternetStatusEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~InternetStatusEventDefaultTypeInternal() {}
  union {
    InternetStatusEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 InternetStatusEventDefaultTypeInternal _InternetStatusEvent_default_instance_;
PROTOBUF_CONSTEXPR ToggleAutostartFinishedEvent::ToggleAutostartFinishedEvent(
    ::_pbi::ConstantInitialized) {}
struct ToggleAutostartFinishedEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ToggleAutostartFinishedEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ToggleAutostartFinishedEventDefaultTypeInternal() {}
  union {
    ToggleAutostartFinishedEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ToggleAutostartFinishedEventDefaultTypeInternal _ToggleAutostartFinishedEvent_default_instance_;
PROTOBUF_CONSTEXPR ResetFinishedEvent::ResetFinishedEvent(
    ::_pbi::ConstantInitialized) {}
struct ResetFinishedEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ResetFinishedEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ResetFinishedEventDefaultTypeInternal() {}
  union {
    ResetFinishedEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ResetFinishedEventDefaultTypeInternal _ResetFinishedEvent_default_instance_;
PROTOBUF_CONSTEXPR ReportBugFinishedEvent::ReportBugFinishedEvent(
    ::_pbi::ConstantInitialized) {}
struct ReportBugFinishedEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ReportBugFinishedEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ReportBugFinishedEventDefaultTypeInternal() {}
  union {
    ReportBugFinishedEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ReportBugFinishedEventDefaultTypeInternal _ReportBugFinishedEvent_default_instance_;
PROTOBUF_CONSTEXPR ReportBugSuccessEvent::ReportBugSuccessEvent(
    ::_pbi::ConstantInitialized) {}
struct ReportBugSuccessEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ReportBugSuccessEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ReportBugSuccessEventDefaultTypeInternal() {}
  union {
    ReportBugSuccessEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ReportBugSuccessEventDefaultTypeInternal _ReportBugSuccessEvent_default_instance_;
PROTOBUF_CONSTEXPR ReportBugErrorEvent::ReportBugErrorEvent(
    ::_pbi::ConstantInitialized) {}
struct ReportBugErrorEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ReportBugErrorEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ReportBugErrorEventDefaultTypeInternal() {}
  union {
    ReportBugErrorEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ReportBugErrorEventDefaultTypeInternal _ReportBugErrorEvent_default_instance_;
PROTOBUF_CONSTEXPR ShowMainWindowEvent::ShowMainWindowEvent(
    ::_pbi::ConstantInitialized) {}
struct ShowMainWindowEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ShowMainWindowEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ShowMainWindowEventDefaultTypeInternal() {}
  union {
    ShowMainWindowEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ShowMainWindowEventDefaultTypeInternal _ShowMainWindowEvent_default_instance_;
PROTOBUF_CONSTEXPR LoginEvent::LoginEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.event_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct LoginEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR LoginEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~LoginEventDefaultTypeInternal() {}
  union {
    LoginEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 LoginEventDefaultTypeInternal _LoginEvent_default_instance_;
PROTOBUF_CONSTEXPR LoginErrorEvent::LoginErrorEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.message_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.type_)*/0
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct LoginErrorEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR LoginErrorEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~LoginErrorEventDefaultTypeInternal() {}
  union {
    LoginErrorEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 LoginErrorEventDefaultTypeInternal _LoginErrorEvent_default_instance_;
PROTOBUF_CONSTEXPR LoginTfaRequestedEvent::LoginTfaRequestedEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.username_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct LoginTfaRequestedEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR LoginTfaRequestedEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~LoginTfaRequestedEventDefaultTypeInternal() {}
  union {
    LoginTfaRequestedEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 LoginTfaRequestedEventDefaultTypeInternal _LoginTfaRequestedEvent_default_instance_;
PROTOBUF_CONSTEXPR LoginTwoPasswordsRequestedEvent::LoginTwoPasswordsRequestedEvent(
    ::_pbi::ConstantInitialized) {}
struct LoginTwoPasswordsRequestedEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR LoginTwoPasswordsRequestedEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~LoginTwoPasswordsRequestedEventDefaultTypeInternal() {}
  union {
    LoginTwoPasswordsRequestedEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 LoginTwoPasswordsRequestedEventDefaultTypeInternal _LoginTwoPasswordsRequestedEvent_default_instance_;
PROTOBUF_CONSTEXPR LoginFinishedEvent::LoginFinishedEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.userid_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct LoginFinishedEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR LoginFinishedEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~LoginFinishedEventDefaultTypeInternal() {}
  union {
    LoginFinishedEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 LoginFinishedEventDefaultTypeInternal _LoginFinishedEvent_default_instance_;
PROTOBUF_CONSTEXPR UpdateEvent::UpdateEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.event_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct UpdateEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UpdateEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UpdateEventDefaultTypeInternal() {}
  union {
    UpdateEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UpdateEventDefaultTypeInternal _UpdateEvent_default_instance_;
PROTOBUF_CONSTEXPR UpdateErrorEvent::UpdateErrorEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.type_)*/0
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UpdateErrorEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UpdateErrorEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UpdateErrorEventDefaultTypeInternal() {}
  union {
    UpdateErrorEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UpdateErrorEventDefaultTypeInternal _UpdateErrorEvent_default_instance_;
PROTOBUF_CONSTEXPR UpdateManualReadyEvent::UpdateManualReadyEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.version_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UpdateManualReadyEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UpdateManualReadyEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UpdateManualReadyEventDefaultTypeInternal() {}
  union {
    UpdateManualReadyEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UpdateManualReadyEventDefaultTypeInternal _UpdateManualReadyEvent_default_instance_;
PROTOBUF_CONSTEXPR UpdateManualRestartNeededEvent::UpdateManualRestartNeededEvent(
    ::_pbi::ConstantInitialized) {}
struct UpdateManualRestartNeededEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UpdateManualRestartNeededEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UpdateManualRestartNeededEventDefaultTypeInternal() {}
  union {
    UpdateManualRestartNeededEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UpdateManualRestartNeededEventDefaultTypeInternal _UpdateManualRestartNeededEvent_default_instance_;
PROTOBUF_CONSTEXPR UpdateForceEvent::UpdateForceEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.version_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UpdateForceEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UpdateForceEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UpdateForceEventDefaultTypeInternal() {}
  union {
    UpdateForceEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UpdateForceEventDefaultTypeInternal _UpdateForceEvent_default_instance_;
PROTOBUF_CONSTEXPR UpdateSilentRestartNeeded::UpdateSilentRestartNeeded(
    ::_pbi::ConstantInitialized) {}
struct UpdateSilentRestartNeededDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UpdateSilentRestartNeededDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UpdateSilentRestartNeededDefaultTypeInternal() {}
  union {
    UpdateSilentRestartNeeded _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UpdateSilentRestartNeededDefaultTypeInternal _UpdateSilentRestartNeeded_default_instance_;
PROTOBUF_CONSTEXPR UpdateIsLatestVersion::UpdateIsLatestVersion(
    ::_pbi::ConstantInitialized) {}
struct UpdateIsLatestVersionDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UpdateIsLatestVersionDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UpdateIsLatestVersionDefaultTypeInternal() {}
  union {
    UpdateIsLatestVersion _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UpdateIsLatestVersionDefaultTypeInternal _UpdateIsLatestVersion_default_instance_;
PROTOBUF_CONSTEXPR UpdateCheckFinished::UpdateCheckFinished(
    ::_pbi::ConstantInitialized) {}
struct UpdateCheckFinishedDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UpdateCheckFinishedDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UpdateCheckFinishedDefaultTypeInternal() {}
  union {
    UpdateCheckFinished _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UpdateCheckFinishedDefaultTypeInternal _UpdateCheckFinished_default_instance_;
PROTOBUF_CONSTEXPR UpdateVersionChanged::UpdateVersionChanged(
    ::_pbi::ConstantInitialized) {}
struct UpdateVersionChangedDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UpdateVersionChangedDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UpdateVersionChangedDefaultTypeInternal() {}
  union {
    UpdateVersionChanged _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UpdateVersionChangedDefaultTypeInternal _UpdateVersionChanged_default_instance_;
PROTOBUF_CONSTEXPR CacheEvent::CacheEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.event_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct CacheEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CacheEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CacheEventDefaultTypeInternal() {}
  union {
    CacheEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CacheEventDefaultTypeInternal _CacheEvent_default_instance_;
PROTOBUF_CONSTEXPR CacheErrorEvent::CacheErrorEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.type_)*/0
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct CacheErrorEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CacheErrorEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CacheErrorEventDefaultTypeInternal() {}
  union {
    CacheErrorEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CacheErrorEventDefaultTypeInternal _CacheErrorEvent_default_instance_;
PROTOBUF_CONSTEXPR CacheLocationChangeSuccessEvent::CacheLocationChangeSuccessEvent(
    ::_pbi::ConstantInitialized) {}
struct CacheLocationChangeSuccessEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CacheLocationChangeSuccessEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CacheLocationChangeSuccessEventDefaultTypeInternal() {}
  union {
    CacheLocationChangeSuccessEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CacheLocationChangeSuccessEventDefaultTypeInternal _CacheLocationChangeSuccessEvent_default_instance_;
PROTOBUF_CONSTEXPR ChangeLocalCacheFinishedEvent::ChangeLocalCacheFinishedEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.willrestart_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct ChangeLocalCacheFinishedEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ChangeLocalCacheFinishedEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ChangeLocalCacheFinishedEventDefaultTypeInternal() {}
  union {
    ChangeLocalCacheFinishedEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ChangeLocalCacheFinishedEventDefaultTypeInternal _ChangeLocalCacheFinishedEvent_default_instance_;
PROTOBUF_CONSTEXPR IsCacheOnDiskEnabledChanged::IsCacheOnDiskEnabledChanged(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.enabled_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct IsCacheOnDiskEnabledChangedDefaultTypeInternal {
  PROTOBUF_CONSTEXPR IsCacheOnDiskEnabledChangedDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~IsCacheOnDiskEnabledChangedDefaultTypeInternal() {}
  union {
    IsCacheOnDiskEnabledChanged _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 IsCacheOnDiskEnabledChangedDefaultTypeInternal _IsCacheOnDiskEnabledChanged_default_instance_;
PROTOBUF_CONSTEXPR DiskCachePathChanged::DiskCachePathChanged(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.path_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct DiskCachePathChangedDefaultTypeInternal {
  PROTOBUF_CONSTEXPR DiskCachePathChangedDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~DiskCachePathChangedDefaultTypeInternal() {}
  union {
    DiskCachePathChanged _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DiskCachePathChangedDefaultTypeInternal _DiskCachePathChanged_default_instance_;
PROTOBUF_CONSTEXPR MailSettingsEvent::MailSettingsEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.event_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct MailSettingsEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR MailSettingsEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~MailSettingsEventDefaultTypeInternal() {}
  union {
    MailSettingsEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 MailSettingsEventDefaultTypeInternal _MailSettingsEvent_default_instance_;
PROTOBUF_CONSTEXPR MailSettingsErrorEvent::MailSettingsErrorEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.type_)*/0
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct MailSettingsErrorEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR MailSettingsErrorEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~MailSettingsErrorEventDefaultTypeInternal() {}
  union {
    MailSettingsErrorEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 MailSettingsErrorEventDefaultTypeInternal _MailSettingsErrorEvent_default_instance_;
PROTOBUF_CONSTEXPR UseSslForSmtpFinishedEvent::UseSslForSmtpFinishedEvent(
    ::_pbi::ConstantInitialized) {}
struct UseSslForSmtpFinishedEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UseSslForSmtpFinishedEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UseSslForSmtpFinishedEventDefaultTypeInternal() {}
  union {
    UseSslForSmtpFinishedEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UseSslForSmtpFinishedEventDefaultTypeInternal _UseSslForSmtpFinishedEvent_default_instance_;
PROTOBUF_CONSTEXPR ChangePortsFinishedEvent::ChangePortsFinishedEvent(
    ::_pbi::ConstantInitialized) {}
struct ChangePortsFinishedEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ChangePortsFinishedEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ChangePortsFinishedEventDefaultTypeInternal() {}
  union {
    ChangePortsFinishedEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ChangePortsFinishedEventDefaultTypeInternal _ChangePortsFinishedEvent_default_instance_;
PROTOBUF_CONSTEXPR KeychainEvent::KeychainEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.event_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct KeychainEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR KeychainEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~KeychainEventDefaultTypeInternal() {}
  union {
    KeychainEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 KeychainEventDefaultTypeInternal _KeychainEvent_default_instance_;
PROTOBUF_CONSTEXPR ChangeKeychainFinishedEvent::ChangeKeychainFinishedEvent(
    ::_pbi::ConstantInitialized) {}
struct ChangeKeychainFinishedEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ChangeKeychainFinishedEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ChangeKeychainFinishedEventDefaultTypeInternal() {}
  union {
    ChangeKeychainFinishedEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ChangeKeychainFinishedEventDefaultTypeInternal _ChangeKeychainFinishedEvent_default_instance_;
PROTOBUF_CONSTEXPR HasNoKeychainEvent::HasNoKeychainEvent(
    ::_pbi::ConstantInitialized) {}
struct HasNoKeychainEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR HasNoKeychainEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~HasNoKeychainEventDefaultTypeInternal() {}
  union {
    HasNoKeychainEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 HasNoKeychainEventDefaultTypeInternal _HasNoKeychainEvent_default_instance_;
PROTOBUF_CONSTEXPR RebuildKeychainEvent::RebuildKeychainEvent(
    ::_pbi::ConstantInitialized) {}
struct RebuildKeychainEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR RebuildKeychainEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~RebuildKeychainEventDefaultTypeInternal() {}
  union {
    RebuildKeychainEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RebuildKeychainEventDefaultTypeInternal _RebuildKeychainEvent_default_instance_;
PROTOBUF_CONSTEXPR MailEvent::MailEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.event_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct MailEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR MailEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~MailEventDefaultTypeInternal() {}
  union {
    MailEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 MailEventDefaultTypeInternal _MailEvent_default_instance_;
PROTOBUF_CONSTEXPR NoActiveKeyForRecipientEvent::NoActiveKeyForRecipientEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.email_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct NoActiveKeyForRecipientEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR NoActiveKeyForRecipientEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~NoActiveKeyForRecipientEventDefaultTypeInternal() {}
  union {
    NoActiveKeyForRecipientEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 NoActiveKeyForRecipientEventDefaultTypeInternal _NoActiveKeyForRecipientEvent_default_instance_;
PROTOBUF_CONSTEXPR AddressChangedEvent::AddressChangedEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.address_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct AddressChangedEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR AddressChangedEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~AddressChangedEventDefaultTypeInternal() {}
  union {
    AddressChangedEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AddressChangedEventDefaultTypeInternal _AddressChangedEvent_default_instance_;
PROTOBUF_CONSTEXPR AddressChangedLogoutEvent::AddressChangedLogoutEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.address_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct AddressChangedLogoutEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR AddressChangedLogoutEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~AddressChangedLogoutEventDefaultTypeInternal() {}
  union {
    AddressChangedLogoutEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AddressChangedLogoutEventDefaultTypeInternal _AddressChangedLogoutEvent_default_instance_;
PROTOBUF_CONSTEXPR ApiCertIssueEvent::ApiCertIssueEvent(
    ::_pbi::ConstantInitialized) {}
struct ApiCertIssueEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ApiCertIssueEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ApiCertIssueEventDefaultTypeInternal() {}
  union {
    ApiCertIssueEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ApiCertIssueEventDefaultTypeInternal _ApiCertIssueEvent_default_instance_;
PROTOBUF_CONSTEXPR UserEvent::UserEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.event_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct UserEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UserEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UserEventDefaultTypeInternal() {}
  union {
    UserEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UserEventDefaultTypeInternal _UserEvent_default_instance_;
PROTOBUF_CONSTEXPR ToggleSplitModeFinishedEvent::ToggleSplitModeFinishedEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.userid_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct ToggleSplitModeFinishedEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ToggleSplitModeFinishedEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ToggleSplitModeFinishedEventDefaultTypeInternal() {}
  union {
    ToggleSplitModeFinishedEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ToggleSplitModeFinishedEventDefaultTypeInternal _ToggleSplitModeFinishedEvent_default_instance_;
PROTOBUF_CONSTEXPR UserDisconnectedEvent::UserDisconnectedEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.username_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UserDisconnectedEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UserDisconnectedEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UserDisconnectedEventDefaultTypeInternal() {}
  union {
    UserDisconnectedEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UserDisconnectedEventDefaultTypeInternal _UserDisconnectedEvent_default_instance_;
PROTOBUF_CONSTEXPR UserChangedEvent::UserChangedEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.userid_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UserChangedEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UserChangedEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UserChangedEventDefaultTypeInternal() {}
  union {
    UserChangedEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UserChangedEventDefaultTypeInternal _UserChangedEvent_default_instance_;
}  // namespace grpc
static ::_pb::Metadata file_level_metadata_bridge_2eproto[58];
static const ::_pb::EnumDescriptor* file_level_enum_descriptors_bridge_2eproto[5];
static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_bridge_2eproto = nullptr;

const uint32_t TableStruct_bridge_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::AddLogEntryRequest, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::AddLogEntryRequest, _impl_.level_),
  PROTOBUF_FIELD_OFFSET(::grpc::AddLogEntryRequest, _impl_.package_),
  PROTOBUF_FIELD_OFFSET(::grpc::AddLogEntryRequest, _impl_.message_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ReportBugRequest, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::ReportBugRequest, _impl_.ostype_),
  PROTOBUF_FIELD_OFFSET(::grpc::ReportBugRequest, _impl_.osversion_),
  PROTOBUF_FIELD_OFFSET(::grpc::ReportBugRequest, _impl_.description_),
  PROTOBUF_FIELD_OFFSET(::grpc::ReportBugRequest, _impl_.address_),
  PROTOBUF_FIELD_OFFSET(::grpc::ReportBugRequest, _impl_.emailclient_),
  PROTOBUF_FIELD_OFFSET(::grpc::ReportBugRequest, _impl_.includelogs_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::LoginRequest, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::LoginRequest, _impl_.username_),
  PROTOBUF_FIELD_OFFSET(::grpc::LoginRequest, _impl_.password_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::LoginAbortRequest, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::LoginAbortRequest, _impl_.username_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ChangeLocalCacheRequest, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::ChangeLocalCacheRequest, _impl_.enablediskcache_),
  PROTOBUF_FIELD_OFFSET(::grpc::ChangeLocalCacheRequest, _impl_.diskcachepath_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ChangePortsRequest, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::ChangePortsRequest, _impl_.imapport_),
  PROTOBUF_FIELD_OFFSET(::grpc::ChangePortsRequest, _impl_.smtpport_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::AvailableKeychainsResponse, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::AvailableKeychainsResponse, _impl_.keychains_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::User, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::User, _impl_.id_),
  PROTOBUF_FIELD_OFFSET(::grpc::User, _impl_.username_),
  PROTOBUF_FIELD_OFFSET(::grpc::User, _impl_.avatartext_),
  PROTOBUF_FIELD_OFFSET(::grpc::User, _impl_.loggedin_),
  PROTOBUF_FIELD_OFFSET(::grpc::User, _impl_.splitmode_),
  PROTOBUF_FIELD_OFFSET(::grpc::User, _impl_.setupguideseen_),
  PROTOBUF_FIELD_OFFSET(::grpc::User, _impl_.usedbytes_),
  PROTOBUF_FIELD_OFFSET(::grpc::User, _impl_.totalbytes_),
  PROTOBUF_FIELD_OFFSET(::grpc::User, _impl_.password_),
  PROTOBUF_FIELD_OFFSET(::grpc::User, _impl_.addresses_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UserSplitModeRequest, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::UserSplitModeRequest, _impl_.userid_),
  PROTOBUF_FIELD_OFFSET(::grpc::UserSplitModeRequest, _impl_.active_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UserListResponse, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::UserListResponse, _impl_.users_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ConfigureAppleMailRequest, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::ConfigureAppleMailRequest, _impl_.userid_),
  PROTOBUF_FIELD_OFFSET(::grpc::ConfigureAppleMailRequest, _impl_.address_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::EventStreamRequest, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::EventStreamRequest, _impl_.clientplatform_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::StreamEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::grpc::StreamEvent, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::grpc::StreamEvent, _impl_.event_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::AppEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::grpc::AppEvent, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::grpc::AppEvent, _impl_.event_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::InternetStatusEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::InternetStatusEvent, _impl_.connected_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ToggleAutostartFinishedEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ResetFinishedEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ReportBugFinishedEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ReportBugSuccessEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ReportBugErrorEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ShowMainWindowEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::LoginEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::grpc::LoginEvent, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::grpc::LoginEvent, _impl_.event_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::LoginErrorEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::LoginErrorEvent, _impl_.type_),
  PROTOBUF_FIELD_OFFSET(::grpc::LoginErrorEvent, _impl_.message_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::LoginTfaRequestedEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::LoginTfaRequestedEvent, _impl_.username_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::LoginTwoPasswordsRequestedEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::LoginFinishedEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::LoginFinishedEvent, _impl_.userid_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UpdateEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::grpc::UpdateEvent, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::grpc::UpdateEvent, _impl_.event_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UpdateErrorEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::UpdateErrorEvent, _impl_.type_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UpdateManualReadyEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::UpdateManualReadyEvent, _impl_.version_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UpdateManualRestartNeededEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UpdateForceEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::UpdateForceEvent, _impl_.version_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UpdateSilentRestartNeeded, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UpdateIsLatestVersion, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UpdateCheckFinished, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UpdateVersionChanged, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::CacheEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::grpc::CacheEvent, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::grpc::CacheEvent, _impl_.event_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::CacheErrorEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::CacheErrorEvent, _impl_.type_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::CacheLocationChangeSuccessEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ChangeLocalCacheFinishedEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::ChangeLocalCacheFinishedEvent, _impl_.willrestart_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::IsCacheOnDiskEnabledChanged, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::IsCacheOnDiskEnabledChanged, _impl_.enabled_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::DiskCachePathChanged, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::DiskCachePathChanged, _impl_.path_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::MailSettingsEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::grpc::MailSettingsEvent, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::grpc::MailSettingsEvent, _impl_.event_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::MailSettingsErrorEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::MailSettingsErrorEvent, _impl_.type_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UseSslForSmtpFinishedEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ChangePortsFinishedEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::KeychainEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::grpc::KeychainEvent, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::grpc::KeychainEvent, _impl_.event_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ChangeKeychainFinishedEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::HasNoKeychainEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::RebuildKeychainEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::MailEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::grpc::MailEvent, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::grpc::MailEvent, _impl_.event_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::NoActiveKeyForRecipientEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::NoActiveKeyForRecipientEvent, _impl_.email_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::AddressChangedEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::AddressChangedEvent, _impl_.address_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::AddressChangedLogoutEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::AddressChangedLogoutEvent, _impl_.address_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ApiCertIssueEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UserEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::grpc::UserEvent, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::grpc::UserEvent, _impl_.event_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::ToggleSplitModeFinishedEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::ToggleSplitModeFinishedEvent, _impl_.userid_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UserDisconnectedEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::UserDisconnectedEvent, _impl_.username_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::grpc::UserChangedEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::grpc::UserChangedEvent, _impl_.userid_),
};
static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  { 0, -1, -1, sizeof(::grpc::AddLogEntryRequest)},
  { 9, -1, -1, sizeof(::grpc::ReportBugRequest)},
  { 21, -1, -1, sizeof(::grpc::LoginRequest)},
  { 29, -1, -1, sizeof(::grpc::LoginAbortRequest)},
  { 36, -1, -1, sizeof(::grpc::ChangeLocalCacheRequest)},
  { 44, -1, -1, sizeof(::grpc::ChangePortsRequest)},
  { 52, -1, -1, sizeof(::grpc::AvailableKeychainsResponse)},
  { 59, -1, -1, sizeof(::grpc::User)},
  { 75, -1, -1, sizeof(::grpc::UserSplitModeRequest)},
  { 83, -1, -1, sizeof(::grpc::UserListResponse)},
  { 90, -1, -1, sizeof(::grpc::ConfigureAppleMailRequest)},
  { 98, -1, -1, sizeof(::grpc::EventStreamRequest)},
  { 105, -1, -1, sizeof(::grpc::StreamEvent)},
  { 120, -1, -1, sizeof(::grpc::AppEvent)},
  { 134, -1, -1, sizeof(::grpc::InternetStatusEvent)},
  { 141, -1, -1, sizeof(::grpc::ToggleAutostartFinishedEvent)},
  { 147, -1, -1, sizeof(::grpc::ResetFinishedEvent)},
  { 153, -1, -1, sizeof(::grpc::ReportBugFinishedEvent)},
  { 159, -1, -1, sizeof(::grpc::ReportBugSuccessEvent)},
  { 165, -1, -1, sizeof(::grpc::ReportBugErrorEvent)},
  { 171, -1, -1, sizeof(::grpc::ShowMainWindowEvent)},
  { 177, -1, -1, sizeof(::grpc::LoginEvent)},
  { 189, -1, -1, sizeof(::grpc::LoginErrorEvent)},
  { 197, -1, -1, sizeof(::grpc::LoginTfaRequestedEvent)},
  { 204, -1, -1, sizeof(::grpc::LoginTwoPasswordsRequestedEvent)},
  { 210, -1, -1, sizeof(::grpc::LoginFinishedEvent)},
  { 217, -1, -1, sizeof(::grpc::UpdateEvent)},
  { 232, -1, -1, sizeof(::grpc::UpdateErrorEvent)},
  { 239, -1, -1, sizeof(::grpc::UpdateManualReadyEvent)},
  { 246, -1, -1, sizeof(::grpc::UpdateManualRestartNeededEvent)},
  { 252, -1, -1, sizeof(::grpc::UpdateForceEvent)},
  { 259, -1, -1, sizeof(::grpc::UpdateSilentRestartNeeded)},
  { 265, -1, -1, sizeof(::grpc::UpdateIsLatestVersion)},
  { 271, -1, -1, sizeof(::grpc::UpdateCheckFinished)},
  { 277, -1, -1, sizeof(::grpc::UpdateVersionChanged)},
  { 283, -1, -1, sizeof(::grpc::CacheEvent)},
  { 295, -1, -1, sizeof(::grpc::CacheErrorEvent)},
  { 302, -1, -1, sizeof(::grpc::CacheLocationChangeSuccessEvent)},
  { 308, -1, -1, sizeof(::grpc::ChangeLocalCacheFinishedEvent)},
  { 315, -1, -1, sizeof(::grpc::IsCacheOnDiskEnabledChanged)},
  { 322, -1, -1, sizeof(::grpc::DiskCachePathChanged)},
  { 329, -1, -1, sizeof(::grpc::MailSettingsEvent)},
  { 339, -1, -1, sizeof(::grpc::MailSettingsErrorEvent)},
  { 346, -1, -1, sizeof(::grpc::UseSslForSmtpFinishedEvent)},
  { 352, -1, -1, sizeof(::grpc::ChangePortsFinishedEvent)},
  { 358, -1, -1, sizeof(::grpc::KeychainEvent)},
  { 368, -1, -1, sizeof(::grpc::ChangeKeychainFinishedEvent)},
  { 374, -1, -1, sizeof(::grpc::HasNoKeychainEvent)},
  { 380, -1, -1, sizeof(::grpc::RebuildKeychainEvent)},
  { 386, -1, -1, sizeof(::grpc::MailEvent)},
  { 397, -1, -1, sizeof(::grpc::NoActiveKeyForRecipientEvent)},
  { 404, -1, -1, sizeof(::grpc::AddressChangedEvent)},
  { 411, -1, -1, sizeof(::grpc::AddressChangedLogoutEvent)},
  { 418, -1, -1, sizeof(::grpc::ApiCertIssueEvent)},
  { 424, -1, -1, sizeof(::grpc::UserEvent)},
  { 434, -1, -1, sizeof(::grpc::ToggleSplitModeFinishedEvent)},
  { 441, -1, -1, sizeof(::grpc::UserDisconnectedEvent)},
  { 448, -1, -1, sizeof(::grpc::UserChangedEvent)},
};

static const ::_pb::Message* const file_default_instances[] = {
  &::grpc::_AddLogEntryRequest_default_instance_._instance,
  &::grpc::_ReportBugRequest_default_instance_._instance,
  &::grpc::_LoginRequest_default_instance_._instance,
  &::grpc::_LoginAbortRequest_default_instance_._instance,
  &::grpc::_ChangeLocalCacheRequest_default_instance_._instance,
  &::grpc::_ChangePortsRequest_default_instance_._instance,
  &::grpc::_AvailableKeychainsResponse_default_instance_._instance,
  &::grpc::_User_default_instance_._instance,
  &::grpc::_UserSplitModeRequest_default_instance_._instance,
  &::grpc::_UserListResponse_default_instance_._instance,
  &::grpc::_ConfigureAppleMailRequest_default_instance_._instance,
  &::grpc::_EventStreamRequest_default_instance_._instance,
  &::grpc::_StreamEvent_default_instance_._instance,
  &::grpc::_AppEvent_default_instance_._instance,
  &::grpc::_InternetStatusEvent_default_instance_._instance,
  &::grpc::_ToggleAutostartFinishedEvent_default_instance_._instance,
  &::grpc::_ResetFinishedEvent_default_instance_._instance,
  &::grpc::_ReportBugFinishedEvent_default_instance_._instance,
  &::grpc::_ReportBugSuccessEvent_default_instance_._instance,
  &::grpc::_ReportBugErrorEvent_default_instance_._instance,
  &::grpc::_ShowMainWindowEvent_default_instance_._instance,
  &::grpc::_LoginEvent_default_instance_._instance,
  &::grpc::_LoginErrorEvent_default_instance_._instance,
  &::grpc::_LoginTfaRequestedEvent_default_instance_._instance,
  &::grpc::_LoginTwoPasswordsRequestedEvent_default_instance_._instance,
  &::grpc::_LoginFinishedEvent_default_instance_._instance,
  &::grpc::_UpdateEvent_default_instance_._instance,
  &::grpc::_UpdateErrorEvent_default_instance_._instance,
  &::grpc::_UpdateManualReadyEvent_default_instance_._instance,
  &::grpc::_UpdateManualRestartNeededEvent_default_instance_._instance,
  &::grpc::_UpdateForceEvent_default_instance_._instance,
  &::grpc::_UpdateSilentRestartNeeded_default_instance_._instance,
  &::grpc::_UpdateIsLatestVersion_default_instance_._instance,
  &::grpc::_UpdateCheckFinished_default_instance_._instance,
  &::grpc::_UpdateVersionChanged_default_instance_._instance,
  &::grpc::_CacheEvent_default_instance_._instance,
  &::grpc::_CacheErrorEvent_default_instance_._instance,
  &::grpc::_CacheLocationChangeSuccessEvent_default_instance_._instance,
  &::grpc::_ChangeLocalCacheFinishedEvent_default_instance_._instance,
  &::grpc::_IsCacheOnDiskEnabledChanged_default_instance_._instance,
  &::grpc::_DiskCachePathChanged_default_instance_._instance,
  &::grpc::_MailSettingsEvent_default_instance_._instance,
  &::grpc::_MailSettingsErrorEvent_default_instance_._instance,
  &::grpc::_UseSslForSmtpFinishedEvent_default_instance_._instance,
  &::grpc::_ChangePortsFinishedEvent_default_instance_._instance,
  &::grpc::_KeychainEvent_default_instance_._instance,
  &::grpc::_ChangeKeychainFinishedEvent_default_instance_._instance,
  &::grpc::_HasNoKeychainEvent_default_instance_._instance,
  &::grpc::_RebuildKeychainEvent_default_instance_._instance,
  &::grpc::_MailEvent_default_instance_._instance,
  &::grpc::_NoActiveKeyForRecipientEvent_default_instance_._instance,
  &::grpc::_AddressChangedEvent_default_instance_._instance,
  &::grpc::_AddressChangedLogoutEvent_default_instance_._instance,
  &::grpc::_ApiCertIssueEvent_default_instance_._instance,
  &::grpc::_UserEvent_default_instance_._instance,
  &::grpc::_ToggleSplitModeFinishedEvent_default_instance_._instance,
  &::grpc::_UserDisconnectedEvent_default_instance_._instance,
  &::grpc::_UserChangedEvent_default_instance_._instance,
};

const char descriptor_table_protodef_bridge_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
  "\n\014bridge.proto\022\004grpc\032\033google/protobuf/em"
  "pty.proto\032\036google/protobuf/wrappers.prot"
  "o\"U\n\022AddLogEntryRequest\022\035\n\005level\030\001 \001(\0162\016"
  ".grpc.LogLevel\022\017\n\007package\030\002 \001(\t\022\017\n\007messa"
  "ge\030\003 \001(\t\"\205\001\n\020ReportBugRequest\022\016\n\006osType\030"
  "\001 \001(\t\022\021\n\tosVersion\030\002 \001(\t\022\023\n\013description\030"
  "\003 \001(\t\022\017\n\007address\030\004 \001(\t\022\023\n\013emailClient\030\005 "
  "\001(\t\022\023\n\013includeLogs\030\006 \001(\010\"2\n\014LoginRequest"
  "\022\020\n\010username\030\001 \001(\t\022\020\n\010password\030\002 \001(\t\"%\n\021"
  "LoginAbortRequest\022\020\n\010username\030\001 \001(\t\"I\n\027C"
  "hangeLocalCacheRequest\022\027\n\017enableDiskCach"
  "e\030\001 \001(\010\022\025\n\rdiskCachePath\030\002 \001(\t\"8\n\022Change"
  "PortsRequest\022\020\n\010imapPort\030\001 \001(\005\022\020\n\010smtpPo"
  "rt\030\002 \001(\005\"/\n\032AvailableKeychainsResponse\022\021"
  "\n\tkeychains\030\001 \003(\t\"\301\001\n\004User\022\n\n\002id\030\001 \001(\t\022\020"
  "\n\010username\030\002 \001(\t\022\022\n\navatarText\030\003 \001(\t\022\020\n\010"
  "loggedIn\030\004 \001(\010\022\021\n\tsplitMode\030\005 \001(\010\022\026\n\016set"
  "upGuideSeen\030\006 \001(\010\022\021\n\tusedBytes\030\007 \001(\003\022\022\n\n"
  "totalBytes\030\010 \001(\003\022\020\n\010password\030\t \001(\t\022\021\n\tad"
  "dresses\030\n \003(\t\"6\n\024UserSplitModeRequest\022\016\n"
  "\006userID\030\001 \001(\t\022\016\n\006active\030\002 \001(\010\"-\n\020UserLis"
  "tResponse\022\031\n\005users\030\001 \003(\0132\n.grpc.User\"<\n\031"
  "ConfigureAppleMailRequest\022\016\n\006userID\030\001 \001("
  "\t\022\017\n\007address\030\002 \001(\t\",\n\022EventStreamRequest"
  "\022\026\n\016ClientPlatform\030\001 \001(\t\"\274\002\n\013StreamEvent"
  "\022\035\n\003app\030\001 \001(\0132\016.grpc.AppEventH\000\022!\n\005login"
  "\030\002 \001(\0132\020.grpc.LoginEventH\000\022#\n\006update\030\003 \001"
  "(\0132\021.grpc.UpdateEventH\000\022!\n\005cache\030\004 \001(\0132\020"
  ".grpc.CacheEventH\000\022/\n\014mailSettings\030\005 \001(\013"
  "2\027.grpc.MailSettingsEventH\000\022\'\n\010keychain\030"
  "\006 \001(\0132\023.grpc.KeychainEventH\000\022\037\n\004mail\030\007 \001"
  "(\0132\017.grpc.MailEventH\000\022\037\n\004user\030\010 \001(\0132\017.gr"
  "pc.UserEventH\000B\007\n\005event\"\240\003\n\010AppEvent\0223\n\016"
  "internetStatus\030\001 \001(\0132\031.grpc.InternetStat"
  "usEventH\000\022E\n\027toggleAutostartFinished\030\002 \001"
  "(\0132\".grpc.ToggleAutostartFinishedEventH\000"
  "\0221\n\rresetFinished\030\003 \001(\0132\030.grpc.ResetFini"
  "shedEventH\000\0229\n\021reportBugFinished\030\004 \001(\0132\034"
  ".grpc.ReportBugFinishedEventH\000\0227\n\020report"
  "BugSuccess\030\005 \001(\0132\033.grpc.ReportBugSuccess"
  "EventH\000\0223\n\016reportBugError\030\006 \001(\0132\031.grpc.R"
  "eportBugErrorEventH\000\0223\n\016showMainWindow\030\007"
  " \001(\0132\031.grpc.ShowMainWindowEventH\000B\007\n\005eve"
  "nt\"(\n\023InternetStatusEvent\022\021\n\tconnected\030\001"
  " \001(\010\"\036\n\034ToggleAutostartFinishedEvent\"\024\n\022"
  "ResetFinishedEvent\"\030\n\026ReportBugFinishedE"
  "vent\"\027\n\025ReportBugSuccessEvent\"\025\n\023ReportB"
  "ugErrorEvent\"\025\n\023ShowMainWindowEvent\"\235\002\n\n"
  "LoginEvent\022&\n\005error\030\001 \001(\0132\025.grpc.LoginEr"
  "rorEventH\000\0224\n\014tfaRequested\030\002 \001(\0132\034.grpc."
  "LoginTfaRequestedEventH\000\022E\n\024twoPasswordR"
  "equested\030\003 \001(\0132%.grpc.LoginTwoPasswordsR"
  "equestedEventH\000\022,\n\010finished\030\004 \001(\0132\030.grpc"
  ".LoginFinishedEventH\000\0223\n\017alreadyLoggedIn"
  "\030\005 \001(\0132\030.grpc.LoginFinishedEventH\000B\007\n\005ev"
  "ent\"F\n\017LoginErrorEvent\022\"\n\004type\030\001 \001(\0162\024.g"
  "rpc.LoginErrorType\022\017\n\007message\030\002 \001(\t\"*\n\026L"
  "oginTfaRequestedEvent\022\020\n\010username\030\001 \001(\t\""
  "!\n\037LoginTwoPasswordsRequestedEvent\"$\n\022Lo"
  "ginFinishedEvent\022\016\n\006userID\030\001 \001(\t\"\304\003\n\013Upd"
  "ateEvent\022\'\n\005error\030\001 \001(\0132\026.grpc.UpdateErr"
  "orEventH\000\0223\n\013manualReady\030\002 \001(\0132\034.grpc.Up"
  "dateManualReadyEventH\000\022C\n\023manualRestartN"
  "eeded\030\003 \001(\0132$.grpc.UpdateManualRestartNe"
  "ededEventH\000\022\'\n\005force\030\004 \001(\0132\026.grpc.Update"
  "ForceEventH\000\022>\n\023silentRestartNeeded\030\005 \001("
  "\0132\037.grpc.UpdateSilentRestartNeededH\000\0226\n\017"
  "isLatestVersion\030\006 \001(\0132\033.grpc.UpdateIsLat"
  "estVersionH\000\0222\n\rcheckFinished\030\007 \001(\0132\031.gr"
  "pc.UpdateCheckFinishedH\000\0224\n\016versionChang"
  "ed\030\010 \001(\0132\032.grpc.UpdateVersionChangedH\000B\007"
  "\n\005event\"7\n\020UpdateErrorEvent\022#\n\004type\030\001 \001("
  "\0162\025.grpc.UpdateErrorType\")\n\026UpdateManual"
  "ReadyEvent\022\017\n\007version\030\001 \001(\t\" \n\036UpdateMan"
  "ualRestartNeededEvent\"#\n\020UpdateForceEven"
  "t\022\017\n\007version\030\001 \001(\t\"\033\n\031UpdateSilentRestar"
  "tNeeded\"\027\n\025UpdateIsLatestVersion\"\025\n\023Upda"
  "teCheckFinished\"\026\n\024UpdateVersionChanged\""
  "\325\002\n\nCacheEvent\022&\n\005error\030\001 \001(\0132\025.grpc.Cac"
  "heErrorEventH\000\022G\n\026locationChangedSuccess"
  "\030\002 \001(\0132%.grpc.CacheLocationChangeSuccess"
  "EventH\000\022G\n\030changeLocalCacheFinished\030\003 \001("
  "\0132#.grpc.ChangeLocalCacheFinishedEventH\000"
  "\022H\n\033isCacheOnDiskEnabledChanged\030\004 \001(\0132!."
  "grpc.IsCacheOnDiskEnabledChangedH\000\022:\n\024di"
  "skCachePathChanged\030\005 \001(\0132\032.grpc.DiskCach"
  "ePathChangedH\000B\007\n\005event\"5\n\017CacheErrorEve"
  "nt\022\"\n\004type\030\001 \001(\0162\024.grpc.CacheErrorType\"!"
  "\n\037CacheLocationChangeSuccessEvent\"4\n\035Cha"
  "ngeLocalCacheFinishedEvent\022\023\n\013willRestar"
  "t\030\001 \001(\010\".\n\033IsCacheOnDiskEnabledChanged\022\017"
  "\n\007enabled\030\001 \001(\010\"$\n\024DiskCachePathChanged\022"
  "\014\n\004path\030\001 \001(\t\"\315\001\n\021MailSettingsEvent\022-\n\005e"
  "rror\030\001 \001(\0132\034.grpc.MailSettingsErrorEvent"
  "H\000\022A\n\025useSslForSmtpFinished\030\002 \001(\0132 .grpc"
  ".UseSslForSmtpFinishedEventH\000\022=\n\023changeP"
  "ortsFinished\030\003 \001(\0132\036.grpc.ChangePortsFin"
  "ishedEventH\000B\007\n\005event\"C\n\026MailSettingsErr"
  "orEvent\022)\n\004type\030\001 \001(\0162\033.grpc.MailSetting"
  "sErrorType\"\034\n\032UseSslForSmtpFinishedEvent"
  "\"\032\n\030ChangePortsFinishedEvent\"\307\001\n\rKeychai"
  "nEvent\022C\n\026changeKeychainFinished\030\001 \001(\0132!"
  ".grpc.ChangeKeychainFinishedEventH\000\0221\n\rh"
  "asNoKeychain\030\002 \001(\0132\030.grpc.HasNoKeychainE"
  "ventH\000\0225\n\017rebuildKeychain\030\003 \001(\0132\032.grpc.R"
  "ebuildKeychainEventH\000B\007\n\005event\"\035\n\033Change"
  "KeychainFinishedEvent\"\024\n\022HasNoKeychainEv"
  "ent\"\026\n\024RebuildKeychainEvent\"\207\002\n\tMailEven"
  "t\022J\n\034noActiveKeyForRecipientEvent\030\001 \001(\0132"
  "\".grpc.NoActiveKeyForRecipientEventH\000\0223\n"
  "\016addressChanged\030\002 \001(\0132\031.grpc.AddressChan"
  "gedEventH\000\022\?\n\024addressChangedLogout\030\003 \001(\013"
  "2\037.grpc.AddressChangedLogoutEventH\000\022/\n\014a"
  "piCertIssue\030\006 \001(\0132\027.grpc.ApiCertIssueEve"
  "ntH\000B\007\n\005event\"-\n\034NoActiveKeyForRecipient"
  "Event\022\r\n\005email\030\001 \001(\t\"&\n\023AddressChangedEv"
  "ent\022\017\n\007address\030\001 \001(\t\",\n\031AddressChangedLo"
  "goutEvent\022\017\n\007address\030\001 \001(\t\"\023\n\021ApiCertIss"
  "ueEvent\"\303\001\n\tUserEvent\022E\n\027toggleSplitMode"
  "Finished\030\001 \001(\0132\".grpc.ToggleSplitModeFin"
  "ishedEventH\000\0227\n\020userDisconnected\030\002 \001(\0132\033"
  ".grpc.UserDisconnectedEventH\000\022-\n\013userCha"
  "nged\030\003 \001(\0132\026.grpc.UserChangedEventH\000B\007\n\005"
  "event\".\n\034ToggleSplitModeFinishedEvent\022\016\n"
  "\006userID\030\001 \001(\t\")\n\025UserDisconnectedEvent\022\020"
  "\n\010username\030\001 \001(\t\"\"\n\020UserChangedEvent\022\016\n\006"
  "userID\030\001 \001(\t*q\n\010LogLevel\022\r\n\tLOG_PANIC\020\000\022"
  "\r\n\tLOG_FATAL\020\001\022\r\n\tLOG_ERROR\020\002\022\014\n\010LOG_WAR"
  "N\020\003\022\014\n\010LOG_INFO\020\004\022\r\n\tLOG_DEBUG\020\005\022\r\n\tLOG_"
  "TRACE\020\006*\242\001\n\016LoginErrorType\022\033\n\027USERNAME_P"
  "ASSWORD_ERROR\020\000\022\r\n\tFREE_USER\020\001\022\024\n\020CONNEC"
  "TION_ERROR\020\002\022\r\n\tTFA_ERROR\020\003\022\r\n\tTFA_ABORT"
  "\020\004\022\027\n\023TWO_PASSWORDS_ERROR\020\005\022\027\n\023TWO_PASSW"
  "ORDS_ABORT\020\006*[\n\017UpdateErrorType\022\027\n\023UPDAT"
  "E_MANUAL_ERROR\020\000\022\026\n\022UPDATE_FORCE_ERROR\020\001"
  "\022\027\n\023UPDATE_SILENT_ERROR\020\002*W\n\016CacheErrorT"
  "ype\022\033\n\027CACHE_UNAVAILABLE_ERROR\020\000\022\031\n\025CACH"
  "E_CANT_MOVE_ERROR\020\001\022\r\n\tDISK_FULL\020\002*A\n\025Ma"
  "ilSettingsErrorType\022\023\n\017IMAP_PORT_ISSUE\020\000"
  "\022\023\n\017SMTP_PORT_ISSUE\020\0012\347\037\n\006Bridge\022I\n\013Chec"
  "kTokens\022\034.google.protobuf.StringValue\032\034."
  "google.protobuf.StringValue\022\?\n\013AddLogEnt"
  "ry\022\030.grpc.AddLogEntryRequest\032\026.google.pr"
  "otobuf.Empty\022:\n\010GuiReady\022\026.google.protob"
  "uf.Empty\032\026.google.protobuf.Empty\0226\n\004Quit"
  "\022\026.google.protobuf.Empty\032\026.google.protob"
  "uf.Empty\0229\n\007Restart\022\026.google.protobuf.Em"
  "pty\032\026.google.protobuf.Empty\022C\n\rShowOnSta"
  "rtup\022\026.google.protobuf.Empty\032\032.google.pr"
  "otobuf.BoolValue\022F\n\020ShowSplashScreen\022\026.g"
  "oogle.protobuf.Empty\032\032.google.protobuf.B"
  "oolValue\022E\n\017IsFirstGuiStart\022\026.google.pro"
  "tobuf.Empty\032\032.google.protobuf.BoolValue\022"
  "F\n\020SetIsAutostartOn\022\032.google.protobuf.Bo"
  "olValue\032\026.google.protobuf.Empty\022C\n\rIsAut"
  "ostartOn\022\026.google.protobuf.Empty\032\032.googl"
  "e.protobuf.BoolValue\022F\n\020SetIsBetaEnabled"
  "\022\032.google.protobuf.BoolValue\032\026.google.pr"
  "otobuf.Empty\022C\n\rIsBetaEnabled\022\026.google.p"
  "rotobuf.Empty\032\032.google.protobuf.BoolValu"
  "e\022I\n\023SetIsAllMailVisible\022\032.google.protob"
  "uf.BoolValue\032\026.google.protobuf.Empty\022F\n\020"
  "IsAllMailVisible\022\026.google.protobuf.Empty"
  "\032\032.google.protobuf.BoolValue\022<\n\004GoOs\022\026.g"
  "oogle.protobuf.Empty\032\034.google.protobuf.S"
  "tringValue\022>\n\014TriggerReset\022\026.google.prot"
  "obuf.Empty\032\026.google.protobuf.Empty\022\?\n\007Ve"
  "rsion\022\026.google.protobuf.Empty\032\034.google.p"
  "rotobuf.StringValue\022@\n\010LogsPath\022\026.google"
  ".protobuf.Empty\032\034.google.protobuf.String"
  "Value\022C\n\013LicensePath\022\026.google.protobuf.E"
  "mpty\032\034.google.protobuf.StringValue\022L\n\024Re"
  "leaseNotesPageLink\022\026.google.protobuf.Emp"
  "ty\032\034.google.protobuf.StringValue\022N\n\026Depe"
  "ndencyLicensesLink\022\026.google.protobuf.Emp"
  "ty\032\034.google.protobuf.StringValue\022G\n\017Land"
  "ingPageLink\022\026.google.protobuf.Empty\032\034.go"
  "ogle.protobuf.StringValue\022J\n\022SetColorSch"
  "emeName\022\034.google.protobuf.StringValue\032\026."
  "google.protobuf.Empty\022G\n\017ColorSchemeName"
  "\022\026.google.protobuf.Empty\032\034.google.protob"
  "uf.StringValue\022J\n\022CurrentEmailClient\022\026.g"
  "oogle.protobuf.Empty\032\034.google.protobuf.S"
  "tringValue\022;\n\tReportBug\022\026.grpc.ReportBug"
  "Request\032\026.google.protobuf.Empty\022E\n\rForce"
  "Launcher\022\034.google.protobuf.StringValue\032\026"
  ".google.protobuf.Empty\022I\n\021SetMainExecuta"
  "ble\022\034.google.protobuf.StringValue\032\026.goog"
  "le.protobuf.Empty\0223\n\005Login\022\022.grpc.LoginR"
  "equest\032\026.google.protobuf.Empty\0226\n\010Login2"
  "FA\022\022.grpc.LoginRequest\032\026.google.protobuf"
  ".Empty\022=\n\017Login2Passwords\022\022.grpc.LoginRe"
  "quest\032\026.google.protobuf.Empty\022=\n\nLoginAb"
  "ort\022\027.grpc.LoginAbortRequest\032\026.google.pr"
  "otobuf.Empty\022=\n\013CheckUpdate\022\026.google.pro"
  "tobuf.Empty\032\026.google.protobuf.Empty\022\?\n\rI"
  "nstallUpdate\022\026.google.protobuf.Empty\032\026.g"
  "oogle.protobuf.Empty\022L\n\026SetIsAutomaticUp"
  "dateOn\022\032.google.protobuf.BoolValue\032\026.goo"
  "gle.protobuf.Empty\022I\n\023IsAutomaticUpdateO"
  "n\022\026.google.protobuf.Empty\032\032.google.proto"
  "buf.BoolValue\022J\n\024IsCacheOnDiskEnabled\022\026."
  "google.protobuf.Empty\032\032.google.protobuf."
  "BoolValue\022E\n\rDiskCachePath\022\026.google.prot"
  "obuf.Empty\032\034.google.protobuf.StringValue"
  "\022I\n\020ChangeLocalCache\022\035.grpc.ChangeLocalC"
  "acheRequest\032\026.google.protobuf.Empty\022E\n\017S"
  "etIsDoHEnabled\022\032.google.protobuf.BoolVal"
  "ue\032\026.google.protobuf.Empty\022B\n\014IsDoHEnabl"
  "ed\022\026.google.protobuf.Empty\032\032.google.prot"
  "obuf.BoolValue\022F\n\020SetUseSslForSmtp\022\032.goo"
  "gle.protobuf.BoolValue\032\026.google.protobuf"
  ".Empty\022C\n\rUseSslForSmtp\022\026.google.protobu"
  "f.Empty\032\032.google.protobuf.BoolValue\022@\n\010H"
  "ostname\022\026.google.protobuf.Empty\032\034.google"
  ".protobuf.StringValue\022\?\n\010ImapPort\022\026.goog"
  "le.protobuf.Empty\032\033.google.protobuf.Int3"
  "2Value\022\?\n\010SmtpPort\022\026.google.protobuf.Emp"
  "ty\032\033.google.protobuf.Int32Value\022\?\n\013Chang"
  "ePorts\022\030.grpc.ChangePortsRequest\032\026.googl"
  "e.protobuf.Empty\022E\n\nIsPortFree\022\033.google."
  "protobuf.Int32Value\032\032.google.protobuf.Bo"
  "olValue\022N\n\022AvailableKeychains\022\026.google.p"
  "rotobuf.Empty\032 .grpc.AvailableKeychainsR"
  "esponse\022J\n\022SetCurrentKeychain\022\034.google.p"
  "rotobuf.StringValue\032\026.google.protobuf.Em"
  "pty\022G\n\017CurrentKeychain\022\026.google.protobuf"
  ".Empty\032\034.google.protobuf.StringValue\022=\n\013"
  "GetUserList\022\026.google.protobuf.Empty\032\026.gr"
  "pc.UserListResponse\0223\n\007GetUser\022\034.google."
  "protobuf.StringValue\032\n.grpc.User\022F\n\020SetU"
  "serSplitMode\022\032.grpc.UserSplitModeRequest"
  "\032\026.google.protobuf.Empty\022B\n\nLogoutUser\022\034"
  ".google.protobuf.StringValue\032\026.google.pr"
  "otobuf.Empty\022B\n\nRemoveUser\022\034.google.prot"
  "obuf.StringValue\032\026.google.protobuf.Empty"
  "\022Q\n\026ConfigureUserAppleMail\022\037.grpc.Config"
  "ureAppleMailRequest\032\026.google.protobuf.Em"
  "pty\022\?\n\016RunEventStream\022\030.grpc.EventStream"
  "Request\032\021.grpc.StreamEvent0\001\022A\n\017StopEven"
  "tStream\022\026.google.protobuf.Empty\032\026.google"
  ".protobuf.EmptyB6Z4github.com/ProtonMail"
  "/proton-bridge/v2/internal/grpcb\006proto3"
  ;
static const ::_pbi::DescriptorTable* const descriptor_table_bridge_2eproto_deps[2] = {
  &::descriptor_table_google_2fprotobuf_2fempty_2eproto,
  &::descriptor_table_google_2fprotobuf_2fwrappers_2eproto,
};
static ::_pbi::once_flag descriptor_table_bridge_2eproto_once;
const ::_pbi::DescriptorTable descriptor_table_bridge_2eproto = {
    false, false, 9719, descriptor_table_protodef_bridge_2eproto,
    "bridge.proto",
    &descriptor_table_bridge_2eproto_once, descriptor_table_bridge_2eproto_deps, 2, 58,
    schemas, file_default_instances, TableStruct_bridge_2eproto::offsets,
    file_level_metadata_bridge_2eproto, file_level_enum_descriptors_bridge_2eproto,
    file_level_service_descriptors_bridge_2eproto,
};
PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_bridge_2eproto_getter() {
  return &descriptor_table_bridge_2eproto;
}

// Force running AddDescriptors() at dynamic initialization time.
PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_bridge_2eproto(&descriptor_table_bridge_2eproto);
namespace grpc {
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* LogLevel_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_bridge_2eproto);
  return file_level_enum_descriptors_bridge_2eproto[0];
}
bool LogLevel_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* LoginErrorType_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_bridge_2eproto);
  return file_level_enum_descriptors_bridge_2eproto[1];
}
bool LoginErrorType_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* UpdateErrorType_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_bridge_2eproto);
  return file_level_enum_descriptors_bridge_2eproto[2];
}
bool UpdateErrorType_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* CacheErrorType_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_bridge_2eproto);
  return file_level_enum_descriptors_bridge_2eproto[3];
}
bool CacheErrorType_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MailSettingsErrorType_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_bridge_2eproto);
  return file_level_enum_descriptors_bridge_2eproto[4];
}
bool MailSettingsErrorType_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
      return true;
    default:
      return false;
  }
}


// ===================================================================

class AddLogEntryRequest::_Internal {
 public:
};

AddLogEntryRequest::AddLogEntryRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.AddLogEntryRequest)
}
AddLogEntryRequest::AddLogEntryRequest(const AddLogEntryRequest& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  AddLogEntryRequest* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.package_){}
    , decltype(_impl_.message_){}
    , decltype(_impl_.level_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.package_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.package_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_package().empty()) {
    _this->_impl_.package_.Set(from._internal_package(), 
      _this->GetArenaForAllocation());
  }
  _impl_.message_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.message_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_message().empty()) {
    _this->_impl_.message_.Set(from._internal_message(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.level_ = from._impl_.level_;
  // @@protoc_insertion_point(copy_constructor:grpc.AddLogEntryRequest)
}

inline void AddLogEntryRequest::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.package_){}
    , decltype(_impl_.message_){}
    , decltype(_impl_.level_){0}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.package_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.package_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.message_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.message_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

AddLogEntryRequest::~AddLogEntryRequest() {
  // @@protoc_insertion_point(destructor:grpc.AddLogEntryRequest)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void AddLogEntryRequest::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.package_.Destroy();
  _impl_.message_.Destroy();
}

void AddLogEntryRequest::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void AddLogEntryRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.AddLogEntryRequest)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.package_.ClearToEmpty();
  _impl_.message_.ClearToEmpty();
  _impl_.level_ = 0;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* AddLogEntryRequest::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .grpc.LogLevel level = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_set_level(static_cast<::grpc::LogLevel>(val));
        } else
          goto handle_unusual;
        continue;
      // string package = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_package();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.AddLogEntryRequest.package"));
        } else
          goto handle_unusual;
        continue;
      // string message = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_message();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.AddLogEntryRequest.message"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* AddLogEntryRequest::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.AddLogEntryRequest)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .grpc.LogLevel level = 1;
  if (this->_internal_level() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      1, this->_internal_level(), target);
  }

  // string package = 2;
  if (!this->_internal_package().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_package().data(), static_cast<int>(this->_internal_package().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.AddLogEntryRequest.package");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_package(), target);
  }

  // string message = 3;
  if (!this->_internal_message().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_message().data(), static_cast<int>(this->_internal_message().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.AddLogEntryRequest.message");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_message(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.AddLogEntryRequest)
  return target;
}

size_t AddLogEntryRequest::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.AddLogEntryRequest)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string package = 2;
  if (!this->_internal_package().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_package());
  }

  // string message = 3;
  if (!this->_internal_message().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_message());
  }

  // .grpc.LogLevel level = 1;
  if (this->_internal_level() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_level());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AddLogEntryRequest::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    AddLogEntryRequest::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AddLogEntryRequest::GetClassData() const { return &_class_data_; }


void AddLogEntryRequest::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<AddLogEntryRequest*>(&to_msg);
  auto& from = static_cast<const AddLogEntryRequest&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.AddLogEntryRequest)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_package().empty()) {
    _this->_internal_set_package(from._internal_package());
  }
  if (!from._internal_message().empty()) {
    _this->_internal_set_message(from._internal_message());
  }
  if (from._internal_level() != 0) {
    _this->_internal_set_level(from._internal_level());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void AddLogEntryRequest::CopyFrom(const AddLogEntryRequest& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.AddLogEntryRequest)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool AddLogEntryRequest::IsInitialized() const {
  return true;
}

void AddLogEntryRequest::InternalSwap(AddLogEntryRequest* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.package_, lhs_arena,
      &other->_impl_.package_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.message_, lhs_arena,
      &other->_impl_.message_, rhs_arena
  );
  swap(_impl_.level_, other->_impl_.level_);
}

::PROTOBUF_NAMESPACE_ID::Metadata AddLogEntryRequest::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[0]);
}

// ===================================================================

class ReportBugRequest::_Internal {
 public:
};

ReportBugRequest::ReportBugRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.ReportBugRequest)
}
ReportBugRequest::ReportBugRequest(const ReportBugRequest& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  ReportBugRequest* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.ostype_){}
    , decltype(_impl_.osversion_){}
    , decltype(_impl_.description_){}
    , decltype(_impl_.address_){}
    , decltype(_impl_.emailclient_){}
    , decltype(_impl_.includelogs_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.ostype_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.ostype_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_ostype().empty()) {
    _this->_impl_.ostype_.Set(from._internal_ostype(), 
      _this->GetArenaForAllocation());
  }
  _impl_.osversion_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.osversion_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_osversion().empty()) {
    _this->_impl_.osversion_.Set(from._internal_osversion(), 
      _this->GetArenaForAllocation());
  }
  _impl_.description_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.description_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_description().empty()) {
    _this->_impl_.description_.Set(from._internal_description(), 
      _this->GetArenaForAllocation());
  }
  _impl_.address_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.address_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_address().empty()) {
    _this->_impl_.address_.Set(from._internal_address(), 
      _this->GetArenaForAllocation());
  }
  _impl_.emailclient_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.emailclient_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_emailclient().empty()) {
    _this->_impl_.emailclient_.Set(from._internal_emailclient(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.includelogs_ = from._impl_.includelogs_;
  // @@protoc_insertion_point(copy_constructor:grpc.ReportBugRequest)
}

inline void ReportBugRequest::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.ostype_){}
    , decltype(_impl_.osversion_){}
    , decltype(_impl_.description_){}
    , decltype(_impl_.address_){}
    , decltype(_impl_.emailclient_){}
    , decltype(_impl_.includelogs_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.ostype_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.ostype_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.osversion_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.osversion_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.description_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.description_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.address_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.address_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.emailclient_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.emailclient_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

ReportBugRequest::~ReportBugRequest() {
  // @@protoc_insertion_point(destructor:grpc.ReportBugRequest)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void ReportBugRequest::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.ostype_.Destroy();
  _impl_.osversion_.Destroy();
  _impl_.description_.Destroy();
  _impl_.address_.Destroy();
  _impl_.emailclient_.Destroy();
}

void ReportBugRequest::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void ReportBugRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.ReportBugRequest)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.ostype_.ClearToEmpty();
  _impl_.osversion_.ClearToEmpty();
  _impl_.description_.ClearToEmpty();
  _impl_.address_.ClearToEmpty();
  _impl_.emailclient_.ClearToEmpty();
  _impl_.includelogs_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* ReportBugRequest::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string osType = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_ostype();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.ReportBugRequest.osType"));
        } else
          goto handle_unusual;
        continue;
      // string osVersion = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_osversion();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.ReportBugRequest.osVersion"));
        } else
          goto handle_unusual;
        continue;
      // string description = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_description();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.ReportBugRequest.description"));
        } else
          goto handle_unusual;
        continue;
      // string address = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_address();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.ReportBugRequest.address"));
        } else
          goto handle_unusual;
        continue;
      // string emailClient = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          auto str = _internal_mutable_emailclient();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.ReportBugRequest.emailClient"));
        } else
          goto handle_unusual;
        continue;
      // bool includeLogs = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _impl_.includelogs_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* ReportBugRequest::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.ReportBugRequest)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string osType = 1;
  if (!this->_internal_ostype().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_ostype().data(), static_cast<int>(this->_internal_ostype().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.ReportBugRequest.osType");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_ostype(), target);
  }

  // string osVersion = 2;
  if (!this->_internal_osversion().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_osversion().data(), static_cast<int>(this->_internal_osversion().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.ReportBugRequest.osVersion");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_osversion(), target);
  }

  // string description = 3;
  if (!this->_internal_description().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_description().data(), static_cast<int>(this->_internal_description().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.ReportBugRequest.description");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_description(), target);
  }

  // string address = 4;
  if (!this->_internal_address().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_address().data(), static_cast<int>(this->_internal_address().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.ReportBugRequest.address");
    target = stream->WriteStringMaybeAliased(
        4, this->_internal_address(), target);
  }

  // string emailClient = 5;
  if (!this->_internal_emailclient().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_emailclient().data(), static_cast<int>(this->_internal_emailclient().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.ReportBugRequest.emailClient");
    target = stream->WriteStringMaybeAliased(
        5, this->_internal_emailclient(), target);
  }

  // bool includeLogs = 6;
  if (this->_internal_includelogs() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(6, this->_internal_includelogs(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.ReportBugRequest)
  return target;
}

size_t ReportBugRequest::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.ReportBugRequest)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string osType = 1;
  if (!this->_internal_ostype().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_ostype());
  }

  // string osVersion = 2;
  if (!this->_internal_osversion().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_osversion());
  }

  // string description = 3;
  if (!this->_internal_description().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_description());
  }

  // string address = 4;
  if (!this->_internal_address().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_address());
  }

  // string emailClient = 5;
  if (!this->_internal_emailclient().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_emailclient());
  }

  // bool includeLogs = 6;
  if (this->_internal_includelogs() != 0) {
    total_size += 1 + 1;
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ReportBugRequest::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    ReportBugRequest::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ReportBugRequest::GetClassData() const { return &_class_data_; }


void ReportBugRequest::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<ReportBugRequest*>(&to_msg);
  auto& from = static_cast<const ReportBugRequest&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.ReportBugRequest)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_ostype().empty()) {
    _this->_internal_set_ostype(from._internal_ostype());
  }
  if (!from._internal_osversion().empty()) {
    _this->_internal_set_osversion(from._internal_osversion());
  }
  if (!from._internal_description().empty()) {
    _this->_internal_set_description(from._internal_description());
  }
  if (!from._internal_address().empty()) {
    _this->_internal_set_address(from._internal_address());
  }
  if (!from._internal_emailclient().empty()) {
    _this->_internal_set_emailclient(from._internal_emailclient());
  }
  if (from._internal_includelogs() != 0) {
    _this->_internal_set_includelogs(from._internal_includelogs());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void ReportBugRequest::CopyFrom(const ReportBugRequest& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.ReportBugRequest)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool ReportBugRequest::IsInitialized() const {
  return true;
}

void ReportBugRequest::InternalSwap(ReportBugRequest* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.ostype_, lhs_arena,
      &other->_impl_.ostype_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.osversion_, lhs_arena,
      &other->_impl_.osversion_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.description_, lhs_arena,
      &other->_impl_.description_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.address_, lhs_arena,
      &other->_impl_.address_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.emailclient_, lhs_arena,
      &other->_impl_.emailclient_, rhs_arena
  );
  swap(_impl_.includelogs_, other->_impl_.includelogs_);
}

::PROTOBUF_NAMESPACE_ID::Metadata ReportBugRequest::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[1]);
}

// ===================================================================

class LoginRequest::_Internal {
 public:
};

LoginRequest::LoginRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.LoginRequest)
}
LoginRequest::LoginRequest(const LoginRequest& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  LoginRequest* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.username_){}
    , decltype(_impl_.password_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.username_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.username_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_username().empty()) {
    _this->_impl_.username_.Set(from._internal_username(), 
      _this->GetArenaForAllocation());
  }
  _impl_.password_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.password_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_password().empty()) {
    _this->_impl_.password_.Set(from._internal_password(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.LoginRequest)
}

inline void LoginRequest::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.username_){}
    , decltype(_impl_.password_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.username_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.username_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.password_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.password_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

LoginRequest::~LoginRequest() {
  // @@protoc_insertion_point(destructor:grpc.LoginRequest)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void LoginRequest::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.username_.Destroy();
  _impl_.password_.Destroy();
}

void LoginRequest::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void LoginRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.LoginRequest)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.username_.ClearToEmpty();
  _impl_.password_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* LoginRequest::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string username = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_username();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.LoginRequest.username"));
        } else
          goto handle_unusual;
        continue;
      // string password = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_password();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.LoginRequest.password"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* LoginRequest::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.LoginRequest)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string username = 1;
  if (!this->_internal_username().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_username().data(), static_cast<int>(this->_internal_username().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.LoginRequest.username");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_username(), target);
  }

  // string password = 2;
  if (!this->_internal_password().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_password().data(), static_cast<int>(this->_internal_password().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.LoginRequest.password");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_password(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.LoginRequest)
  return target;
}

size_t LoginRequest::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.LoginRequest)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string username = 1;
  if (!this->_internal_username().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_username());
  }

  // string password = 2;
  if (!this->_internal_password().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_password());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData LoginRequest::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    LoginRequest::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*LoginRequest::GetClassData() const { return &_class_data_; }


void LoginRequest::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<LoginRequest*>(&to_msg);
  auto& from = static_cast<const LoginRequest&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.LoginRequest)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_username().empty()) {
    _this->_internal_set_username(from._internal_username());
  }
  if (!from._internal_password().empty()) {
    _this->_internal_set_password(from._internal_password());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void LoginRequest::CopyFrom(const LoginRequest& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.LoginRequest)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool LoginRequest::IsInitialized() const {
  return true;
}

void LoginRequest::InternalSwap(LoginRequest* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.username_, lhs_arena,
      &other->_impl_.username_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.password_, lhs_arena,
      &other->_impl_.password_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata LoginRequest::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[2]);
}

// ===================================================================

class LoginAbortRequest::_Internal {
 public:
};

LoginAbortRequest::LoginAbortRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.LoginAbortRequest)
}
LoginAbortRequest::LoginAbortRequest(const LoginAbortRequest& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  LoginAbortRequest* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.username_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.username_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.username_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_username().empty()) {
    _this->_impl_.username_.Set(from._internal_username(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.LoginAbortRequest)
}

inline void LoginAbortRequest::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.username_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.username_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.username_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

LoginAbortRequest::~LoginAbortRequest() {
  // @@protoc_insertion_point(destructor:grpc.LoginAbortRequest)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void LoginAbortRequest::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.username_.Destroy();
}

void LoginAbortRequest::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void LoginAbortRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.LoginAbortRequest)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.username_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* LoginAbortRequest::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string username = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_username();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.LoginAbortRequest.username"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* LoginAbortRequest::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.LoginAbortRequest)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string username = 1;
  if (!this->_internal_username().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_username().data(), static_cast<int>(this->_internal_username().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.LoginAbortRequest.username");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_username(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.LoginAbortRequest)
  return target;
}

size_t LoginAbortRequest::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.LoginAbortRequest)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string username = 1;
  if (!this->_internal_username().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_username());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData LoginAbortRequest::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    LoginAbortRequest::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*LoginAbortRequest::GetClassData() const { return &_class_data_; }


void LoginAbortRequest::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<LoginAbortRequest*>(&to_msg);
  auto& from = static_cast<const LoginAbortRequest&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.LoginAbortRequest)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_username().empty()) {
    _this->_internal_set_username(from._internal_username());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void LoginAbortRequest::CopyFrom(const LoginAbortRequest& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.LoginAbortRequest)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool LoginAbortRequest::IsInitialized() const {
  return true;
}

void LoginAbortRequest::InternalSwap(LoginAbortRequest* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.username_, lhs_arena,
      &other->_impl_.username_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata LoginAbortRequest::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[3]);
}

// ===================================================================

class ChangeLocalCacheRequest::_Internal {
 public:
};

ChangeLocalCacheRequest::ChangeLocalCacheRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.ChangeLocalCacheRequest)
}
ChangeLocalCacheRequest::ChangeLocalCacheRequest(const ChangeLocalCacheRequest& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  ChangeLocalCacheRequest* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.diskcachepath_){}
    , decltype(_impl_.enablediskcache_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.diskcachepath_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.diskcachepath_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_diskcachepath().empty()) {
    _this->_impl_.diskcachepath_.Set(from._internal_diskcachepath(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.enablediskcache_ = from._impl_.enablediskcache_;
  // @@protoc_insertion_point(copy_constructor:grpc.ChangeLocalCacheRequest)
}

inline void ChangeLocalCacheRequest::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.diskcachepath_){}
    , decltype(_impl_.enablediskcache_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.diskcachepath_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.diskcachepath_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

ChangeLocalCacheRequest::~ChangeLocalCacheRequest() {
  // @@protoc_insertion_point(destructor:grpc.ChangeLocalCacheRequest)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void ChangeLocalCacheRequest::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.diskcachepath_.Destroy();
}

void ChangeLocalCacheRequest::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void ChangeLocalCacheRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.ChangeLocalCacheRequest)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.diskcachepath_.ClearToEmpty();
  _impl_.enablediskcache_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* ChangeLocalCacheRequest::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // bool enableDiskCache = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _impl_.enablediskcache_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // string diskCachePath = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_diskcachepath();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.ChangeLocalCacheRequest.diskCachePath"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* ChangeLocalCacheRequest::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.ChangeLocalCacheRequest)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // bool enableDiskCache = 1;
  if (this->_internal_enablediskcache() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_enablediskcache(), target);
  }

  // string diskCachePath = 2;
  if (!this->_internal_diskcachepath().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_diskcachepath().data(), static_cast<int>(this->_internal_diskcachepath().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.ChangeLocalCacheRequest.diskCachePath");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_diskcachepath(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.ChangeLocalCacheRequest)
  return target;
}

size_t ChangeLocalCacheRequest::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.ChangeLocalCacheRequest)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string diskCachePath = 2;
  if (!this->_internal_diskcachepath().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_diskcachepath());
  }

  // bool enableDiskCache = 1;
  if (this->_internal_enablediskcache() != 0) {
    total_size += 1 + 1;
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ChangeLocalCacheRequest::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    ChangeLocalCacheRequest::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ChangeLocalCacheRequest::GetClassData() const { return &_class_data_; }


void ChangeLocalCacheRequest::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<ChangeLocalCacheRequest*>(&to_msg);
  auto& from = static_cast<const ChangeLocalCacheRequest&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.ChangeLocalCacheRequest)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_diskcachepath().empty()) {
    _this->_internal_set_diskcachepath(from._internal_diskcachepath());
  }
  if (from._internal_enablediskcache() != 0) {
    _this->_internal_set_enablediskcache(from._internal_enablediskcache());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void ChangeLocalCacheRequest::CopyFrom(const ChangeLocalCacheRequest& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.ChangeLocalCacheRequest)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool ChangeLocalCacheRequest::IsInitialized() const {
  return true;
}

void ChangeLocalCacheRequest::InternalSwap(ChangeLocalCacheRequest* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.diskcachepath_, lhs_arena,
      &other->_impl_.diskcachepath_, rhs_arena
  );
  swap(_impl_.enablediskcache_, other->_impl_.enablediskcache_);
}

::PROTOBUF_NAMESPACE_ID::Metadata ChangeLocalCacheRequest::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[4]);
}

// ===================================================================

class ChangePortsRequest::_Internal {
 public:
};

ChangePortsRequest::ChangePortsRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.ChangePortsRequest)
}
ChangePortsRequest::ChangePortsRequest(const ChangePortsRequest& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  ChangePortsRequest* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.imapport_){}
    , decltype(_impl_.smtpport_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.imapport_, &from._impl_.imapport_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.smtpport_) -
    reinterpret_cast<char*>(&_impl_.imapport_)) + sizeof(_impl_.smtpport_));
  // @@protoc_insertion_point(copy_constructor:grpc.ChangePortsRequest)
}

inline void ChangePortsRequest::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.imapport_){0}
    , decltype(_impl_.smtpport_){0}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

ChangePortsRequest::~ChangePortsRequest() {
  // @@protoc_insertion_point(destructor:grpc.ChangePortsRequest)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void ChangePortsRequest::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void ChangePortsRequest::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void ChangePortsRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.ChangePortsRequest)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  ::memset(&_impl_.imapport_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&_impl_.smtpport_) -
      reinterpret_cast<char*>(&_impl_.imapport_)) + sizeof(_impl_.smtpport_));
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* ChangePortsRequest::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // int32 imapPort = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _impl_.imapport_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // int32 smtpPort = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _impl_.smtpport_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* ChangePortsRequest::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.ChangePortsRequest)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 imapPort = 1;
  if (this->_internal_imapport() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_imapport(), target);
  }

  // int32 smtpPort = 2;
  if (this->_internal_smtpport() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_smtpport(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.ChangePortsRequest)
  return target;
}

size_t ChangePortsRequest::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.ChangePortsRequest)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // int32 imapPort = 1;
  if (this->_internal_imapport() != 0) {
    total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_imapport());
  }

  // int32 smtpPort = 2;
  if (this->_internal_smtpport() != 0) {
    total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_smtpport());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ChangePortsRequest::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    ChangePortsRequest::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ChangePortsRequest::GetClassData() const { return &_class_data_; }


void ChangePortsRequest::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<ChangePortsRequest*>(&to_msg);
  auto& from = static_cast<const ChangePortsRequest&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.ChangePortsRequest)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (from._internal_imapport() != 0) {
    _this->_internal_set_imapport(from._internal_imapport());
  }
  if (from._internal_smtpport() != 0) {
    _this->_internal_set_smtpport(from._internal_smtpport());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void ChangePortsRequest::CopyFrom(const ChangePortsRequest& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.ChangePortsRequest)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool ChangePortsRequest::IsInitialized() const {
  return true;
}

void ChangePortsRequest::InternalSwap(ChangePortsRequest* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(ChangePortsRequest, _impl_.smtpport_)
      + sizeof(ChangePortsRequest::_impl_.smtpport_)
      - PROTOBUF_FIELD_OFFSET(ChangePortsRequest, _impl_.imapport_)>(
          reinterpret_cast<char*>(&_impl_.imapport_),
          reinterpret_cast<char*>(&other->_impl_.imapport_));
}

::PROTOBUF_NAMESPACE_ID::Metadata ChangePortsRequest::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[5]);
}

// ===================================================================

class AvailableKeychainsResponse::_Internal {
 public:
};

AvailableKeychainsResponse::AvailableKeychainsResponse(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.AvailableKeychainsResponse)
}
AvailableKeychainsResponse::AvailableKeychainsResponse(const AvailableKeychainsResponse& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  AvailableKeychainsResponse* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.keychains_){from._impl_.keychains_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.AvailableKeychainsResponse)
}

inline void AvailableKeychainsResponse::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.keychains_){arena}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

AvailableKeychainsResponse::~AvailableKeychainsResponse() {
  // @@protoc_insertion_point(destructor:grpc.AvailableKeychainsResponse)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void AvailableKeychainsResponse::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.keychains_.~RepeatedPtrField();
}

void AvailableKeychainsResponse::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void AvailableKeychainsResponse::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.AvailableKeychainsResponse)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.keychains_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* AvailableKeychainsResponse::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // repeated string keychains = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_keychains();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            CHK_(::_pbi::VerifyUTF8(str, "grpc.AvailableKeychainsResponse.keychains"));
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* AvailableKeychainsResponse::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.AvailableKeychainsResponse)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated string keychains = 1;
  for (int i = 0, n = this->_internal_keychains_size(); i < n; i++) {
    const auto& s = this->_internal_keychains(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.AvailableKeychainsResponse.keychains");
    target = stream->WriteString(1, s, target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.AvailableKeychainsResponse)
  return target;
}

size_t AvailableKeychainsResponse::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.AvailableKeychainsResponse)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated string keychains = 1;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.keychains_.size());
  for (int i = 0, n = _impl_.keychains_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.keychains_.Get(i));
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AvailableKeychainsResponse::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    AvailableKeychainsResponse::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AvailableKeychainsResponse::GetClassData() const { return &_class_data_; }


void AvailableKeychainsResponse::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<AvailableKeychainsResponse*>(&to_msg);
  auto& from = static_cast<const AvailableKeychainsResponse&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.AvailableKeychainsResponse)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.keychains_.MergeFrom(from._impl_.keychains_);
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void AvailableKeychainsResponse::CopyFrom(const AvailableKeychainsResponse& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.AvailableKeychainsResponse)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool AvailableKeychainsResponse::IsInitialized() const {
  return true;
}

void AvailableKeychainsResponse::InternalSwap(AvailableKeychainsResponse* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.keychains_.InternalSwap(&other->_impl_.keychains_);
}

::PROTOBUF_NAMESPACE_ID::Metadata AvailableKeychainsResponse::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[6]);
}

// ===================================================================

class User::_Internal {
 public:
};

User::User(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.User)
}
User::User(const User& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  User* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.addresses_){from._impl_.addresses_}
    , decltype(_impl_.id_){}
    , decltype(_impl_.username_){}
    , decltype(_impl_.avatartext_){}
    , decltype(_impl_.password_){}
    , decltype(_impl_.usedbytes_){}
    , decltype(_impl_.totalbytes_){}
    , decltype(_impl_.loggedin_){}
    , decltype(_impl_.splitmode_){}
    , decltype(_impl_.setupguideseen_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.id_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.id_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_id().empty()) {
    _this->_impl_.id_.Set(from._internal_id(), 
      _this->GetArenaForAllocation());
  }
  _impl_.username_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.username_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_username().empty()) {
    _this->_impl_.username_.Set(from._internal_username(), 
      _this->GetArenaForAllocation());
  }
  _impl_.avatartext_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.avatartext_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_avatartext().empty()) {
    _this->_impl_.avatartext_.Set(from._internal_avatartext(), 
      _this->GetArenaForAllocation());
  }
  _impl_.password_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.password_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_password().empty()) {
    _this->_impl_.password_.Set(from._internal_password(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.usedbytes_, &from._impl_.usedbytes_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.setupguideseen_) -
    reinterpret_cast<char*>(&_impl_.usedbytes_)) + sizeof(_impl_.setupguideseen_));
  // @@protoc_insertion_point(copy_constructor:grpc.User)
}

inline void User::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.addresses_){arena}
    , decltype(_impl_.id_){}
    , decltype(_impl_.username_){}
    , decltype(_impl_.avatartext_){}
    , decltype(_impl_.password_){}
    , decltype(_impl_.usedbytes_){int64_t{0}}
    , decltype(_impl_.totalbytes_){int64_t{0}}
    , decltype(_impl_.loggedin_){false}
    , decltype(_impl_.splitmode_){false}
    , decltype(_impl_.setupguideseen_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.id_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.id_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.username_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.username_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.avatartext_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.avatartext_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.password_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.password_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

User::~User() {
  // @@protoc_insertion_point(destructor:grpc.User)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void User::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.addresses_.~RepeatedPtrField();
  _impl_.id_.Destroy();
  _impl_.username_.Destroy();
  _impl_.avatartext_.Destroy();
  _impl_.password_.Destroy();
}

void User::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void User::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.User)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.addresses_.Clear();
  _impl_.id_.ClearToEmpty();
  _impl_.username_.ClearToEmpty();
  _impl_.avatartext_.ClearToEmpty();
  _impl_.password_.ClearToEmpty();
  ::memset(&_impl_.usedbytes_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&_impl_.setupguideseen_) -
      reinterpret_cast<char*>(&_impl_.usedbytes_)) + sizeof(_impl_.setupguideseen_));
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* User::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string id = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_id();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.User.id"));
        } else
          goto handle_unusual;
        continue;
      // string username = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_username();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.User.username"));
        } else
          goto handle_unusual;
        continue;
      // string avatarText = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_avatartext();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.User.avatarText"));
        } else
          goto handle_unusual;
        continue;
      // bool loggedIn = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _impl_.loggedin_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // bool splitMode = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _impl_.splitmode_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // bool setupGuideSeen = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _impl_.setupguideseen_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // int64 usedBytes = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 56)) {
          _impl_.usedbytes_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // int64 totalBytes = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 64)) {
          _impl_.totalbytes_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // string password = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 74)) {
          auto str = _internal_mutable_password();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.User.password"));
        } else
          goto handle_unusual;
        continue;
      // repeated string addresses = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_addresses();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            CHK_(::_pbi::VerifyUTF8(str, "grpc.User.addresses"));
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<82>(ptr));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* User::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.User)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string id = 1;
  if (!this->_internal_id().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_id().data(), static_cast<int>(this->_internal_id().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.User.id");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_id(), target);
  }

  // string username = 2;
  if (!this->_internal_username().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_username().data(), static_cast<int>(this->_internal_username().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.User.username");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_username(), target);
  }

  // string avatarText = 3;
  if (!this->_internal_avatartext().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_avatartext().data(), static_cast<int>(this->_internal_avatartext().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.User.avatarText");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_avatartext(), target);
  }

  // bool loggedIn = 4;
  if (this->_internal_loggedin() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(4, this->_internal_loggedin(), target);
  }

  // bool splitMode = 5;
  if (this->_internal_splitmode() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(5, this->_internal_splitmode(), target);
  }

  // bool setupGuideSeen = 6;
  if (this->_internal_setupguideseen() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(6, this->_internal_setupguideseen(), target);
  }

  // int64 usedBytes = 7;
  if (this->_internal_usedbytes() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(7, this->_internal_usedbytes(), target);
  }

  // int64 totalBytes = 8;
  if (this->_internal_totalbytes() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(8, this->_internal_totalbytes(), target);
  }

  // string password = 9;
  if (!this->_internal_password().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_password().data(), static_cast<int>(this->_internal_password().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.User.password");
    target = stream->WriteStringMaybeAliased(
        9, this->_internal_password(), target);
  }

  // repeated string addresses = 10;
  for (int i = 0, n = this->_internal_addresses_size(); i < n; i++) {
    const auto& s = this->_internal_addresses(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.User.addresses");
    target = stream->WriteString(10, s, target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.User)
  return target;
}

size_t User::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.User)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated string addresses = 10;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.addresses_.size());
  for (int i = 0, n = _impl_.addresses_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.addresses_.Get(i));
  }

  // string id = 1;
  if (!this->_internal_id().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_id());
  }

  // string username = 2;
  if (!this->_internal_username().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_username());
  }

  // string avatarText = 3;
  if (!this->_internal_avatartext().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_avatartext());
  }

  // string password = 9;
  if (!this->_internal_password().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_password());
  }

  // int64 usedBytes = 7;
  if (this->_internal_usedbytes() != 0) {
    total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_usedbytes());
  }

  // int64 totalBytes = 8;
  if (this->_internal_totalbytes() != 0) {
    total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_totalbytes());
  }

  // bool loggedIn = 4;
  if (this->_internal_loggedin() != 0) {
    total_size += 1 + 1;
  }

  // bool splitMode = 5;
  if (this->_internal_splitmode() != 0) {
    total_size += 1 + 1;
  }

  // bool setupGuideSeen = 6;
  if (this->_internal_setupguideseen() != 0) {
    total_size += 1 + 1;
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData User::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    User::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*User::GetClassData() const { return &_class_data_; }


void User::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<User*>(&to_msg);
  auto& from = static_cast<const User&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.User)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.addresses_.MergeFrom(from._impl_.addresses_);
  if (!from._internal_id().empty()) {
    _this->_internal_set_id(from._internal_id());
  }
  if (!from._internal_username().empty()) {
    _this->_internal_set_username(from._internal_username());
  }
  if (!from._internal_avatartext().empty()) {
    _this->_internal_set_avatartext(from._internal_avatartext());
  }
  if (!from._internal_password().empty()) {
    _this->_internal_set_password(from._internal_password());
  }
  if (from._internal_usedbytes() != 0) {
    _this->_internal_set_usedbytes(from._internal_usedbytes());
  }
  if (from._internal_totalbytes() != 0) {
    _this->_internal_set_totalbytes(from._internal_totalbytes());
  }
  if (from._internal_loggedin() != 0) {
    _this->_internal_set_loggedin(from._internal_loggedin());
  }
  if (from._internal_splitmode() != 0) {
    _this->_internal_set_splitmode(from._internal_splitmode());
  }
  if (from._internal_setupguideseen() != 0) {
    _this->_internal_set_setupguideseen(from._internal_setupguideseen());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void User::CopyFrom(const User& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.User)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool User::IsInitialized() const {
  return true;
}

void User::InternalSwap(User* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.addresses_.InternalSwap(&other->_impl_.addresses_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.id_, lhs_arena,
      &other->_impl_.id_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.username_, lhs_arena,
      &other->_impl_.username_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.avatartext_, lhs_arena,
      &other->_impl_.avatartext_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.password_, lhs_arena,
      &other->_impl_.password_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(User, _impl_.setupguideseen_)
      + sizeof(User::_impl_.setupguideseen_)
      - PROTOBUF_FIELD_OFFSET(User, _impl_.usedbytes_)>(
          reinterpret_cast<char*>(&_impl_.usedbytes_),
          reinterpret_cast<char*>(&other->_impl_.usedbytes_));
}

::PROTOBUF_NAMESPACE_ID::Metadata User::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[7]);
}

// ===================================================================

class UserSplitModeRequest::_Internal {
 public:
};

UserSplitModeRequest::UserSplitModeRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.UserSplitModeRequest)
}
UserSplitModeRequest::UserSplitModeRequest(const UserSplitModeRequest& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UserSplitModeRequest* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.userid_){}
    , decltype(_impl_.active_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.userid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.userid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_userid().empty()) {
    _this->_impl_.userid_.Set(from._internal_userid(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.active_ = from._impl_.active_;
  // @@protoc_insertion_point(copy_constructor:grpc.UserSplitModeRequest)
}

inline void UserSplitModeRequest::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.userid_){}
    , decltype(_impl_.active_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.userid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.userid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

UserSplitModeRequest::~UserSplitModeRequest() {
  // @@protoc_insertion_point(destructor:grpc.UserSplitModeRequest)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void UserSplitModeRequest::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.userid_.Destroy();
}

void UserSplitModeRequest::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void UserSplitModeRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.UserSplitModeRequest)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.userid_.ClearToEmpty();
  _impl_.active_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* UserSplitModeRequest::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string userID = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_userid();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.UserSplitModeRequest.userID"));
        } else
          goto handle_unusual;
        continue;
      // bool active = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _impl_.active_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* UserSplitModeRequest::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.UserSplitModeRequest)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string userID = 1;
  if (!this->_internal_userid().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_userid().data(), static_cast<int>(this->_internal_userid().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.UserSplitModeRequest.userID");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_userid(), target);
  }

  // bool active = 2;
  if (this->_internal_active() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(2, this->_internal_active(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.UserSplitModeRequest)
  return target;
}

size_t UserSplitModeRequest::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.UserSplitModeRequest)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string userID = 1;
  if (!this->_internal_userid().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_userid());
  }

  // bool active = 2;
  if (this->_internal_active() != 0) {
    total_size += 1 + 1;
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UserSplitModeRequest::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    UserSplitModeRequest::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UserSplitModeRequest::GetClassData() const { return &_class_data_; }


void UserSplitModeRequest::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<UserSplitModeRequest*>(&to_msg);
  auto& from = static_cast<const UserSplitModeRequest&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.UserSplitModeRequest)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_userid().empty()) {
    _this->_internal_set_userid(from._internal_userid());
  }
  if (from._internal_active() != 0) {
    _this->_internal_set_active(from._internal_active());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void UserSplitModeRequest::CopyFrom(const UserSplitModeRequest& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.UserSplitModeRequest)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool UserSplitModeRequest::IsInitialized() const {
  return true;
}

void UserSplitModeRequest::InternalSwap(UserSplitModeRequest* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.userid_, lhs_arena,
      &other->_impl_.userid_, rhs_arena
  );
  swap(_impl_.active_, other->_impl_.active_);
}

::PROTOBUF_NAMESPACE_ID::Metadata UserSplitModeRequest::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[8]);
}

// ===================================================================

class UserListResponse::_Internal {
 public:
};

UserListResponse::UserListResponse(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.UserListResponse)
}
UserListResponse::UserListResponse(const UserListResponse& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UserListResponse* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.users_){from._impl_.users_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.UserListResponse)
}

inline void UserListResponse::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.users_){arena}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

UserListResponse::~UserListResponse() {
  // @@protoc_insertion_point(destructor:grpc.UserListResponse)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void UserListResponse::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.users_.~RepeatedPtrField();
}

void UserListResponse::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void UserListResponse::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.UserListResponse)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.users_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* UserListResponse::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // repeated .grpc.User users = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_users(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* UserListResponse::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.UserListResponse)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated .grpc.User users = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_users_size()); i < n; i++) {
    const auto& repfield = this->_internal_users(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, repfield, repfield.GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.UserListResponse)
  return target;
}

size_t UserListResponse::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.UserListResponse)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .grpc.User users = 1;
  total_size += 1UL * this->_internal_users_size();
  for (const auto& msg : this->_impl_.users_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UserListResponse::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    UserListResponse::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UserListResponse::GetClassData() const { return &_class_data_; }


void UserListResponse::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<UserListResponse*>(&to_msg);
  auto& from = static_cast<const UserListResponse&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.UserListResponse)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.users_.MergeFrom(from._impl_.users_);
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void UserListResponse::CopyFrom(const UserListResponse& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.UserListResponse)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool UserListResponse::IsInitialized() const {
  return true;
}

void UserListResponse::InternalSwap(UserListResponse* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.users_.InternalSwap(&other->_impl_.users_);
}

::PROTOBUF_NAMESPACE_ID::Metadata UserListResponse::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[9]);
}

// ===================================================================

class ConfigureAppleMailRequest::_Internal {
 public:
};

ConfigureAppleMailRequest::ConfigureAppleMailRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.ConfigureAppleMailRequest)
}
ConfigureAppleMailRequest::ConfigureAppleMailRequest(const ConfigureAppleMailRequest& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  ConfigureAppleMailRequest* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.userid_){}
    , decltype(_impl_.address_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.userid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.userid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_userid().empty()) {
    _this->_impl_.userid_.Set(from._internal_userid(), 
      _this->GetArenaForAllocation());
  }
  _impl_.address_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.address_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_address().empty()) {
    _this->_impl_.address_.Set(from._internal_address(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.ConfigureAppleMailRequest)
}

inline void ConfigureAppleMailRequest::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.userid_){}
    , decltype(_impl_.address_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.userid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.userid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.address_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.address_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

ConfigureAppleMailRequest::~ConfigureAppleMailRequest() {
  // @@protoc_insertion_point(destructor:grpc.ConfigureAppleMailRequest)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void ConfigureAppleMailRequest::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.userid_.Destroy();
  _impl_.address_.Destroy();
}

void ConfigureAppleMailRequest::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void ConfigureAppleMailRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.ConfigureAppleMailRequest)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.userid_.ClearToEmpty();
  _impl_.address_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* ConfigureAppleMailRequest::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string userID = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_userid();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.ConfigureAppleMailRequest.userID"));
        } else
          goto handle_unusual;
        continue;
      // string address = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_address();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.ConfigureAppleMailRequest.address"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* ConfigureAppleMailRequest::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.ConfigureAppleMailRequest)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string userID = 1;
  if (!this->_internal_userid().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_userid().data(), static_cast<int>(this->_internal_userid().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.ConfigureAppleMailRequest.userID");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_userid(), target);
  }

  // string address = 2;
  if (!this->_internal_address().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_address().data(), static_cast<int>(this->_internal_address().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.ConfigureAppleMailRequest.address");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_address(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.ConfigureAppleMailRequest)
  return target;
}

size_t ConfigureAppleMailRequest::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.ConfigureAppleMailRequest)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string userID = 1;
  if (!this->_internal_userid().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_userid());
  }

  // string address = 2;
  if (!this->_internal_address().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_address());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ConfigureAppleMailRequest::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    ConfigureAppleMailRequest::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ConfigureAppleMailRequest::GetClassData() const { return &_class_data_; }


void ConfigureAppleMailRequest::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<ConfigureAppleMailRequest*>(&to_msg);
  auto& from = static_cast<const ConfigureAppleMailRequest&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.ConfigureAppleMailRequest)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_userid().empty()) {
    _this->_internal_set_userid(from._internal_userid());
  }
  if (!from._internal_address().empty()) {
    _this->_internal_set_address(from._internal_address());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void ConfigureAppleMailRequest::CopyFrom(const ConfigureAppleMailRequest& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.ConfigureAppleMailRequest)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool ConfigureAppleMailRequest::IsInitialized() const {
  return true;
}

void ConfigureAppleMailRequest::InternalSwap(ConfigureAppleMailRequest* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.userid_, lhs_arena,
      &other->_impl_.userid_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.address_, lhs_arena,
      &other->_impl_.address_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata ConfigureAppleMailRequest::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[10]);
}

// ===================================================================

class EventStreamRequest::_Internal {
 public:
};

EventStreamRequest::EventStreamRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.EventStreamRequest)
}
EventStreamRequest::EventStreamRequest(const EventStreamRequest& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  EventStreamRequest* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.clientplatform_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.clientplatform_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.clientplatform_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_clientplatform().empty()) {
    _this->_impl_.clientplatform_.Set(from._internal_clientplatform(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.EventStreamRequest)
}

inline void EventStreamRequest::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.clientplatform_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.clientplatform_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.clientplatform_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

EventStreamRequest::~EventStreamRequest() {
  // @@protoc_insertion_point(destructor:grpc.EventStreamRequest)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void EventStreamRequest::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.clientplatform_.Destroy();
}

void EventStreamRequest::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void EventStreamRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.EventStreamRequest)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.clientplatform_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* EventStreamRequest::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string ClientPlatform = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_clientplatform();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.EventStreamRequest.ClientPlatform"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* EventStreamRequest::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.EventStreamRequest)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string ClientPlatform = 1;
  if (!this->_internal_clientplatform().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_clientplatform().data(), static_cast<int>(this->_internal_clientplatform().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.EventStreamRequest.ClientPlatform");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_clientplatform(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.EventStreamRequest)
  return target;
}

size_t EventStreamRequest::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.EventStreamRequest)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string ClientPlatform = 1;
  if (!this->_internal_clientplatform().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_clientplatform());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData EventStreamRequest::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    EventStreamRequest::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*EventStreamRequest::GetClassData() const { return &_class_data_; }


void EventStreamRequest::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<EventStreamRequest*>(&to_msg);
  auto& from = static_cast<const EventStreamRequest&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.EventStreamRequest)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_clientplatform().empty()) {
    _this->_internal_set_clientplatform(from._internal_clientplatform());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void EventStreamRequest::CopyFrom(const EventStreamRequest& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.EventStreamRequest)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool EventStreamRequest::IsInitialized() const {
  return true;
}

void EventStreamRequest::InternalSwap(EventStreamRequest* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.clientplatform_, lhs_arena,
      &other->_impl_.clientplatform_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata EventStreamRequest::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[11]);
}

// ===================================================================

class StreamEvent::_Internal {
 public:
  static const ::grpc::AppEvent& app(const StreamEvent* msg);
  static const ::grpc::LoginEvent& login(const StreamEvent* msg);
  static const ::grpc::UpdateEvent& update(const StreamEvent* msg);
  static const ::grpc::CacheEvent& cache(const StreamEvent* msg);
  static const ::grpc::MailSettingsEvent& mailsettings(const StreamEvent* msg);
  static const ::grpc::KeychainEvent& keychain(const StreamEvent* msg);
  static const ::grpc::MailEvent& mail(const StreamEvent* msg);
  static const ::grpc::UserEvent& user(const StreamEvent* msg);
};

const ::grpc::AppEvent&
StreamEvent::_Internal::app(const StreamEvent* msg) {
  return *msg->_impl_.event_.app_;
}
const ::grpc::LoginEvent&
StreamEvent::_Internal::login(const StreamEvent* msg) {
  return *msg->_impl_.event_.login_;
}
const ::grpc::UpdateEvent&
StreamEvent::_Internal::update(const StreamEvent* msg) {
  return *msg->_impl_.event_.update_;
}
const ::grpc::CacheEvent&
StreamEvent::_Internal::cache(const StreamEvent* msg) {
  return *msg->_impl_.event_.cache_;
}
const ::grpc::MailSettingsEvent&
StreamEvent::_Internal::mailsettings(const StreamEvent* msg) {
  return *msg->_impl_.event_.mailsettings_;
}
const ::grpc::KeychainEvent&
StreamEvent::_Internal::keychain(const StreamEvent* msg) {
  return *msg->_impl_.event_.keychain_;
}
const ::grpc::MailEvent&
StreamEvent::_Internal::mail(const StreamEvent* msg) {
  return *msg->_impl_.event_.mail_;
}
const ::grpc::UserEvent&
StreamEvent::_Internal::user(const StreamEvent* msg) {
  return *msg->_impl_.event_.user_;
}
void StreamEvent::set_allocated_app(::grpc::AppEvent* app) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (app) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(app);
    if (message_arena != submessage_arena) {
      app = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, app, submessage_arena);
    }
    set_has_app();
    _impl_.event_.app_ = app;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.StreamEvent.app)
}
void StreamEvent::set_allocated_login(::grpc::LoginEvent* login) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (login) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(login);
    if (message_arena != submessage_arena) {
      login = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, login, submessage_arena);
    }
    set_has_login();
    _impl_.event_.login_ = login;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.StreamEvent.login)
}
void StreamEvent::set_allocated_update(::grpc::UpdateEvent* update) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (update) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(update);
    if (message_arena != submessage_arena) {
      update = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, update, submessage_arena);
    }
    set_has_update();
    _impl_.event_.update_ = update;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.StreamEvent.update)
}
void StreamEvent::set_allocated_cache(::grpc::CacheEvent* cache) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (cache) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(cache);
    if (message_arena != submessage_arena) {
      cache = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, cache, submessage_arena);
    }
    set_has_cache();
    _impl_.event_.cache_ = cache;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.StreamEvent.cache)
}
void StreamEvent::set_allocated_mailsettings(::grpc::MailSettingsEvent* mailsettings) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (mailsettings) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(mailsettings);
    if (message_arena != submessage_arena) {
      mailsettings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, mailsettings, submessage_arena);
    }
    set_has_mailsettings();
    _impl_.event_.mailsettings_ = mailsettings;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.StreamEvent.mailSettings)
}
void StreamEvent::set_allocated_keychain(::grpc::KeychainEvent* keychain) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (keychain) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(keychain);
    if (message_arena != submessage_arena) {
      keychain = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, keychain, submessage_arena);
    }
    set_has_keychain();
    _impl_.event_.keychain_ = keychain;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.StreamEvent.keychain)
}
void StreamEvent::set_allocated_mail(::grpc::MailEvent* mail) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (mail) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(mail);
    if (message_arena != submessage_arena) {
      mail = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, mail, submessage_arena);
    }
    set_has_mail();
    _impl_.event_.mail_ = mail;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.StreamEvent.mail)
}
void StreamEvent::set_allocated_user(::grpc::UserEvent* user) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (user) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(user);
    if (message_arena != submessage_arena) {
      user = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, user, submessage_arena);
    }
    set_has_user();
    _impl_.event_.user_ = user;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.StreamEvent.user)
}
StreamEvent::StreamEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.StreamEvent)
}
StreamEvent::StreamEvent(const StreamEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  StreamEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_event();
  switch (from.event_case()) {
    case kApp: {
      _this->_internal_mutable_app()->::grpc::AppEvent::MergeFrom(
          from._internal_app());
      break;
    }
    case kLogin: {
      _this->_internal_mutable_login()->::grpc::LoginEvent::MergeFrom(
          from._internal_login());
      break;
    }
    case kUpdate: {
      _this->_internal_mutable_update()->::grpc::UpdateEvent::MergeFrom(
          from._internal_update());
      break;
    }
    case kCache: {
      _this->_internal_mutable_cache()->::grpc::CacheEvent::MergeFrom(
          from._internal_cache());
      break;
    }
    case kMailSettings: {
      _this->_internal_mutable_mailsettings()->::grpc::MailSettingsEvent::MergeFrom(
          from._internal_mailsettings());
      break;
    }
    case kKeychain: {
      _this->_internal_mutable_keychain()->::grpc::KeychainEvent::MergeFrom(
          from._internal_keychain());
      break;
    }
    case kMail: {
      _this->_internal_mutable_mail()->::grpc::MailEvent::MergeFrom(
          from._internal_mail());
      break;
    }
    case kUser: {
      _this->_internal_mutable_user()->::grpc::UserEvent::MergeFrom(
          from._internal_user());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:grpc.StreamEvent)
}

inline void StreamEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  clear_has_event();
}

StreamEvent::~StreamEvent() {
  // @@protoc_insertion_point(destructor:grpc.StreamEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void StreamEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_event()) {
    clear_event();
  }
}

void StreamEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void StreamEvent::clear_event() {
// @@protoc_insertion_point(one_of_clear_start:grpc.StreamEvent)
  switch (event_case()) {
    case kApp: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.app_;
      }
      break;
    }
    case kLogin: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.login_;
      }
      break;
    }
    case kUpdate: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.update_;
      }
      break;
    }
    case kCache: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.cache_;
      }
      break;
    }
    case kMailSettings: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.mailsettings_;
      }
      break;
    }
    case kKeychain: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.keychain_;
      }
      break;
    }
    case kMail: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.mail_;
      }
      break;
    }
    case kUser: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.user_;
      }
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = EVENT_NOT_SET;
}


void StreamEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.StreamEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  clear_event();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* StreamEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .grpc.AppEvent app = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_app(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.LoginEvent login = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_login(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.UpdateEvent update = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_update(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.CacheEvent cache = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_cache(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.MailSettingsEvent mailSettings = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_mailsettings(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.KeychainEvent keychain = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr = ctx->ParseMessage(_internal_mutable_keychain(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.MailEvent mail = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr = ctx->ParseMessage(_internal_mutable_mail(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.UserEvent user = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr = ctx->ParseMessage(_internal_mutable_user(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* StreamEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.StreamEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .grpc.AppEvent app = 1;
  if (_internal_has_app()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::app(this),
        _Internal::app(this).GetCachedSize(), target, stream);
  }

  // .grpc.LoginEvent login = 2;
  if (_internal_has_login()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::login(this),
        _Internal::login(this).GetCachedSize(), target, stream);
  }

  // .grpc.UpdateEvent update = 3;
  if (_internal_has_update()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::update(this),
        _Internal::update(this).GetCachedSize(), target, stream);
  }

  // .grpc.CacheEvent cache = 4;
  if (_internal_has_cache()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::cache(this),
        _Internal::cache(this).GetCachedSize(), target, stream);
  }

  // .grpc.MailSettingsEvent mailSettings = 5;
  if (_internal_has_mailsettings()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(5, _Internal::mailsettings(this),
        _Internal::mailsettings(this).GetCachedSize(), target, stream);
  }

  // .grpc.KeychainEvent keychain = 6;
  if (_internal_has_keychain()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(6, _Internal::keychain(this),
        _Internal::keychain(this).GetCachedSize(), target, stream);
  }

  // .grpc.MailEvent mail = 7;
  if (_internal_has_mail()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(7, _Internal::mail(this),
        _Internal::mail(this).GetCachedSize(), target, stream);
  }

  // .grpc.UserEvent user = 8;
  if (_internal_has_user()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(8, _Internal::user(this),
        _Internal::user(this).GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.StreamEvent)
  return target;
}

size_t StreamEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.StreamEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  switch (event_case()) {
    // .grpc.AppEvent app = 1;
    case kApp: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.app_);
      break;
    }
    // .grpc.LoginEvent login = 2;
    case kLogin: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.login_);
      break;
    }
    // .grpc.UpdateEvent update = 3;
    case kUpdate: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.update_);
      break;
    }
    // .grpc.CacheEvent cache = 4;
    case kCache: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.cache_);
      break;
    }
    // .grpc.MailSettingsEvent mailSettings = 5;
    case kMailSettings: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.mailsettings_);
      break;
    }
    // .grpc.KeychainEvent keychain = 6;
    case kKeychain: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.keychain_);
      break;
    }
    // .grpc.MailEvent mail = 7;
    case kMail: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.mail_);
      break;
    }
    // .grpc.UserEvent user = 8;
    case kUser: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.user_);
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData StreamEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    StreamEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*StreamEvent::GetClassData() const { return &_class_data_; }


void StreamEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<StreamEvent*>(&to_msg);
  auto& from = static_cast<const StreamEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.StreamEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  switch (from.event_case()) {
    case kApp: {
      _this->_internal_mutable_app()->::grpc::AppEvent::MergeFrom(
          from._internal_app());
      break;
    }
    case kLogin: {
      _this->_internal_mutable_login()->::grpc::LoginEvent::MergeFrom(
          from._internal_login());
      break;
    }
    case kUpdate: {
      _this->_internal_mutable_update()->::grpc::UpdateEvent::MergeFrom(
          from._internal_update());
      break;
    }
    case kCache: {
      _this->_internal_mutable_cache()->::grpc::CacheEvent::MergeFrom(
          from._internal_cache());
      break;
    }
    case kMailSettings: {
      _this->_internal_mutable_mailsettings()->::grpc::MailSettingsEvent::MergeFrom(
          from._internal_mailsettings());
      break;
    }
    case kKeychain: {
      _this->_internal_mutable_keychain()->::grpc::KeychainEvent::MergeFrom(
          from._internal_keychain());
      break;
    }
    case kMail: {
      _this->_internal_mutable_mail()->::grpc::MailEvent::MergeFrom(
          from._internal_mail());
      break;
    }
    case kUser: {
      _this->_internal_mutable_user()->::grpc::UserEvent::MergeFrom(
          from._internal_user());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void StreamEvent::CopyFrom(const StreamEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.StreamEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool StreamEvent::IsInitialized() const {
  return true;
}

void StreamEvent::InternalSwap(StreamEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.event_, other->_impl_.event_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata StreamEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[12]);
}

// ===================================================================

class AppEvent::_Internal {
 public:
  static const ::grpc::InternetStatusEvent& internetstatus(const AppEvent* msg);
  static const ::grpc::ToggleAutostartFinishedEvent& toggleautostartfinished(const AppEvent* msg);
  static const ::grpc::ResetFinishedEvent& resetfinished(const AppEvent* msg);
  static const ::grpc::ReportBugFinishedEvent& reportbugfinished(const AppEvent* msg);
  static const ::grpc::ReportBugSuccessEvent& reportbugsuccess(const AppEvent* msg);
  static const ::grpc::ReportBugErrorEvent& reportbugerror(const AppEvent* msg);
  static const ::grpc::ShowMainWindowEvent& showmainwindow(const AppEvent* msg);
};

const ::grpc::InternetStatusEvent&
AppEvent::_Internal::internetstatus(const AppEvent* msg) {
  return *msg->_impl_.event_.internetstatus_;
}
const ::grpc::ToggleAutostartFinishedEvent&
AppEvent::_Internal::toggleautostartfinished(const AppEvent* msg) {
  return *msg->_impl_.event_.toggleautostartfinished_;
}
const ::grpc::ResetFinishedEvent&
AppEvent::_Internal::resetfinished(const AppEvent* msg) {
  return *msg->_impl_.event_.resetfinished_;
}
const ::grpc::ReportBugFinishedEvent&
AppEvent::_Internal::reportbugfinished(const AppEvent* msg) {
  return *msg->_impl_.event_.reportbugfinished_;
}
const ::grpc::ReportBugSuccessEvent&
AppEvent::_Internal::reportbugsuccess(const AppEvent* msg) {
  return *msg->_impl_.event_.reportbugsuccess_;
}
const ::grpc::ReportBugErrorEvent&
AppEvent::_Internal::reportbugerror(const AppEvent* msg) {
  return *msg->_impl_.event_.reportbugerror_;
}
const ::grpc::ShowMainWindowEvent&
AppEvent::_Internal::showmainwindow(const AppEvent* msg) {
  return *msg->_impl_.event_.showmainwindow_;
}
void AppEvent::set_allocated_internetstatus(::grpc::InternetStatusEvent* internetstatus) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (internetstatus) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(internetstatus);
    if (message_arena != submessage_arena) {
      internetstatus = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, internetstatus, submessage_arena);
    }
    set_has_internetstatus();
    _impl_.event_.internetstatus_ = internetstatus;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.AppEvent.internetStatus)
}
void AppEvent::set_allocated_toggleautostartfinished(::grpc::ToggleAutostartFinishedEvent* toggleautostartfinished) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (toggleautostartfinished) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(toggleautostartfinished);
    if (message_arena != submessage_arena) {
      toggleautostartfinished = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, toggleautostartfinished, submessage_arena);
    }
    set_has_toggleautostartfinished();
    _impl_.event_.toggleautostartfinished_ = toggleautostartfinished;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.AppEvent.toggleAutostartFinished)
}
void AppEvent::set_allocated_resetfinished(::grpc::ResetFinishedEvent* resetfinished) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (resetfinished) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(resetfinished);
    if (message_arena != submessage_arena) {
      resetfinished = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, resetfinished, submessage_arena);
    }
    set_has_resetfinished();
    _impl_.event_.resetfinished_ = resetfinished;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.AppEvent.resetFinished)
}
void AppEvent::set_allocated_reportbugfinished(::grpc::ReportBugFinishedEvent* reportbugfinished) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (reportbugfinished) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(reportbugfinished);
    if (message_arena != submessage_arena) {
      reportbugfinished = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, reportbugfinished, submessage_arena);
    }
    set_has_reportbugfinished();
    _impl_.event_.reportbugfinished_ = reportbugfinished;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.AppEvent.reportBugFinished)
}
void AppEvent::set_allocated_reportbugsuccess(::grpc::ReportBugSuccessEvent* reportbugsuccess) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (reportbugsuccess) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(reportbugsuccess);
    if (message_arena != submessage_arena) {
      reportbugsuccess = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, reportbugsuccess, submessage_arena);
    }
    set_has_reportbugsuccess();
    _impl_.event_.reportbugsuccess_ = reportbugsuccess;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.AppEvent.reportBugSuccess)
}
void AppEvent::set_allocated_reportbugerror(::grpc::ReportBugErrorEvent* reportbugerror) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (reportbugerror) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(reportbugerror);
    if (message_arena != submessage_arena) {
      reportbugerror = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, reportbugerror, submessage_arena);
    }
    set_has_reportbugerror();
    _impl_.event_.reportbugerror_ = reportbugerror;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.AppEvent.reportBugError)
}
void AppEvent::set_allocated_showmainwindow(::grpc::ShowMainWindowEvent* showmainwindow) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (showmainwindow) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(showmainwindow);
    if (message_arena != submessage_arena) {
      showmainwindow = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, showmainwindow, submessage_arena);
    }
    set_has_showmainwindow();
    _impl_.event_.showmainwindow_ = showmainwindow;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.AppEvent.showMainWindow)
}
AppEvent::AppEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.AppEvent)
}
AppEvent::AppEvent(const AppEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  AppEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_event();
  switch (from.event_case()) {
    case kInternetStatus: {
      _this->_internal_mutable_internetstatus()->::grpc::InternetStatusEvent::MergeFrom(
          from._internal_internetstatus());
      break;
    }
    case kToggleAutostartFinished: {
      _this->_internal_mutable_toggleautostartfinished()->::grpc::ToggleAutostartFinishedEvent::MergeFrom(
          from._internal_toggleautostartfinished());
      break;
    }
    case kResetFinished: {
      _this->_internal_mutable_resetfinished()->::grpc::ResetFinishedEvent::MergeFrom(
          from._internal_resetfinished());
      break;
    }
    case kReportBugFinished: {
      _this->_internal_mutable_reportbugfinished()->::grpc::ReportBugFinishedEvent::MergeFrom(
          from._internal_reportbugfinished());
      break;
    }
    case kReportBugSuccess: {
      _this->_internal_mutable_reportbugsuccess()->::grpc::ReportBugSuccessEvent::MergeFrom(
          from._internal_reportbugsuccess());
      break;
    }
    case kReportBugError: {
      _this->_internal_mutable_reportbugerror()->::grpc::ReportBugErrorEvent::MergeFrom(
          from._internal_reportbugerror());
      break;
    }
    case kShowMainWindow: {
      _this->_internal_mutable_showmainwindow()->::grpc::ShowMainWindowEvent::MergeFrom(
          from._internal_showmainwindow());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:grpc.AppEvent)
}

inline void AppEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  clear_has_event();
}

AppEvent::~AppEvent() {
  // @@protoc_insertion_point(destructor:grpc.AppEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void AppEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_event()) {
    clear_event();
  }
}

void AppEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void AppEvent::clear_event() {
// @@protoc_insertion_point(one_of_clear_start:grpc.AppEvent)
  switch (event_case()) {
    case kInternetStatus: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.internetstatus_;
      }
      break;
    }
    case kToggleAutostartFinished: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.toggleautostartfinished_;
      }
      break;
    }
    case kResetFinished: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.resetfinished_;
      }
      break;
    }
    case kReportBugFinished: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.reportbugfinished_;
      }
      break;
    }
    case kReportBugSuccess: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.reportbugsuccess_;
      }
      break;
    }
    case kReportBugError: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.reportbugerror_;
      }
      break;
    }
    case kShowMainWindow: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.showmainwindow_;
      }
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = EVENT_NOT_SET;
}


void AppEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.AppEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  clear_event();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* AppEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .grpc.InternetStatusEvent internetStatus = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_internetstatus(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.ToggleAutostartFinishedEvent toggleAutostartFinished = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_toggleautostartfinished(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.ResetFinishedEvent resetFinished = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_resetfinished(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.ReportBugFinishedEvent reportBugFinished = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_reportbugfinished(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.ReportBugSuccessEvent reportBugSuccess = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_reportbugsuccess(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.ReportBugErrorEvent reportBugError = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr = ctx->ParseMessage(_internal_mutable_reportbugerror(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.ShowMainWindowEvent showMainWindow = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr = ctx->ParseMessage(_internal_mutable_showmainwindow(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* AppEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.AppEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .grpc.InternetStatusEvent internetStatus = 1;
  if (_internal_has_internetstatus()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::internetstatus(this),
        _Internal::internetstatus(this).GetCachedSize(), target, stream);
  }

  // .grpc.ToggleAutostartFinishedEvent toggleAutostartFinished = 2;
  if (_internal_has_toggleautostartfinished()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::toggleautostartfinished(this),
        _Internal::toggleautostartfinished(this).GetCachedSize(), target, stream);
  }

  // .grpc.ResetFinishedEvent resetFinished = 3;
  if (_internal_has_resetfinished()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::resetfinished(this),
        _Internal::resetfinished(this).GetCachedSize(), target, stream);
  }

  // .grpc.ReportBugFinishedEvent reportBugFinished = 4;
  if (_internal_has_reportbugfinished()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::reportbugfinished(this),
        _Internal::reportbugfinished(this).GetCachedSize(), target, stream);
  }

  // .grpc.ReportBugSuccessEvent reportBugSuccess = 5;
  if (_internal_has_reportbugsuccess()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(5, _Internal::reportbugsuccess(this),
        _Internal::reportbugsuccess(this).GetCachedSize(), target, stream);
  }

  // .grpc.ReportBugErrorEvent reportBugError = 6;
  if (_internal_has_reportbugerror()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(6, _Internal::reportbugerror(this),
        _Internal::reportbugerror(this).GetCachedSize(), target, stream);
  }

  // .grpc.ShowMainWindowEvent showMainWindow = 7;
  if (_internal_has_showmainwindow()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(7, _Internal::showmainwindow(this),
        _Internal::showmainwindow(this).GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.AppEvent)
  return target;
}

size_t AppEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.AppEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  switch (event_case()) {
    // .grpc.InternetStatusEvent internetStatus = 1;
    case kInternetStatus: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.internetstatus_);
      break;
    }
    // .grpc.ToggleAutostartFinishedEvent toggleAutostartFinished = 2;
    case kToggleAutostartFinished: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.toggleautostartfinished_);
      break;
    }
    // .grpc.ResetFinishedEvent resetFinished = 3;
    case kResetFinished: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.resetfinished_);
      break;
    }
    // .grpc.ReportBugFinishedEvent reportBugFinished = 4;
    case kReportBugFinished: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.reportbugfinished_);
      break;
    }
    // .grpc.ReportBugSuccessEvent reportBugSuccess = 5;
    case kReportBugSuccess: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.reportbugsuccess_);
      break;
    }
    // .grpc.ReportBugErrorEvent reportBugError = 6;
    case kReportBugError: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.reportbugerror_);
      break;
    }
    // .grpc.ShowMainWindowEvent showMainWindow = 7;
    case kShowMainWindow: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.showmainwindow_);
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    AppEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppEvent::GetClassData() const { return &_class_data_; }


void AppEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<AppEvent*>(&to_msg);
  auto& from = static_cast<const AppEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.AppEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  switch (from.event_case()) {
    case kInternetStatus: {
      _this->_internal_mutable_internetstatus()->::grpc::InternetStatusEvent::MergeFrom(
          from._internal_internetstatus());
      break;
    }
    case kToggleAutostartFinished: {
      _this->_internal_mutable_toggleautostartfinished()->::grpc::ToggleAutostartFinishedEvent::MergeFrom(
          from._internal_toggleautostartfinished());
      break;
    }
    case kResetFinished: {
      _this->_internal_mutable_resetfinished()->::grpc::ResetFinishedEvent::MergeFrom(
          from._internal_resetfinished());
      break;
    }
    case kReportBugFinished: {
      _this->_internal_mutable_reportbugfinished()->::grpc::ReportBugFinishedEvent::MergeFrom(
          from._internal_reportbugfinished());
      break;
    }
    case kReportBugSuccess: {
      _this->_internal_mutable_reportbugsuccess()->::grpc::ReportBugSuccessEvent::MergeFrom(
          from._internal_reportbugsuccess());
      break;
    }
    case kReportBugError: {
      _this->_internal_mutable_reportbugerror()->::grpc::ReportBugErrorEvent::MergeFrom(
          from._internal_reportbugerror());
      break;
    }
    case kShowMainWindow: {
      _this->_internal_mutable_showmainwindow()->::grpc::ShowMainWindowEvent::MergeFrom(
          from._internal_showmainwindow());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void AppEvent::CopyFrom(const AppEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.AppEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool AppEvent::IsInitialized() const {
  return true;
}

void AppEvent::InternalSwap(AppEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.event_, other->_impl_.event_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata AppEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[13]);
}

// ===================================================================

class InternetStatusEvent::_Internal {
 public:
};

InternetStatusEvent::InternetStatusEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.InternetStatusEvent)
}
InternetStatusEvent::InternetStatusEvent(const InternetStatusEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  InternetStatusEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.connected_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.connected_ = from._impl_.connected_;
  // @@protoc_insertion_point(copy_constructor:grpc.InternetStatusEvent)
}

inline void InternetStatusEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.connected_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

InternetStatusEvent::~InternetStatusEvent() {
  // @@protoc_insertion_point(destructor:grpc.InternetStatusEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void InternetStatusEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void InternetStatusEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void InternetStatusEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.InternetStatusEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.connected_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* InternetStatusEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // bool connected = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _impl_.connected_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* InternetStatusEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.InternetStatusEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // bool connected = 1;
  if (this->_internal_connected() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_connected(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.InternetStatusEvent)
  return target;
}

size_t InternetStatusEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.InternetStatusEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // bool connected = 1;
  if (this->_internal_connected() != 0) {
    total_size += 1 + 1;
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData InternetStatusEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    InternetStatusEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*InternetStatusEvent::GetClassData() const { return &_class_data_; }


void InternetStatusEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<InternetStatusEvent*>(&to_msg);
  auto& from = static_cast<const InternetStatusEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.InternetStatusEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (from._internal_connected() != 0) {
    _this->_internal_set_connected(from._internal_connected());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void InternetStatusEvent::CopyFrom(const InternetStatusEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.InternetStatusEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool InternetStatusEvent::IsInitialized() const {
  return true;
}

void InternetStatusEvent::InternalSwap(InternetStatusEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.connected_, other->_impl_.connected_);
}

::PROTOBUF_NAMESPACE_ID::Metadata InternetStatusEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[14]);
}

// ===================================================================

class ToggleAutostartFinishedEvent::_Internal {
 public:
};

ToggleAutostartFinishedEvent::ToggleAutostartFinishedEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.ToggleAutostartFinishedEvent)
}
ToggleAutostartFinishedEvent::ToggleAutostartFinishedEvent(const ToggleAutostartFinishedEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  ToggleAutostartFinishedEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.ToggleAutostartFinishedEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ToggleAutostartFinishedEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ToggleAutostartFinishedEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata ToggleAutostartFinishedEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[15]);
}

// ===================================================================

class ResetFinishedEvent::_Internal {
 public:
};

ResetFinishedEvent::ResetFinishedEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.ResetFinishedEvent)
}
ResetFinishedEvent::ResetFinishedEvent(const ResetFinishedEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  ResetFinishedEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.ResetFinishedEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ResetFinishedEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ResetFinishedEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata ResetFinishedEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[16]);
}

// ===================================================================

class ReportBugFinishedEvent::_Internal {
 public:
};

ReportBugFinishedEvent::ReportBugFinishedEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.ReportBugFinishedEvent)
}
ReportBugFinishedEvent::ReportBugFinishedEvent(const ReportBugFinishedEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  ReportBugFinishedEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.ReportBugFinishedEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ReportBugFinishedEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ReportBugFinishedEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata ReportBugFinishedEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[17]);
}

// ===================================================================

class ReportBugSuccessEvent::_Internal {
 public:
};

ReportBugSuccessEvent::ReportBugSuccessEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.ReportBugSuccessEvent)
}
ReportBugSuccessEvent::ReportBugSuccessEvent(const ReportBugSuccessEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  ReportBugSuccessEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.ReportBugSuccessEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ReportBugSuccessEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ReportBugSuccessEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata ReportBugSuccessEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[18]);
}

// ===================================================================

class ReportBugErrorEvent::_Internal {
 public:
};

ReportBugErrorEvent::ReportBugErrorEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.ReportBugErrorEvent)
}
ReportBugErrorEvent::ReportBugErrorEvent(const ReportBugErrorEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  ReportBugErrorEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.ReportBugErrorEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ReportBugErrorEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ReportBugErrorEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata ReportBugErrorEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[19]);
}

// ===================================================================

class ShowMainWindowEvent::_Internal {
 public:
};

ShowMainWindowEvent::ShowMainWindowEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.ShowMainWindowEvent)
}
ShowMainWindowEvent::ShowMainWindowEvent(const ShowMainWindowEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  ShowMainWindowEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.ShowMainWindowEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ShowMainWindowEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ShowMainWindowEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata ShowMainWindowEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[20]);
}

// ===================================================================

class LoginEvent::_Internal {
 public:
  static const ::grpc::LoginErrorEvent& error(const LoginEvent* msg);
  static const ::grpc::LoginTfaRequestedEvent& tfarequested(const LoginEvent* msg);
  static const ::grpc::LoginTwoPasswordsRequestedEvent& twopasswordrequested(const LoginEvent* msg);
  static const ::grpc::LoginFinishedEvent& finished(const LoginEvent* msg);
  static const ::grpc::LoginFinishedEvent& alreadyloggedin(const LoginEvent* msg);
};

const ::grpc::LoginErrorEvent&
LoginEvent::_Internal::error(const LoginEvent* msg) {
  return *msg->_impl_.event_.error_;
}
const ::grpc::LoginTfaRequestedEvent&
LoginEvent::_Internal::tfarequested(const LoginEvent* msg) {
  return *msg->_impl_.event_.tfarequested_;
}
const ::grpc::LoginTwoPasswordsRequestedEvent&
LoginEvent::_Internal::twopasswordrequested(const LoginEvent* msg) {
  return *msg->_impl_.event_.twopasswordrequested_;
}
const ::grpc::LoginFinishedEvent&
LoginEvent::_Internal::finished(const LoginEvent* msg) {
  return *msg->_impl_.event_.finished_;
}
const ::grpc::LoginFinishedEvent&
LoginEvent::_Internal::alreadyloggedin(const LoginEvent* msg) {
  return *msg->_impl_.event_.alreadyloggedin_;
}
void LoginEvent::set_allocated_error(::grpc::LoginErrorEvent* error) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (error) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(error);
    if (message_arena != submessage_arena) {
      error = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, error, submessage_arena);
    }
    set_has_error();
    _impl_.event_.error_ = error;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.LoginEvent.error)
}
void LoginEvent::set_allocated_tfarequested(::grpc::LoginTfaRequestedEvent* tfarequested) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (tfarequested) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(tfarequested);
    if (message_arena != submessage_arena) {
      tfarequested = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, tfarequested, submessage_arena);
    }
    set_has_tfarequested();
    _impl_.event_.tfarequested_ = tfarequested;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.LoginEvent.tfaRequested)
}
void LoginEvent::set_allocated_twopasswordrequested(::grpc::LoginTwoPasswordsRequestedEvent* twopasswordrequested) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (twopasswordrequested) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(twopasswordrequested);
    if (message_arena != submessage_arena) {
      twopasswordrequested = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, twopasswordrequested, submessage_arena);
    }
    set_has_twopasswordrequested();
    _impl_.event_.twopasswordrequested_ = twopasswordrequested;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.LoginEvent.twoPasswordRequested)
}
void LoginEvent::set_allocated_finished(::grpc::LoginFinishedEvent* finished) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (finished) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(finished);
    if (message_arena != submessage_arena) {
      finished = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, finished, submessage_arena);
    }
    set_has_finished();
    _impl_.event_.finished_ = finished;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.LoginEvent.finished)
}
void LoginEvent::set_allocated_alreadyloggedin(::grpc::LoginFinishedEvent* alreadyloggedin) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (alreadyloggedin) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(alreadyloggedin);
    if (message_arena != submessage_arena) {
      alreadyloggedin = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, alreadyloggedin, submessage_arena);
    }
    set_has_alreadyloggedin();
    _impl_.event_.alreadyloggedin_ = alreadyloggedin;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.LoginEvent.alreadyLoggedIn)
}
LoginEvent::LoginEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.LoginEvent)
}
LoginEvent::LoginEvent(const LoginEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  LoginEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_event();
  switch (from.event_case()) {
    case kError: {
      _this->_internal_mutable_error()->::grpc::LoginErrorEvent::MergeFrom(
          from._internal_error());
      break;
    }
    case kTfaRequested: {
      _this->_internal_mutable_tfarequested()->::grpc::LoginTfaRequestedEvent::MergeFrom(
          from._internal_tfarequested());
      break;
    }
    case kTwoPasswordRequested: {
      _this->_internal_mutable_twopasswordrequested()->::grpc::LoginTwoPasswordsRequestedEvent::MergeFrom(
          from._internal_twopasswordrequested());
      break;
    }
    case kFinished: {
      _this->_internal_mutable_finished()->::grpc::LoginFinishedEvent::MergeFrom(
          from._internal_finished());
      break;
    }
    case kAlreadyLoggedIn: {
      _this->_internal_mutable_alreadyloggedin()->::grpc::LoginFinishedEvent::MergeFrom(
          from._internal_alreadyloggedin());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:grpc.LoginEvent)
}

inline void LoginEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  clear_has_event();
}

LoginEvent::~LoginEvent() {
  // @@protoc_insertion_point(destructor:grpc.LoginEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void LoginEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_event()) {
    clear_event();
  }
}

void LoginEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void LoginEvent::clear_event() {
// @@protoc_insertion_point(one_of_clear_start:grpc.LoginEvent)
  switch (event_case()) {
    case kError: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.error_;
      }
      break;
    }
    case kTfaRequested: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.tfarequested_;
      }
      break;
    }
    case kTwoPasswordRequested: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.twopasswordrequested_;
      }
      break;
    }
    case kFinished: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.finished_;
      }
      break;
    }
    case kAlreadyLoggedIn: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.alreadyloggedin_;
      }
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = EVENT_NOT_SET;
}


void LoginEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.LoginEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  clear_event();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* LoginEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .grpc.LoginErrorEvent error = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_error(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.LoginTfaRequestedEvent tfaRequested = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_tfarequested(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.LoginTwoPasswordsRequestedEvent twoPasswordRequested = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_twopasswordrequested(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.LoginFinishedEvent finished = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_finished(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.LoginFinishedEvent alreadyLoggedIn = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_alreadyloggedin(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* LoginEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.LoginEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .grpc.LoginErrorEvent error = 1;
  if (_internal_has_error()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::error(this),
        _Internal::error(this).GetCachedSize(), target, stream);
  }

  // .grpc.LoginTfaRequestedEvent tfaRequested = 2;
  if (_internal_has_tfarequested()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::tfarequested(this),
        _Internal::tfarequested(this).GetCachedSize(), target, stream);
  }

  // .grpc.LoginTwoPasswordsRequestedEvent twoPasswordRequested = 3;
  if (_internal_has_twopasswordrequested()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::twopasswordrequested(this),
        _Internal::twopasswordrequested(this).GetCachedSize(), target, stream);
  }

  // .grpc.LoginFinishedEvent finished = 4;
  if (_internal_has_finished()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::finished(this),
        _Internal::finished(this).GetCachedSize(), target, stream);
  }

  // .grpc.LoginFinishedEvent alreadyLoggedIn = 5;
  if (_internal_has_alreadyloggedin()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(5, _Internal::alreadyloggedin(this),
        _Internal::alreadyloggedin(this).GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.LoginEvent)
  return target;
}

size_t LoginEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.LoginEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  switch (event_case()) {
    // .grpc.LoginErrorEvent error = 1;
    case kError: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.error_);
      break;
    }
    // .grpc.LoginTfaRequestedEvent tfaRequested = 2;
    case kTfaRequested: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.tfarequested_);
      break;
    }
    // .grpc.LoginTwoPasswordsRequestedEvent twoPasswordRequested = 3;
    case kTwoPasswordRequested: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.twopasswordrequested_);
      break;
    }
    // .grpc.LoginFinishedEvent finished = 4;
    case kFinished: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.finished_);
      break;
    }
    // .grpc.LoginFinishedEvent alreadyLoggedIn = 5;
    case kAlreadyLoggedIn: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.alreadyloggedin_);
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData LoginEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    LoginEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*LoginEvent::GetClassData() const { return &_class_data_; }


void LoginEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<LoginEvent*>(&to_msg);
  auto& from = static_cast<const LoginEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.LoginEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  switch (from.event_case()) {
    case kError: {
      _this->_internal_mutable_error()->::grpc::LoginErrorEvent::MergeFrom(
          from._internal_error());
      break;
    }
    case kTfaRequested: {
      _this->_internal_mutable_tfarequested()->::grpc::LoginTfaRequestedEvent::MergeFrom(
          from._internal_tfarequested());
      break;
    }
    case kTwoPasswordRequested: {
      _this->_internal_mutable_twopasswordrequested()->::grpc::LoginTwoPasswordsRequestedEvent::MergeFrom(
          from._internal_twopasswordrequested());
      break;
    }
    case kFinished: {
      _this->_internal_mutable_finished()->::grpc::LoginFinishedEvent::MergeFrom(
          from._internal_finished());
      break;
    }
    case kAlreadyLoggedIn: {
      _this->_internal_mutable_alreadyloggedin()->::grpc::LoginFinishedEvent::MergeFrom(
          from._internal_alreadyloggedin());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void LoginEvent::CopyFrom(const LoginEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.LoginEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool LoginEvent::IsInitialized() const {
  return true;
}

void LoginEvent::InternalSwap(LoginEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.event_, other->_impl_.event_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata LoginEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[21]);
}

// ===================================================================

class LoginErrorEvent::_Internal {
 public:
};

LoginErrorEvent::LoginErrorEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.LoginErrorEvent)
}
LoginErrorEvent::LoginErrorEvent(const LoginErrorEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  LoginErrorEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.message_){}
    , decltype(_impl_.type_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.message_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.message_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_message().empty()) {
    _this->_impl_.message_.Set(from._internal_message(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.type_ = from._impl_.type_;
  // @@protoc_insertion_point(copy_constructor:grpc.LoginErrorEvent)
}

inline void LoginErrorEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.message_){}
    , decltype(_impl_.type_){0}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.message_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.message_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

LoginErrorEvent::~LoginErrorEvent() {
  // @@protoc_insertion_point(destructor:grpc.LoginErrorEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void LoginErrorEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.message_.Destroy();
}

void LoginErrorEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void LoginErrorEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.LoginErrorEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.message_.ClearToEmpty();
  _impl_.type_ = 0;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* LoginErrorEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .grpc.LoginErrorType type = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_set_type(static_cast<::grpc::LoginErrorType>(val));
        } else
          goto handle_unusual;
        continue;
      // string message = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_message();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.LoginErrorEvent.message"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* LoginErrorEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.LoginErrorEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .grpc.LoginErrorType type = 1;
  if (this->_internal_type() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      1, this->_internal_type(), target);
  }

  // string message = 2;
  if (!this->_internal_message().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_message().data(), static_cast<int>(this->_internal_message().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.LoginErrorEvent.message");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_message(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.LoginErrorEvent)
  return target;
}

size_t LoginErrorEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.LoginErrorEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string message = 2;
  if (!this->_internal_message().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_message());
  }

  // .grpc.LoginErrorType type = 1;
  if (this->_internal_type() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_type());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData LoginErrorEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    LoginErrorEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*LoginErrorEvent::GetClassData() const { return &_class_data_; }


void LoginErrorEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<LoginErrorEvent*>(&to_msg);
  auto& from = static_cast<const LoginErrorEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.LoginErrorEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_message().empty()) {
    _this->_internal_set_message(from._internal_message());
  }
  if (from._internal_type() != 0) {
    _this->_internal_set_type(from._internal_type());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void LoginErrorEvent::CopyFrom(const LoginErrorEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.LoginErrorEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool LoginErrorEvent::IsInitialized() const {
  return true;
}

void LoginErrorEvent::InternalSwap(LoginErrorEvent* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.message_, lhs_arena,
      &other->_impl_.message_, rhs_arena
  );
  swap(_impl_.type_, other->_impl_.type_);
}

::PROTOBUF_NAMESPACE_ID::Metadata LoginErrorEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[22]);
}

// ===================================================================

class LoginTfaRequestedEvent::_Internal {
 public:
};

LoginTfaRequestedEvent::LoginTfaRequestedEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.LoginTfaRequestedEvent)
}
LoginTfaRequestedEvent::LoginTfaRequestedEvent(const LoginTfaRequestedEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  LoginTfaRequestedEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.username_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.username_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.username_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_username().empty()) {
    _this->_impl_.username_.Set(from._internal_username(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.LoginTfaRequestedEvent)
}

inline void LoginTfaRequestedEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.username_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.username_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.username_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

LoginTfaRequestedEvent::~LoginTfaRequestedEvent() {
  // @@protoc_insertion_point(destructor:grpc.LoginTfaRequestedEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void LoginTfaRequestedEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.username_.Destroy();
}

void LoginTfaRequestedEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void LoginTfaRequestedEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.LoginTfaRequestedEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.username_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* LoginTfaRequestedEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string username = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_username();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.LoginTfaRequestedEvent.username"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* LoginTfaRequestedEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.LoginTfaRequestedEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string username = 1;
  if (!this->_internal_username().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_username().data(), static_cast<int>(this->_internal_username().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.LoginTfaRequestedEvent.username");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_username(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.LoginTfaRequestedEvent)
  return target;
}

size_t LoginTfaRequestedEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.LoginTfaRequestedEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string username = 1;
  if (!this->_internal_username().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_username());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData LoginTfaRequestedEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    LoginTfaRequestedEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*LoginTfaRequestedEvent::GetClassData() const { return &_class_data_; }


void LoginTfaRequestedEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<LoginTfaRequestedEvent*>(&to_msg);
  auto& from = static_cast<const LoginTfaRequestedEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.LoginTfaRequestedEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_username().empty()) {
    _this->_internal_set_username(from._internal_username());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void LoginTfaRequestedEvent::CopyFrom(const LoginTfaRequestedEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.LoginTfaRequestedEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool LoginTfaRequestedEvent::IsInitialized() const {
  return true;
}

void LoginTfaRequestedEvent::InternalSwap(LoginTfaRequestedEvent* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.username_, lhs_arena,
      &other->_impl_.username_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata LoginTfaRequestedEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[23]);
}

// ===================================================================

class LoginTwoPasswordsRequestedEvent::_Internal {
 public:
};

LoginTwoPasswordsRequestedEvent::LoginTwoPasswordsRequestedEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.LoginTwoPasswordsRequestedEvent)
}
LoginTwoPasswordsRequestedEvent::LoginTwoPasswordsRequestedEvent(const LoginTwoPasswordsRequestedEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  LoginTwoPasswordsRequestedEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.LoginTwoPasswordsRequestedEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData LoginTwoPasswordsRequestedEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*LoginTwoPasswordsRequestedEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata LoginTwoPasswordsRequestedEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[24]);
}

// ===================================================================

class LoginFinishedEvent::_Internal {
 public:
};

LoginFinishedEvent::LoginFinishedEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.LoginFinishedEvent)
}
LoginFinishedEvent::LoginFinishedEvent(const LoginFinishedEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  LoginFinishedEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.userid_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.userid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.userid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_userid().empty()) {
    _this->_impl_.userid_.Set(from._internal_userid(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.LoginFinishedEvent)
}

inline void LoginFinishedEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.userid_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.userid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.userid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

LoginFinishedEvent::~LoginFinishedEvent() {
  // @@protoc_insertion_point(destructor:grpc.LoginFinishedEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void LoginFinishedEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.userid_.Destroy();
}

void LoginFinishedEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void LoginFinishedEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.LoginFinishedEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.userid_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* LoginFinishedEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string userID = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_userid();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.LoginFinishedEvent.userID"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* LoginFinishedEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.LoginFinishedEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string userID = 1;
  if (!this->_internal_userid().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_userid().data(), static_cast<int>(this->_internal_userid().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.LoginFinishedEvent.userID");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_userid(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.LoginFinishedEvent)
  return target;
}

size_t LoginFinishedEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.LoginFinishedEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string userID = 1;
  if (!this->_internal_userid().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_userid());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData LoginFinishedEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    LoginFinishedEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*LoginFinishedEvent::GetClassData() const { return &_class_data_; }


void LoginFinishedEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<LoginFinishedEvent*>(&to_msg);
  auto& from = static_cast<const LoginFinishedEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.LoginFinishedEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_userid().empty()) {
    _this->_internal_set_userid(from._internal_userid());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void LoginFinishedEvent::CopyFrom(const LoginFinishedEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.LoginFinishedEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool LoginFinishedEvent::IsInitialized() const {
  return true;
}

void LoginFinishedEvent::InternalSwap(LoginFinishedEvent* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.userid_, lhs_arena,
      &other->_impl_.userid_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata LoginFinishedEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[25]);
}

// ===================================================================

class UpdateEvent::_Internal {
 public:
  static const ::grpc::UpdateErrorEvent& error(const UpdateEvent* msg);
  static const ::grpc::UpdateManualReadyEvent& manualready(const UpdateEvent* msg);
  static const ::grpc::UpdateManualRestartNeededEvent& manualrestartneeded(const UpdateEvent* msg);
  static const ::grpc::UpdateForceEvent& force(const UpdateEvent* msg);
  static const ::grpc::UpdateSilentRestartNeeded& silentrestartneeded(const UpdateEvent* msg);
  static const ::grpc::UpdateIsLatestVersion& islatestversion(const UpdateEvent* msg);
  static const ::grpc::UpdateCheckFinished& checkfinished(const UpdateEvent* msg);
  static const ::grpc::UpdateVersionChanged& versionchanged(const UpdateEvent* msg);
};

const ::grpc::UpdateErrorEvent&
UpdateEvent::_Internal::error(const UpdateEvent* msg) {
  return *msg->_impl_.event_.error_;
}
const ::grpc::UpdateManualReadyEvent&
UpdateEvent::_Internal::manualready(const UpdateEvent* msg) {
  return *msg->_impl_.event_.manualready_;
}
const ::grpc::UpdateManualRestartNeededEvent&
UpdateEvent::_Internal::manualrestartneeded(const UpdateEvent* msg) {
  return *msg->_impl_.event_.manualrestartneeded_;
}
const ::grpc::UpdateForceEvent&
UpdateEvent::_Internal::force(const UpdateEvent* msg) {
  return *msg->_impl_.event_.force_;
}
const ::grpc::UpdateSilentRestartNeeded&
UpdateEvent::_Internal::silentrestartneeded(const UpdateEvent* msg) {
  return *msg->_impl_.event_.silentrestartneeded_;
}
const ::grpc::UpdateIsLatestVersion&
UpdateEvent::_Internal::islatestversion(const UpdateEvent* msg) {
  return *msg->_impl_.event_.islatestversion_;
}
const ::grpc::UpdateCheckFinished&
UpdateEvent::_Internal::checkfinished(const UpdateEvent* msg) {
  return *msg->_impl_.event_.checkfinished_;
}
const ::grpc::UpdateVersionChanged&
UpdateEvent::_Internal::versionchanged(const UpdateEvent* msg) {
  return *msg->_impl_.event_.versionchanged_;
}
void UpdateEvent::set_allocated_error(::grpc::UpdateErrorEvent* error) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (error) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(error);
    if (message_arena != submessage_arena) {
      error = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, error, submessage_arena);
    }
    set_has_error();
    _impl_.event_.error_ = error;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.UpdateEvent.error)
}
void UpdateEvent::set_allocated_manualready(::grpc::UpdateManualReadyEvent* manualready) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (manualready) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(manualready);
    if (message_arena != submessage_arena) {
      manualready = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, manualready, submessage_arena);
    }
    set_has_manualready();
    _impl_.event_.manualready_ = manualready;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.UpdateEvent.manualReady)
}
void UpdateEvent::set_allocated_manualrestartneeded(::grpc::UpdateManualRestartNeededEvent* manualrestartneeded) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (manualrestartneeded) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(manualrestartneeded);
    if (message_arena != submessage_arena) {
      manualrestartneeded = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, manualrestartneeded, submessage_arena);
    }
    set_has_manualrestartneeded();
    _impl_.event_.manualrestartneeded_ = manualrestartneeded;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.UpdateEvent.manualRestartNeeded)
}
void UpdateEvent::set_allocated_force(::grpc::UpdateForceEvent* force) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (force) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(force);
    if (message_arena != submessage_arena) {
      force = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, force, submessage_arena);
    }
    set_has_force();
    _impl_.event_.force_ = force;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.UpdateEvent.force)
}
void UpdateEvent::set_allocated_silentrestartneeded(::grpc::UpdateSilentRestartNeeded* silentrestartneeded) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (silentrestartneeded) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(silentrestartneeded);
    if (message_arena != submessage_arena) {
      silentrestartneeded = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, silentrestartneeded, submessage_arena);
    }
    set_has_silentrestartneeded();
    _impl_.event_.silentrestartneeded_ = silentrestartneeded;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.UpdateEvent.silentRestartNeeded)
}
void UpdateEvent::set_allocated_islatestversion(::grpc::UpdateIsLatestVersion* islatestversion) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (islatestversion) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(islatestversion);
    if (message_arena != submessage_arena) {
      islatestversion = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, islatestversion, submessage_arena);
    }
    set_has_islatestversion();
    _impl_.event_.islatestversion_ = islatestversion;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.UpdateEvent.isLatestVersion)
}
void UpdateEvent::set_allocated_checkfinished(::grpc::UpdateCheckFinished* checkfinished) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (checkfinished) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(checkfinished);
    if (message_arena != submessage_arena) {
      checkfinished = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, checkfinished, submessage_arena);
    }
    set_has_checkfinished();
    _impl_.event_.checkfinished_ = checkfinished;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.UpdateEvent.checkFinished)
}
void UpdateEvent::set_allocated_versionchanged(::grpc::UpdateVersionChanged* versionchanged) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (versionchanged) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(versionchanged);
    if (message_arena != submessage_arena) {
      versionchanged = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, versionchanged, submessage_arena);
    }
    set_has_versionchanged();
    _impl_.event_.versionchanged_ = versionchanged;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.UpdateEvent.versionChanged)
}
UpdateEvent::UpdateEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.UpdateEvent)
}
UpdateEvent::UpdateEvent(const UpdateEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UpdateEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_event();
  switch (from.event_case()) {
    case kError: {
      _this->_internal_mutable_error()->::grpc::UpdateErrorEvent::MergeFrom(
          from._internal_error());
      break;
    }
    case kManualReady: {
      _this->_internal_mutable_manualready()->::grpc::UpdateManualReadyEvent::MergeFrom(
          from._internal_manualready());
      break;
    }
    case kManualRestartNeeded: {
      _this->_internal_mutable_manualrestartneeded()->::grpc::UpdateManualRestartNeededEvent::MergeFrom(
          from._internal_manualrestartneeded());
      break;
    }
    case kForce: {
      _this->_internal_mutable_force()->::grpc::UpdateForceEvent::MergeFrom(
          from._internal_force());
      break;
    }
    case kSilentRestartNeeded: {
      _this->_internal_mutable_silentrestartneeded()->::grpc::UpdateSilentRestartNeeded::MergeFrom(
          from._internal_silentrestartneeded());
      break;
    }
    case kIsLatestVersion: {
      _this->_internal_mutable_islatestversion()->::grpc::UpdateIsLatestVersion::MergeFrom(
          from._internal_islatestversion());
      break;
    }
    case kCheckFinished: {
      _this->_internal_mutable_checkfinished()->::grpc::UpdateCheckFinished::MergeFrom(
          from._internal_checkfinished());
      break;
    }
    case kVersionChanged: {
      _this->_internal_mutable_versionchanged()->::grpc::UpdateVersionChanged::MergeFrom(
          from._internal_versionchanged());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:grpc.UpdateEvent)
}

inline void UpdateEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  clear_has_event();
}

UpdateEvent::~UpdateEvent() {
  // @@protoc_insertion_point(destructor:grpc.UpdateEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void UpdateEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_event()) {
    clear_event();
  }
}

void UpdateEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void UpdateEvent::clear_event() {
// @@protoc_insertion_point(one_of_clear_start:grpc.UpdateEvent)
  switch (event_case()) {
    case kError: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.error_;
      }
      break;
    }
    case kManualReady: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.manualready_;
      }
      break;
    }
    case kManualRestartNeeded: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.manualrestartneeded_;
      }
      break;
    }
    case kForce: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.force_;
      }
      break;
    }
    case kSilentRestartNeeded: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.silentrestartneeded_;
      }
      break;
    }
    case kIsLatestVersion: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.islatestversion_;
      }
      break;
    }
    case kCheckFinished: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.checkfinished_;
      }
      break;
    }
    case kVersionChanged: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.versionchanged_;
      }
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = EVENT_NOT_SET;
}


void UpdateEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.UpdateEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  clear_event();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* UpdateEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .grpc.UpdateErrorEvent error = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_error(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.UpdateManualReadyEvent manualReady = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_manualready(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.UpdateManualRestartNeededEvent manualRestartNeeded = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_manualrestartneeded(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.UpdateForceEvent force = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_force(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.UpdateSilentRestartNeeded silentRestartNeeded = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_silentrestartneeded(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.UpdateIsLatestVersion isLatestVersion = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr = ctx->ParseMessage(_internal_mutable_islatestversion(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.UpdateCheckFinished checkFinished = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr = ctx->ParseMessage(_internal_mutable_checkfinished(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.UpdateVersionChanged versionChanged = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr = ctx->ParseMessage(_internal_mutable_versionchanged(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* UpdateEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.UpdateEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .grpc.UpdateErrorEvent error = 1;
  if (_internal_has_error()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::error(this),
        _Internal::error(this).GetCachedSize(), target, stream);
  }

  // .grpc.UpdateManualReadyEvent manualReady = 2;
  if (_internal_has_manualready()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::manualready(this),
        _Internal::manualready(this).GetCachedSize(), target, stream);
  }

  // .grpc.UpdateManualRestartNeededEvent manualRestartNeeded = 3;
  if (_internal_has_manualrestartneeded()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::manualrestartneeded(this),
        _Internal::manualrestartneeded(this).GetCachedSize(), target, stream);
  }

  // .grpc.UpdateForceEvent force = 4;
  if (_internal_has_force()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::force(this),
        _Internal::force(this).GetCachedSize(), target, stream);
  }

  // .grpc.UpdateSilentRestartNeeded silentRestartNeeded = 5;
  if (_internal_has_silentrestartneeded()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(5, _Internal::silentrestartneeded(this),
        _Internal::silentrestartneeded(this).GetCachedSize(), target, stream);
  }

  // .grpc.UpdateIsLatestVersion isLatestVersion = 6;
  if (_internal_has_islatestversion()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(6, _Internal::islatestversion(this),
        _Internal::islatestversion(this).GetCachedSize(), target, stream);
  }

  // .grpc.UpdateCheckFinished checkFinished = 7;
  if (_internal_has_checkfinished()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(7, _Internal::checkfinished(this),
        _Internal::checkfinished(this).GetCachedSize(), target, stream);
  }

  // .grpc.UpdateVersionChanged versionChanged = 8;
  if (_internal_has_versionchanged()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(8, _Internal::versionchanged(this),
        _Internal::versionchanged(this).GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.UpdateEvent)
  return target;
}

size_t UpdateEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.UpdateEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  switch (event_case()) {
    // .grpc.UpdateErrorEvent error = 1;
    case kError: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.error_);
      break;
    }
    // .grpc.UpdateManualReadyEvent manualReady = 2;
    case kManualReady: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.manualready_);
      break;
    }
    // .grpc.UpdateManualRestartNeededEvent manualRestartNeeded = 3;
    case kManualRestartNeeded: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.manualrestartneeded_);
      break;
    }
    // .grpc.UpdateForceEvent force = 4;
    case kForce: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.force_);
      break;
    }
    // .grpc.UpdateSilentRestartNeeded silentRestartNeeded = 5;
    case kSilentRestartNeeded: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.silentrestartneeded_);
      break;
    }
    // .grpc.UpdateIsLatestVersion isLatestVersion = 6;
    case kIsLatestVersion: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.islatestversion_);
      break;
    }
    // .grpc.UpdateCheckFinished checkFinished = 7;
    case kCheckFinished: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.checkfinished_);
      break;
    }
    // .grpc.UpdateVersionChanged versionChanged = 8;
    case kVersionChanged: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.versionchanged_);
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UpdateEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    UpdateEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UpdateEvent::GetClassData() const { return &_class_data_; }


void UpdateEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<UpdateEvent*>(&to_msg);
  auto& from = static_cast<const UpdateEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.UpdateEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  switch (from.event_case()) {
    case kError: {
      _this->_internal_mutable_error()->::grpc::UpdateErrorEvent::MergeFrom(
          from._internal_error());
      break;
    }
    case kManualReady: {
      _this->_internal_mutable_manualready()->::grpc::UpdateManualReadyEvent::MergeFrom(
          from._internal_manualready());
      break;
    }
    case kManualRestartNeeded: {
      _this->_internal_mutable_manualrestartneeded()->::grpc::UpdateManualRestartNeededEvent::MergeFrom(
          from._internal_manualrestartneeded());
      break;
    }
    case kForce: {
      _this->_internal_mutable_force()->::grpc::UpdateForceEvent::MergeFrom(
          from._internal_force());
      break;
    }
    case kSilentRestartNeeded: {
      _this->_internal_mutable_silentrestartneeded()->::grpc::UpdateSilentRestartNeeded::MergeFrom(
          from._internal_silentrestartneeded());
      break;
    }
    case kIsLatestVersion: {
      _this->_internal_mutable_islatestversion()->::grpc::UpdateIsLatestVersion::MergeFrom(
          from._internal_islatestversion());
      break;
    }
    case kCheckFinished: {
      _this->_internal_mutable_checkfinished()->::grpc::UpdateCheckFinished::MergeFrom(
          from._internal_checkfinished());
      break;
    }
    case kVersionChanged: {
      _this->_internal_mutable_versionchanged()->::grpc::UpdateVersionChanged::MergeFrom(
          from._internal_versionchanged());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void UpdateEvent::CopyFrom(const UpdateEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.UpdateEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool UpdateEvent::IsInitialized() const {
  return true;
}

void UpdateEvent::InternalSwap(UpdateEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.event_, other->_impl_.event_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata UpdateEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[26]);
}

// ===================================================================

class UpdateErrorEvent::_Internal {
 public:
};

UpdateErrorEvent::UpdateErrorEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.UpdateErrorEvent)
}
UpdateErrorEvent::UpdateErrorEvent(const UpdateErrorEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UpdateErrorEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.type_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.type_ = from._impl_.type_;
  // @@protoc_insertion_point(copy_constructor:grpc.UpdateErrorEvent)
}

inline void UpdateErrorEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.type_){0}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

UpdateErrorEvent::~UpdateErrorEvent() {
  // @@protoc_insertion_point(destructor:grpc.UpdateErrorEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void UpdateErrorEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void UpdateErrorEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void UpdateErrorEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.UpdateErrorEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.type_ = 0;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* UpdateErrorEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .grpc.UpdateErrorType type = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_set_type(static_cast<::grpc::UpdateErrorType>(val));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* UpdateErrorEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.UpdateErrorEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .grpc.UpdateErrorType type = 1;
  if (this->_internal_type() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      1, this->_internal_type(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.UpdateErrorEvent)
  return target;
}

size_t UpdateErrorEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.UpdateErrorEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // .grpc.UpdateErrorType type = 1;
  if (this->_internal_type() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_type());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UpdateErrorEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    UpdateErrorEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UpdateErrorEvent::GetClassData() const { return &_class_data_; }


void UpdateErrorEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<UpdateErrorEvent*>(&to_msg);
  auto& from = static_cast<const UpdateErrorEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.UpdateErrorEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (from._internal_type() != 0) {
    _this->_internal_set_type(from._internal_type());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void UpdateErrorEvent::CopyFrom(const UpdateErrorEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.UpdateErrorEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool UpdateErrorEvent::IsInitialized() const {
  return true;
}

void UpdateErrorEvent::InternalSwap(UpdateErrorEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.type_, other->_impl_.type_);
}

::PROTOBUF_NAMESPACE_ID::Metadata UpdateErrorEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[27]);
}

// ===================================================================

class UpdateManualReadyEvent::_Internal {
 public:
};

UpdateManualReadyEvent::UpdateManualReadyEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.UpdateManualReadyEvent)
}
UpdateManualReadyEvent::UpdateManualReadyEvent(const UpdateManualReadyEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UpdateManualReadyEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.version_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.version_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.version_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_version().empty()) {
    _this->_impl_.version_.Set(from._internal_version(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.UpdateManualReadyEvent)
}

inline void UpdateManualReadyEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.version_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.version_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.version_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

UpdateManualReadyEvent::~UpdateManualReadyEvent() {
  // @@protoc_insertion_point(destructor:grpc.UpdateManualReadyEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void UpdateManualReadyEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.version_.Destroy();
}

void UpdateManualReadyEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void UpdateManualReadyEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.UpdateManualReadyEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.version_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* UpdateManualReadyEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string version = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_version();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.UpdateManualReadyEvent.version"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* UpdateManualReadyEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.UpdateManualReadyEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string version = 1;
  if (!this->_internal_version().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_version().data(), static_cast<int>(this->_internal_version().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.UpdateManualReadyEvent.version");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_version(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.UpdateManualReadyEvent)
  return target;
}

size_t UpdateManualReadyEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.UpdateManualReadyEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string version = 1;
  if (!this->_internal_version().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_version());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UpdateManualReadyEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    UpdateManualReadyEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UpdateManualReadyEvent::GetClassData() const { return &_class_data_; }


void UpdateManualReadyEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<UpdateManualReadyEvent*>(&to_msg);
  auto& from = static_cast<const UpdateManualReadyEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.UpdateManualReadyEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_version().empty()) {
    _this->_internal_set_version(from._internal_version());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void UpdateManualReadyEvent::CopyFrom(const UpdateManualReadyEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.UpdateManualReadyEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool UpdateManualReadyEvent::IsInitialized() const {
  return true;
}

void UpdateManualReadyEvent::InternalSwap(UpdateManualReadyEvent* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.version_, lhs_arena,
      &other->_impl_.version_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata UpdateManualReadyEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[28]);
}

// ===================================================================

class UpdateManualRestartNeededEvent::_Internal {
 public:
};

UpdateManualRestartNeededEvent::UpdateManualRestartNeededEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.UpdateManualRestartNeededEvent)
}
UpdateManualRestartNeededEvent::UpdateManualRestartNeededEvent(const UpdateManualRestartNeededEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  UpdateManualRestartNeededEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.UpdateManualRestartNeededEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UpdateManualRestartNeededEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UpdateManualRestartNeededEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata UpdateManualRestartNeededEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[29]);
}

// ===================================================================

class UpdateForceEvent::_Internal {
 public:
};

UpdateForceEvent::UpdateForceEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.UpdateForceEvent)
}
UpdateForceEvent::UpdateForceEvent(const UpdateForceEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UpdateForceEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.version_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.version_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.version_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_version().empty()) {
    _this->_impl_.version_.Set(from._internal_version(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.UpdateForceEvent)
}

inline void UpdateForceEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.version_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.version_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.version_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

UpdateForceEvent::~UpdateForceEvent() {
  // @@protoc_insertion_point(destructor:grpc.UpdateForceEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void UpdateForceEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.version_.Destroy();
}

void UpdateForceEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void UpdateForceEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.UpdateForceEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.version_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* UpdateForceEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string version = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_version();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.UpdateForceEvent.version"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* UpdateForceEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.UpdateForceEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string version = 1;
  if (!this->_internal_version().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_version().data(), static_cast<int>(this->_internal_version().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.UpdateForceEvent.version");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_version(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.UpdateForceEvent)
  return target;
}

size_t UpdateForceEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.UpdateForceEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string version = 1;
  if (!this->_internal_version().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_version());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UpdateForceEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    UpdateForceEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UpdateForceEvent::GetClassData() const { return &_class_data_; }


void UpdateForceEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<UpdateForceEvent*>(&to_msg);
  auto& from = static_cast<const UpdateForceEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.UpdateForceEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_version().empty()) {
    _this->_internal_set_version(from._internal_version());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void UpdateForceEvent::CopyFrom(const UpdateForceEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.UpdateForceEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool UpdateForceEvent::IsInitialized() const {
  return true;
}

void UpdateForceEvent::InternalSwap(UpdateForceEvent* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.version_, lhs_arena,
      &other->_impl_.version_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata UpdateForceEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[30]);
}

// ===================================================================

class UpdateSilentRestartNeeded::_Internal {
 public:
};

UpdateSilentRestartNeeded::UpdateSilentRestartNeeded(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.UpdateSilentRestartNeeded)
}
UpdateSilentRestartNeeded::UpdateSilentRestartNeeded(const UpdateSilentRestartNeeded& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  UpdateSilentRestartNeeded* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.UpdateSilentRestartNeeded)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UpdateSilentRestartNeeded::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UpdateSilentRestartNeeded::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata UpdateSilentRestartNeeded::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[31]);
}

// ===================================================================

class UpdateIsLatestVersion::_Internal {
 public:
};

UpdateIsLatestVersion::UpdateIsLatestVersion(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.UpdateIsLatestVersion)
}
UpdateIsLatestVersion::UpdateIsLatestVersion(const UpdateIsLatestVersion& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  UpdateIsLatestVersion* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.UpdateIsLatestVersion)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UpdateIsLatestVersion::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UpdateIsLatestVersion::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata UpdateIsLatestVersion::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[32]);
}

// ===================================================================

class UpdateCheckFinished::_Internal {
 public:
};

UpdateCheckFinished::UpdateCheckFinished(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.UpdateCheckFinished)
}
UpdateCheckFinished::UpdateCheckFinished(const UpdateCheckFinished& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  UpdateCheckFinished* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.UpdateCheckFinished)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UpdateCheckFinished::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UpdateCheckFinished::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata UpdateCheckFinished::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[33]);
}

// ===================================================================

class UpdateVersionChanged::_Internal {
 public:
};

UpdateVersionChanged::UpdateVersionChanged(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.UpdateVersionChanged)
}
UpdateVersionChanged::UpdateVersionChanged(const UpdateVersionChanged& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  UpdateVersionChanged* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.UpdateVersionChanged)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UpdateVersionChanged::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UpdateVersionChanged::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata UpdateVersionChanged::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[34]);
}

// ===================================================================

class CacheEvent::_Internal {
 public:
  static const ::grpc::CacheErrorEvent& error(const CacheEvent* msg);
  static const ::grpc::CacheLocationChangeSuccessEvent& locationchangedsuccess(const CacheEvent* msg);
  static const ::grpc::ChangeLocalCacheFinishedEvent& changelocalcachefinished(const CacheEvent* msg);
  static const ::grpc::IsCacheOnDiskEnabledChanged& iscacheondiskenabledchanged(const CacheEvent* msg);
  static const ::grpc::DiskCachePathChanged& diskcachepathchanged(const CacheEvent* msg);
};

const ::grpc::CacheErrorEvent&
CacheEvent::_Internal::error(const CacheEvent* msg) {
  return *msg->_impl_.event_.error_;
}
const ::grpc::CacheLocationChangeSuccessEvent&
CacheEvent::_Internal::locationchangedsuccess(const CacheEvent* msg) {
  return *msg->_impl_.event_.locationchangedsuccess_;
}
const ::grpc::ChangeLocalCacheFinishedEvent&
CacheEvent::_Internal::changelocalcachefinished(const CacheEvent* msg) {
  return *msg->_impl_.event_.changelocalcachefinished_;
}
const ::grpc::IsCacheOnDiskEnabledChanged&
CacheEvent::_Internal::iscacheondiskenabledchanged(const CacheEvent* msg) {
  return *msg->_impl_.event_.iscacheondiskenabledchanged_;
}
const ::grpc::DiskCachePathChanged&
CacheEvent::_Internal::diskcachepathchanged(const CacheEvent* msg) {
  return *msg->_impl_.event_.diskcachepathchanged_;
}
void CacheEvent::set_allocated_error(::grpc::CacheErrorEvent* error) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (error) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(error);
    if (message_arena != submessage_arena) {
      error = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, error, submessage_arena);
    }
    set_has_error();
    _impl_.event_.error_ = error;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.CacheEvent.error)
}
void CacheEvent::set_allocated_locationchangedsuccess(::grpc::CacheLocationChangeSuccessEvent* locationchangedsuccess) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (locationchangedsuccess) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(locationchangedsuccess);
    if (message_arena != submessage_arena) {
      locationchangedsuccess = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, locationchangedsuccess, submessage_arena);
    }
    set_has_locationchangedsuccess();
    _impl_.event_.locationchangedsuccess_ = locationchangedsuccess;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.CacheEvent.locationChangedSuccess)
}
void CacheEvent::set_allocated_changelocalcachefinished(::grpc::ChangeLocalCacheFinishedEvent* changelocalcachefinished) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (changelocalcachefinished) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(changelocalcachefinished);
    if (message_arena != submessage_arena) {
      changelocalcachefinished = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, changelocalcachefinished, submessage_arena);
    }
    set_has_changelocalcachefinished();
    _impl_.event_.changelocalcachefinished_ = changelocalcachefinished;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.CacheEvent.changeLocalCacheFinished)
}
void CacheEvent::set_allocated_iscacheondiskenabledchanged(::grpc::IsCacheOnDiskEnabledChanged* iscacheondiskenabledchanged) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (iscacheondiskenabledchanged) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(iscacheondiskenabledchanged);
    if (message_arena != submessage_arena) {
      iscacheondiskenabledchanged = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, iscacheondiskenabledchanged, submessage_arena);
    }
    set_has_iscacheondiskenabledchanged();
    _impl_.event_.iscacheondiskenabledchanged_ = iscacheondiskenabledchanged;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.CacheEvent.isCacheOnDiskEnabledChanged)
}
void CacheEvent::set_allocated_diskcachepathchanged(::grpc::DiskCachePathChanged* diskcachepathchanged) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (diskcachepathchanged) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(diskcachepathchanged);
    if (message_arena != submessage_arena) {
      diskcachepathchanged = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, diskcachepathchanged, submessage_arena);
    }
    set_has_diskcachepathchanged();
    _impl_.event_.diskcachepathchanged_ = diskcachepathchanged;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.CacheEvent.diskCachePathChanged)
}
CacheEvent::CacheEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.CacheEvent)
}
CacheEvent::CacheEvent(const CacheEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CacheEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_event();
  switch (from.event_case()) {
    case kError: {
      _this->_internal_mutable_error()->::grpc::CacheErrorEvent::MergeFrom(
          from._internal_error());
      break;
    }
    case kLocationChangedSuccess: {
      _this->_internal_mutable_locationchangedsuccess()->::grpc::CacheLocationChangeSuccessEvent::MergeFrom(
          from._internal_locationchangedsuccess());
      break;
    }
    case kChangeLocalCacheFinished: {
      _this->_internal_mutable_changelocalcachefinished()->::grpc::ChangeLocalCacheFinishedEvent::MergeFrom(
          from._internal_changelocalcachefinished());
      break;
    }
    case kIsCacheOnDiskEnabledChanged: {
      _this->_internal_mutable_iscacheondiskenabledchanged()->::grpc::IsCacheOnDiskEnabledChanged::MergeFrom(
          from._internal_iscacheondiskenabledchanged());
      break;
    }
    case kDiskCachePathChanged: {
      _this->_internal_mutable_diskcachepathchanged()->::grpc::DiskCachePathChanged::MergeFrom(
          from._internal_diskcachepathchanged());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:grpc.CacheEvent)
}

inline void CacheEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  clear_has_event();
}

CacheEvent::~CacheEvent() {
  // @@protoc_insertion_point(destructor:grpc.CacheEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CacheEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_event()) {
    clear_event();
  }
}

void CacheEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CacheEvent::clear_event() {
// @@protoc_insertion_point(one_of_clear_start:grpc.CacheEvent)
  switch (event_case()) {
    case kError: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.error_;
      }
      break;
    }
    case kLocationChangedSuccess: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.locationchangedsuccess_;
      }
      break;
    }
    case kChangeLocalCacheFinished: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.changelocalcachefinished_;
      }
      break;
    }
    case kIsCacheOnDiskEnabledChanged: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.iscacheondiskenabledchanged_;
      }
      break;
    }
    case kDiskCachePathChanged: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.diskcachepathchanged_;
      }
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = EVENT_NOT_SET;
}


void CacheEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.CacheEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  clear_event();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CacheEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .grpc.CacheErrorEvent error = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_error(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.CacheLocationChangeSuccessEvent locationChangedSuccess = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_locationchangedsuccess(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.ChangeLocalCacheFinishedEvent changeLocalCacheFinished = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_changelocalcachefinished(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.IsCacheOnDiskEnabledChanged isCacheOnDiskEnabledChanged = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_iscacheondiskenabledchanged(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.DiskCachePathChanged diskCachePathChanged = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_diskcachepathchanged(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CacheEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.CacheEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .grpc.CacheErrorEvent error = 1;
  if (_internal_has_error()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::error(this),
        _Internal::error(this).GetCachedSize(), target, stream);
  }

  // .grpc.CacheLocationChangeSuccessEvent locationChangedSuccess = 2;
  if (_internal_has_locationchangedsuccess()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::locationchangedsuccess(this),
        _Internal::locationchangedsuccess(this).GetCachedSize(), target, stream);
  }

  // .grpc.ChangeLocalCacheFinishedEvent changeLocalCacheFinished = 3;
  if (_internal_has_changelocalcachefinished()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::changelocalcachefinished(this),
        _Internal::changelocalcachefinished(this).GetCachedSize(), target, stream);
  }

  // .grpc.IsCacheOnDiskEnabledChanged isCacheOnDiskEnabledChanged = 4;
  if (_internal_has_iscacheondiskenabledchanged()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::iscacheondiskenabledchanged(this),
        _Internal::iscacheondiskenabledchanged(this).GetCachedSize(), target, stream);
  }

  // .grpc.DiskCachePathChanged diskCachePathChanged = 5;
  if (_internal_has_diskcachepathchanged()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(5, _Internal::diskcachepathchanged(this),
        _Internal::diskcachepathchanged(this).GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.CacheEvent)
  return target;
}

size_t CacheEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.CacheEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  switch (event_case()) {
    // .grpc.CacheErrorEvent error = 1;
    case kError: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.error_);
      break;
    }
    // .grpc.CacheLocationChangeSuccessEvent locationChangedSuccess = 2;
    case kLocationChangedSuccess: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.locationchangedsuccess_);
      break;
    }
    // .grpc.ChangeLocalCacheFinishedEvent changeLocalCacheFinished = 3;
    case kChangeLocalCacheFinished: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.changelocalcachefinished_);
      break;
    }
    // .grpc.IsCacheOnDiskEnabledChanged isCacheOnDiskEnabledChanged = 4;
    case kIsCacheOnDiskEnabledChanged: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.iscacheondiskenabledchanged_);
      break;
    }
    // .grpc.DiskCachePathChanged diskCachePathChanged = 5;
    case kDiskCachePathChanged: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.diskcachepathchanged_);
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CacheEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CacheEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CacheEvent::GetClassData() const { return &_class_data_; }


void CacheEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CacheEvent*>(&to_msg);
  auto& from = static_cast<const CacheEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.CacheEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  switch (from.event_case()) {
    case kError: {
      _this->_internal_mutable_error()->::grpc::CacheErrorEvent::MergeFrom(
          from._internal_error());
      break;
    }
    case kLocationChangedSuccess: {
      _this->_internal_mutable_locationchangedsuccess()->::grpc::CacheLocationChangeSuccessEvent::MergeFrom(
          from._internal_locationchangedsuccess());
      break;
    }
    case kChangeLocalCacheFinished: {
      _this->_internal_mutable_changelocalcachefinished()->::grpc::ChangeLocalCacheFinishedEvent::MergeFrom(
          from._internal_changelocalcachefinished());
      break;
    }
    case kIsCacheOnDiskEnabledChanged: {
      _this->_internal_mutable_iscacheondiskenabledchanged()->::grpc::IsCacheOnDiskEnabledChanged::MergeFrom(
          from._internal_iscacheondiskenabledchanged());
      break;
    }
    case kDiskCachePathChanged: {
      _this->_internal_mutable_diskcachepathchanged()->::grpc::DiskCachePathChanged::MergeFrom(
          from._internal_diskcachepathchanged());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CacheEvent::CopyFrom(const CacheEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.CacheEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CacheEvent::IsInitialized() const {
  return true;
}

void CacheEvent::InternalSwap(CacheEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.event_, other->_impl_.event_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata CacheEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[35]);
}

// ===================================================================

class CacheErrorEvent::_Internal {
 public:
};

CacheErrorEvent::CacheErrorEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.CacheErrorEvent)
}
CacheErrorEvent::CacheErrorEvent(const CacheErrorEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CacheErrorEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.type_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.type_ = from._impl_.type_;
  // @@protoc_insertion_point(copy_constructor:grpc.CacheErrorEvent)
}

inline void CacheErrorEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.type_){0}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

CacheErrorEvent::~CacheErrorEvent() {
  // @@protoc_insertion_point(destructor:grpc.CacheErrorEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CacheErrorEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void CacheErrorEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CacheErrorEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.CacheErrorEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.type_ = 0;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CacheErrorEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .grpc.CacheErrorType type = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_set_type(static_cast<::grpc::CacheErrorType>(val));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CacheErrorEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.CacheErrorEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .grpc.CacheErrorType type = 1;
  if (this->_internal_type() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      1, this->_internal_type(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.CacheErrorEvent)
  return target;
}

size_t CacheErrorEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.CacheErrorEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // .grpc.CacheErrorType type = 1;
  if (this->_internal_type() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_type());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CacheErrorEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CacheErrorEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CacheErrorEvent::GetClassData() const { return &_class_data_; }


void CacheErrorEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CacheErrorEvent*>(&to_msg);
  auto& from = static_cast<const CacheErrorEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.CacheErrorEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (from._internal_type() != 0) {
    _this->_internal_set_type(from._internal_type());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CacheErrorEvent::CopyFrom(const CacheErrorEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.CacheErrorEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CacheErrorEvent::IsInitialized() const {
  return true;
}

void CacheErrorEvent::InternalSwap(CacheErrorEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.type_, other->_impl_.type_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CacheErrorEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[36]);
}

// ===================================================================

class CacheLocationChangeSuccessEvent::_Internal {
 public:
};

CacheLocationChangeSuccessEvent::CacheLocationChangeSuccessEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.CacheLocationChangeSuccessEvent)
}
CacheLocationChangeSuccessEvent::CacheLocationChangeSuccessEvent(const CacheLocationChangeSuccessEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  CacheLocationChangeSuccessEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.CacheLocationChangeSuccessEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CacheLocationChangeSuccessEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CacheLocationChangeSuccessEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata CacheLocationChangeSuccessEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[37]);
}

// ===================================================================

class ChangeLocalCacheFinishedEvent::_Internal {
 public:
};

ChangeLocalCacheFinishedEvent::ChangeLocalCacheFinishedEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.ChangeLocalCacheFinishedEvent)
}
ChangeLocalCacheFinishedEvent::ChangeLocalCacheFinishedEvent(const ChangeLocalCacheFinishedEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  ChangeLocalCacheFinishedEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.willrestart_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.willrestart_ = from._impl_.willrestart_;
  // @@protoc_insertion_point(copy_constructor:grpc.ChangeLocalCacheFinishedEvent)
}

inline void ChangeLocalCacheFinishedEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.willrestart_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

ChangeLocalCacheFinishedEvent::~ChangeLocalCacheFinishedEvent() {
  // @@protoc_insertion_point(destructor:grpc.ChangeLocalCacheFinishedEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void ChangeLocalCacheFinishedEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void ChangeLocalCacheFinishedEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void ChangeLocalCacheFinishedEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.ChangeLocalCacheFinishedEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.willrestart_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* ChangeLocalCacheFinishedEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // bool willRestart = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _impl_.willrestart_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* ChangeLocalCacheFinishedEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.ChangeLocalCacheFinishedEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // bool willRestart = 1;
  if (this->_internal_willrestart() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_willrestart(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.ChangeLocalCacheFinishedEvent)
  return target;
}

size_t ChangeLocalCacheFinishedEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.ChangeLocalCacheFinishedEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // bool willRestart = 1;
  if (this->_internal_willrestart() != 0) {
    total_size += 1 + 1;
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ChangeLocalCacheFinishedEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    ChangeLocalCacheFinishedEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ChangeLocalCacheFinishedEvent::GetClassData() const { return &_class_data_; }


void ChangeLocalCacheFinishedEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<ChangeLocalCacheFinishedEvent*>(&to_msg);
  auto& from = static_cast<const ChangeLocalCacheFinishedEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.ChangeLocalCacheFinishedEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (from._internal_willrestart() != 0) {
    _this->_internal_set_willrestart(from._internal_willrestart());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void ChangeLocalCacheFinishedEvent::CopyFrom(const ChangeLocalCacheFinishedEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.ChangeLocalCacheFinishedEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool ChangeLocalCacheFinishedEvent::IsInitialized() const {
  return true;
}

void ChangeLocalCacheFinishedEvent::InternalSwap(ChangeLocalCacheFinishedEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.willrestart_, other->_impl_.willrestart_);
}

::PROTOBUF_NAMESPACE_ID::Metadata ChangeLocalCacheFinishedEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[38]);
}

// ===================================================================

class IsCacheOnDiskEnabledChanged::_Internal {
 public:
};

IsCacheOnDiskEnabledChanged::IsCacheOnDiskEnabledChanged(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.IsCacheOnDiskEnabledChanged)
}
IsCacheOnDiskEnabledChanged::IsCacheOnDiskEnabledChanged(const IsCacheOnDiskEnabledChanged& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  IsCacheOnDiskEnabledChanged* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.enabled_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.enabled_ = from._impl_.enabled_;
  // @@protoc_insertion_point(copy_constructor:grpc.IsCacheOnDiskEnabledChanged)
}

inline void IsCacheOnDiskEnabledChanged::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.enabled_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

IsCacheOnDiskEnabledChanged::~IsCacheOnDiskEnabledChanged() {
  // @@protoc_insertion_point(destructor:grpc.IsCacheOnDiskEnabledChanged)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void IsCacheOnDiskEnabledChanged::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void IsCacheOnDiskEnabledChanged::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void IsCacheOnDiskEnabledChanged::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.IsCacheOnDiskEnabledChanged)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.enabled_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* IsCacheOnDiskEnabledChanged::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // bool enabled = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _impl_.enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* IsCacheOnDiskEnabledChanged::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.IsCacheOnDiskEnabledChanged)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // bool enabled = 1;
  if (this->_internal_enabled() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.IsCacheOnDiskEnabledChanged)
  return target;
}

size_t IsCacheOnDiskEnabledChanged::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.IsCacheOnDiskEnabledChanged)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // bool enabled = 1;
  if (this->_internal_enabled() != 0) {
    total_size += 1 + 1;
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData IsCacheOnDiskEnabledChanged::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    IsCacheOnDiskEnabledChanged::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*IsCacheOnDiskEnabledChanged::GetClassData() const { return &_class_data_; }


void IsCacheOnDiskEnabledChanged::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<IsCacheOnDiskEnabledChanged*>(&to_msg);
  auto& from = static_cast<const IsCacheOnDiskEnabledChanged&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.IsCacheOnDiskEnabledChanged)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (from._internal_enabled() != 0) {
    _this->_internal_set_enabled(from._internal_enabled());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void IsCacheOnDiskEnabledChanged::CopyFrom(const IsCacheOnDiskEnabledChanged& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.IsCacheOnDiskEnabledChanged)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool IsCacheOnDiskEnabledChanged::IsInitialized() const {
  return true;
}

void IsCacheOnDiskEnabledChanged::InternalSwap(IsCacheOnDiskEnabledChanged* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.enabled_, other->_impl_.enabled_);
}

::PROTOBUF_NAMESPACE_ID::Metadata IsCacheOnDiskEnabledChanged::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[39]);
}

// ===================================================================

class DiskCachePathChanged::_Internal {
 public:
};

DiskCachePathChanged::DiskCachePathChanged(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.DiskCachePathChanged)
}
DiskCachePathChanged::DiskCachePathChanged(const DiskCachePathChanged& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  DiskCachePathChanged* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.path_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.path_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.path_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_path().empty()) {
    _this->_impl_.path_.Set(from._internal_path(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.DiskCachePathChanged)
}

inline void DiskCachePathChanged::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.path_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.path_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.path_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

DiskCachePathChanged::~DiskCachePathChanged() {
  // @@protoc_insertion_point(destructor:grpc.DiskCachePathChanged)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void DiskCachePathChanged::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.path_.Destroy();
}

void DiskCachePathChanged::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void DiskCachePathChanged::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.DiskCachePathChanged)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.path_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* DiskCachePathChanged::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string path = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_path();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.DiskCachePathChanged.path"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* DiskCachePathChanged::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.DiskCachePathChanged)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string path = 1;
  if (!this->_internal_path().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_path().data(), static_cast<int>(this->_internal_path().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.DiskCachePathChanged.path");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_path(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.DiskCachePathChanged)
  return target;
}

size_t DiskCachePathChanged::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.DiskCachePathChanged)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string path = 1;
  if (!this->_internal_path().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_path());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData DiskCachePathChanged::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    DiskCachePathChanged::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*DiskCachePathChanged::GetClassData() const { return &_class_data_; }


void DiskCachePathChanged::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<DiskCachePathChanged*>(&to_msg);
  auto& from = static_cast<const DiskCachePathChanged&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.DiskCachePathChanged)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_path().empty()) {
    _this->_internal_set_path(from._internal_path());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void DiskCachePathChanged::CopyFrom(const DiskCachePathChanged& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.DiskCachePathChanged)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool DiskCachePathChanged::IsInitialized() const {
  return true;
}

void DiskCachePathChanged::InternalSwap(DiskCachePathChanged* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.path_, lhs_arena,
      &other->_impl_.path_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata DiskCachePathChanged::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[40]);
}

// ===================================================================

class MailSettingsEvent::_Internal {
 public:
  static const ::grpc::MailSettingsErrorEvent& error(const MailSettingsEvent* msg);
  static const ::grpc::UseSslForSmtpFinishedEvent& usesslforsmtpfinished(const MailSettingsEvent* msg);
  static const ::grpc::ChangePortsFinishedEvent& changeportsfinished(const MailSettingsEvent* msg);
};

const ::grpc::MailSettingsErrorEvent&
MailSettingsEvent::_Internal::error(const MailSettingsEvent* msg) {
  return *msg->_impl_.event_.error_;
}
const ::grpc::UseSslForSmtpFinishedEvent&
MailSettingsEvent::_Internal::usesslforsmtpfinished(const MailSettingsEvent* msg) {
  return *msg->_impl_.event_.usesslforsmtpfinished_;
}
const ::grpc::ChangePortsFinishedEvent&
MailSettingsEvent::_Internal::changeportsfinished(const MailSettingsEvent* msg) {
  return *msg->_impl_.event_.changeportsfinished_;
}
void MailSettingsEvent::set_allocated_error(::grpc::MailSettingsErrorEvent* error) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (error) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(error);
    if (message_arena != submessage_arena) {
      error = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, error, submessage_arena);
    }
    set_has_error();
    _impl_.event_.error_ = error;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.MailSettingsEvent.error)
}
void MailSettingsEvent::set_allocated_usesslforsmtpfinished(::grpc::UseSslForSmtpFinishedEvent* usesslforsmtpfinished) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (usesslforsmtpfinished) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(usesslforsmtpfinished);
    if (message_arena != submessage_arena) {
      usesslforsmtpfinished = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, usesslforsmtpfinished, submessage_arena);
    }
    set_has_usesslforsmtpfinished();
    _impl_.event_.usesslforsmtpfinished_ = usesslforsmtpfinished;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.MailSettingsEvent.useSslForSmtpFinished)
}
void MailSettingsEvent::set_allocated_changeportsfinished(::grpc::ChangePortsFinishedEvent* changeportsfinished) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (changeportsfinished) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(changeportsfinished);
    if (message_arena != submessage_arena) {
      changeportsfinished = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, changeportsfinished, submessage_arena);
    }
    set_has_changeportsfinished();
    _impl_.event_.changeportsfinished_ = changeportsfinished;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.MailSettingsEvent.changePortsFinished)
}
MailSettingsEvent::MailSettingsEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.MailSettingsEvent)
}
MailSettingsEvent::MailSettingsEvent(const MailSettingsEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  MailSettingsEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_event();
  switch (from.event_case()) {
    case kError: {
      _this->_internal_mutable_error()->::grpc::MailSettingsErrorEvent::MergeFrom(
          from._internal_error());
      break;
    }
    case kUseSslForSmtpFinished: {
      _this->_internal_mutable_usesslforsmtpfinished()->::grpc::UseSslForSmtpFinishedEvent::MergeFrom(
          from._internal_usesslforsmtpfinished());
      break;
    }
    case kChangePortsFinished: {
      _this->_internal_mutable_changeportsfinished()->::grpc::ChangePortsFinishedEvent::MergeFrom(
          from._internal_changeportsfinished());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:grpc.MailSettingsEvent)
}

inline void MailSettingsEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  clear_has_event();
}

MailSettingsEvent::~MailSettingsEvent() {
  // @@protoc_insertion_point(destructor:grpc.MailSettingsEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void MailSettingsEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_event()) {
    clear_event();
  }
}

void MailSettingsEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void MailSettingsEvent::clear_event() {
// @@protoc_insertion_point(one_of_clear_start:grpc.MailSettingsEvent)
  switch (event_case()) {
    case kError: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.error_;
      }
      break;
    }
    case kUseSslForSmtpFinished: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.usesslforsmtpfinished_;
      }
      break;
    }
    case kChangePortsFinished: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.changeportsfinished_;
      }
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = EVENT_NOT_SET;
}


void MailSettingsEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.MailSettingsEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  clear_event();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* MailSettingsEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .grpc.MailSettingsErrorEvent error = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_error(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.UseSslForSmtpFinishedEvent useSslForSmtpFinished = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_usesslforsmtpfinished(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.ChangePortsFinishedEvent changePortsFinished = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_changeportsfinished(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* MailSettingsEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.MailSettingsEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .grpc.MailSettingsErrorEvent error = 1;
  if (_internal_has_error()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::error(this),
        _Internal::error(this).GetCachedSize(), target, stream);
  }

  // .grpc.UseSslForSmtpFinishedEvent useSslForSmtpFinished = 2;
  if (_internal_has_usesslforsmtpfinished()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::usesslforsmtpfinished(this),
        _Internal::usesslforsmtpfinished(this).GetCachedSize(), target, stream);
  }

  // .grpc.ChangePortsFinishedEvent changePortsFinished = 3;
  if (_internal_has_changeportsfinished()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::changeportsfinished(this),
        _Internal::changeportsfinished(this).GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.MailSettingsEvent)
  return target;
}

size_t MailSettingsEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.MailSettingsEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  switch (event_case()) {
    // .grpc.MailSettingsErrorEvent error = 1;
    case kError: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.error_);
      break;
    }
    // .grpc.UseSslForSmtpFinishedEvent useSslForSmtpFinished = 2;
    case kUseSslForSmtpFinished: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.usesslforsmtpfinished_);
      break;
    }
    // .grpc.ChangePortsFinishedEvent changePortsFinished = 3;
    case kChangePortsFinished: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.changeportsfinished_);
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MailSettingsEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    MailSettingsEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MailSettingsEvent::GetClassData() const { return &_class_data_; }


void MailSettingsEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<MailSettingsEvent*>(&to_msg);
  auto& from = static_cast<const MailSettingsEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.MailSettingsEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  switch (from.event_case()) {
    case kError: {
      _this->_internal_mutable_error()->::grpc::MailSettingsErrorEvent::MergeFrom(
          from._internal_error());
      break;
    }
    case kUseSslForSmtpFinished: {
      _this->_internal_mutable_usesslforsmtpfinished()->::grpc::UseSslForSmtpFinishedEvent::MergeFrom(
          from._internal_usesslforsmtpfinished());
      break;
    }
    case kChangePortsFinished: {
      _this->_internal_mutable_changeportsfinished()->::grpc::ChangePortsFinishedEvent::MergeFrom(
          from._internal_changeportsfinished());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void MailSettingsEvent::CopyFrom(const MailSettingsEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.MailSettingsEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool MailSettingsEvent::IsInitialized() const {
  return true;
}

void MailSettingsEvent::InternalSwap(MailSettingsEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.event_, other->_impl_.event_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata MailSettingsEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[41]);
}

// ===================================================================

class MailSettingsErrorEvent::_Internal {
 public:
};

MailSettingsErrorEvent::MailSettingsErrorEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.MailSettingsErrorEvent)
}
MailSettingsErrorEvent::MailSettingsErrorEvent(const MailSettingsErrorEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  MailSettingsErrorEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.type_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.type_ = from._impl_.type_;
  // @@protoc_insertion_point(copy_constructor:grpc.MailSettingsErrorEvent)
}

inline void MailSettingsErrorEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.type_){0}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

MailSettingsErrorEvent::~MailSettingsErrorEvent() {
  // @@protoc_insertion_point(destructor:grpc.MailSettingsErrorEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void MailSettingsErrorEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void MailSettingsErrorEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void MailSettingsErrorEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.MailSettingsErrorEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.type_ = 0;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* MailSettingsErrorEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .grpc.MailSettingsErrorType type = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_set_type(static_cast<::grpc::MailSettingsErrorType>(val));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* MailSettingsErrorEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.MailSettingsErrorEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .grpc.MailSettingsErrorType type = 1;
  if (this->_internal_type() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      1, this->_internal_type(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.MailSettingsErrorEvent)
  return target;
}

size_t MailSettingsErrorEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.MailSettingsErrorEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // .grpc.MailSettingsErrorType type = 1;
  if (this->_internal_type() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_type());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MailSettingsErrorEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    MailSettingsErrorEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MailSettingsErrorEvent::GetClassData() const { return &_class_data_; }


void MailSettingsErrorEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<MailSettingsErrorEvent*>(&to_msg);
  auto& from = static_cast<const MailSettingsErrorEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.MailSettingsErrorEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (from._internal_type() != 0) {
    _this->_internal_set_type(from._internal_type());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void MailSettingsErrorEvent::CopyFrom(const MailSettingsErrorEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.MailSettingsErrorEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool MailSettingsErrorEvent::IsInitialized() const {
  return true;
}

void MailSettingsErrorEvent::InternalSwap(MailSettingsErrorEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.type_, other->_impl_.type_);
}

::PROTOBUF_NAMESPACE_ID::Metadata MailSettingsErrorEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[42]);
}

// ===================================================================

class UseSslForSmtpFinishedEvent::_Internal {
 public:
};

UseSslForSmtpFinishedEvent::UseSslForSmtpFinishedEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.UseSslForSmtpFinishedEvent)
}
UseSslForSmtpFinishedEvent::UseSslForSmtpFinishedEvent(const UseSslForSmtpFinishedEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  UseSslForSmtpFinishedEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.UseSslForSmtpFinishedEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UseSslForSmtpFinishedEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UseSslForSmtpFinishedEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata UseSslForSmtpFinishedEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[43]);
}

// ===================================================================

class ChangePortsFinishedEvent::_Internal {
 public:
};

ChangePortsFinishedEvent::ChangePortsFinishedEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.ChangePortsFinishedEvent)
}
ChangePortsFinishedEvent::ChangePortsFinishedEvent(const ChangePortsFinishedEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  ChangePortsFinishedEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.ChangePortsFinishedEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ChangePortsFinishedEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ChangePortsFinishedEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata ChangePortsFinishedEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[44]);
}

// ===================================================================

class KeychainEvent::_Internal {
 public:
  static const ::grpc::ChangeKeychainFinishedEvent& changekeychainfinished(const KeychainEvent* msg);
  static const ::grpc::HasNoKeychainEvent& hasnokeychain(const KeychainEvent* msg);
  static const ::grpc::RebuildKeychainEvent& rebuildkeychain(const KeychainEvent* msg);
};

const ::grpc::ChangeKeychainFinishedEvent&
KeychainEvent::_Internal::changekeychainfinished(const KeychainEvent* msg) {
  return *msg->_impl_.event_.changekeychainfinished_;
}
const ::grpc::HasNoKeychainEvent&
KeychainEvent::_Internal::hasnokeychain(const KeychainEvent* msg) {
  return *msg->_impl_.event_.hasnokeychain_;
}
const ::grpc::RebuildKeychainEvent&
KeychainEvent::_Internal::rebuildkeychain(const KeychainEvent* msg) {
  return *msg->_impl_.event_.rebuildkeychain_;
}
void KeychainEvent::set_allocated_changekeychainfinished(::grpc::ChangeKeychainFinishedEvent* changekeychainfinished) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (changekeychainfinished) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(changekeychainfinished);
    if (message_arena != submessage_arena) {
      changekeychainfinished = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, changekeychainfinished, submessage_arena);
    }
    set_has_changekeychainfinished();
    _impl_.event_.changekeychainfinished_ = changekeychainfinished;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.KeychainEvent.changeKeychainFinished)
}
void KeychainEvent::set_allocated_hasnokeychain(::grpc::HasNoKeychainEvent* hasnokeychain) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (hasnokeychain) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(hasnokeychain);
    if (message_arena != submessage_arena) {
      hasnokeychain = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, hasnokeychain, submessage_arena);
    }
    set_has_hasnokeychain();
    _impl_.event_.hasnokeychain_ = hasnokeychain;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.KeychainEvent.hasNoKeychain)
}
void KeychainEvent::set_allocated_rebuildkeychain(::grpc::RebuildKeychainEvent* rebuildkeychain) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (rebuildkeychain) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(rebuildkeychain);
    if (message_arena != submessage_arena) {
      rebuildkeychain = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, rebuildkeychain, submessage_arena);
    }
    set_has_rebuildkeychain();
    _impl_.event_.rebuildkeychain_ = rebuildkeychain;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.KeychainEvent.rebuildKeychain)
}
KeychainEvent::KeychainEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.KeychainEvent)
}
KeychainEvent::KeychainEvent(const KeychainEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  KeychainEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_event();
  switch (from.event_case()) {
    case kChangeKeychainFinished: {
      _this->_internal_mutable_changekeychainfinished()->::grpc::ChangeKeychainFinishedEvent::MergeFrom(
          from._internal_changekeychainfinished());
      break;
    }
    case kHasNoKeychain: {
      _this->_internal_mutable_hasnokeychain()->::grpc::HasNoKeychainEvent::MergeFrom(
          from._internal_hasnokeychain());
      break;
    }
    case kRebuildKeychain: {
      _this->_internal_mutable_rebuildkeychain()->::grpc::RebuildKeychainEvent::MergeFrom(
          from._internal_rebuildkeychain());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:grpc.KeychainEvent)
}

inline void KeychainEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  clear_has_event();
}

KeychainEvent::~KeychainEvent() {
  // @@protoc_insertion_point(destructor:grpc.KeychainEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void KeychainEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_event()) {
    clear_event();
  }
}

void KeychainEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void KeychainEvent::clear_event() {
// @@protoc_insertion_point(one_of_clear_start:grpc.KeychainEvent)
  switch (event_case()) {
    case kChangeKeychainFinished: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.changekeychainfinished_;
      }
      break;
    }
    case kHasNoKeychain: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.hasnokeychain_;
      }
      break;
    }
    case kRebuildKeychain: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.rebuildkeychain_;
      }
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = EVENT_NOT_SET;
}


void KeychainEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.KeychainEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  clear_event();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* KeychainEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .grpc.ChangeKeychainFinishedEvent changeKeychainFinished = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_changekeychainfinished(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.HasNoKeychainEvent hasNoKeychain = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_hasnokeychain(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.RebuildKeychainEvent rebuildKeychain = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_rebuildkeychain(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* KeychainEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.KeychainEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .grpc.ChangeKeychainFinishedEvent changeKeychainFinished = 1;
  if (_internal_has_changekeychainfinished()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::changekeychainfinished(this),
        _Internal::changekeychainfinished(this).GetCachedSize(), target, stream);
  }

  // .grpc.HasNoKeychainEvent hasNoKeychain = 2;
  if (_internal_has_hasnokeychain()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::hasnokeychain(this),
        _Internal::hasnokeychain(this).GetCachedSize(), target, stream);
  }

  // .grpc.RebuildKeychainEvent rebuildKeychain = 3;
  if (_internal_has_rebuildkeychain()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::rebuildkeychain(this),
        _Internal::rebuildkeychain(this).GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.KeychainEvent)
  return target;
}

size_t KeychainEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.KeychainEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  switch (event_case()) {
    // .grpc.ChangeKeychainFinishedEvent changeKeychainFinished = 1;
    case kChangeKeychainFinished: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.changekeychainfinished_);
      break;
    }
    // .grpc.HasNoKeychainEvent hasNoKeychain = 2;
    case kHasNoKeychain: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.hasnokeychain_);
      break;
    }
    // .grpc.RebuildKeychainEvent rebuildKeychain = 3;
    case kRebuildKeychain: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.rebuildkeychain_);
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData KeychainEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    KeychainEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*KeychainEvent::GetClassData() const { return &_class_data_; }


void KeychainEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<KeychainEvent*>(&to_msg);
  auto& from = static_cast<const KeychainEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.KeychainEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  switch (from.event_case()) {
    case kChangeKeychainFinished: {
      _this->_internal_mutable_changekeychainfinished()->::grpc::ChangeKeychainFinishedEvent::MergeFrom(
          from._internal_changekeychainfinished());
      break;
    }
    case kHasNoKeychain: {
      _this->_internal_mutable_hasnokeychain()->::grpc::HasNoKeychainEvent::MergeFrom(
          from._internal_hasnokeychain());
      break;
    }
    case kRebuildKeychain: {
      _this->_internal_mutable_rebuildkeychain()->::grpc::RebuildKeychainEvent::MergeFrom(
          from._internal_rebuildkeychain());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void KeychainEvent::CopyFrom(const KeychainEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.KeychainEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool KeychainEvent::IsInitialized() const {
  return true;
}

void KeychainEvent::InternalSwap(KeychainEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.event_, other->_impl_.event_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata KeychainEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[45]);
}

// ===================================================================

class ChangeKeychainFinishedEvent::_Internal {
 public:
};

ChangeKeychainFinishedEvent::ChangeKeychainFinishedEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.ChangeKeychainFinishedEvent)
}
ChangeKeychainFinishedEvent::ChangeKeychainFinishedEvent(const ChangeKeychainFinishedEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  ChangeKeychainFinishedEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.ChangeKeychainFinishedEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ChangeKeychainFinishedEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ChangeKeychainFinishedEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata ChangeKeychainFinishedEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[46]);
}

// ===================================================================

class HasNoKeychainEvent::_Internal {
 public:
};

HasNoKeychainEvent::HasNoKeychainEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.HasNoKeychainEvent)
}
HasNoKeychainEvent::HasNoKeychainEvent(const HasNoKeychainEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  HasNoKeychainEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.HasNoKeychainEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData HasNoKeychainEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*HasNoKeychainEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata HasNoKeychainEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[47]);
}

// ===================================================================

class RebuildKeychainEvent::_Internal {
 public:
};

RebuildKeychainEvent::RebuildKeychainEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.RebuildKeychainEvent)
}
RebuildKeychainEvent::RebuildKeychainEvent(const RebuildKeychainEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  RebuildKeychainEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.RebuildKeychainEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData RebuildKeychainEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*RebuildKeychainEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata RebuildKeychainEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[48]);
}

// ===================================================================

class MailEvent::_Internal {
 public:
  static const ::grpc::NoActiveKeyForRecipientEvent& noactivekeyforrecipientevent(const MailEvent* msg);
  static const ::grpc::AddressChangedEvent& addresschanged(const MailEvent* msg);
  static const ::grpc::AddressChangedLogoutEvent& addresschangedlogout(const MailEvent* msg);
  static const ::grpc::ApiCertIssueEvent& apicertissue(const MailEvent* msg);
};

const ::grpc::NoActiveKeyForRecipientEvent&
MailEvent::_Internal::noactivekeyforrecipientevent(const MailEvent* msg) {
  return *msg->_impl_.event_.noactivekeyforrecipientevent_;
}
const ::grpc::AddressChangedEvent&
MailEvent::_Internal::addresschanged(const MailEvent* msg) {
  return *msg->_impl_.event_.addresschanged_;
}
const ::grpc::AddressChangedLogoutEvent&
MailEvent::_Internal::addresschangedlogout(const MailEvent* msg) {
  return *msg->_impl_.event_.addresschangedlogout_;
}
const ::grpc::ApiCertIssueEvent&
MailEvent::_Internal::apicertissue(const MailEvent* msg) {
  return *msg->_impl_.event_.apicertissue_;
}
void MailEvent::set_allocated_noactivekeyforrecipientevent(::grpc::NoActiveKeyForRecipientEvent* noactivekeyforrecipientevent) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (noactivekeyforrecipientevent) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(noactivekeyforrecipientevent);
    if (message_arena != submessage_arena) {
      noactivekeyforrecipientevent = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, noactivekeyforrecipientevent, submessage_arena);
    }
    set_has_noactivekeyforrecipientevent();
    _impl_.event_.noactivekeyforrecipientevent_ = noactivekeyforrecipientevent;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.MailEvent.noActiveKeyForRecipientEvent)
}
void MailEvent::set_allocated_addresschanged(::grpc::AddressChangedEvent* addresschanged) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (addresschanged) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(addresschanged);
    if (message_arena != submessage_arena) {
      addresschanged = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, addresschanged, submessage_arena);
    }
    set_has_addresschanged();
    _impl_.event_.addresschanged_ = addresschanged;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.MailEvent.addressChanged)
}
void MailEvent::set_allocated_addresschangedlogout(::grpc::AddressChangedLogoutEvent* addresschangedlogout) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (addresschangedlogout) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(addresschangedlogout);
    if (message_arena != submessage_arena) {
      addresschangedlogout = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, addresschangedlogout, submessage_arena);
    }
    set_has_addresschangedlogout();
    _impl_.event_.addresschangedlogout_ = addresschangedlogout;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.MailEvent.addressChangedLogout)
}
void MailEvent::set_allocated_apicertissue(::grpc::ApiCertIssueEvent* apicertissue) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (apicertissue) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(apicertissue);
    if (message_arena != submessage_arena) {
      apicertissue = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, apicertissue, submessage_arena);
    }
    set_has_apicertissue();
    _impl_.event_.apicertissue_ = apicertissue;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.MailEvent.apiCertIssue)
}
MailEvent::MailEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.MailEvent)
}
MailEvent::MailEvent(const MailEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  MailEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_event();
  switch (from.event_case()) {
    case kNoActiveKeyForRecipientEvent: {
      _this->_internal_mutable_noactivekeyforrecipientevent()->::grpc::NoActiveKeyForRecipientEvent::MergeFrom(
          from._internal_noactivekeyforrecipientevent());
      break;
    }
    case kAddressChanged: {
      _this->_internal_mutable_addresschanged()->::grpc::AddressChangedEvent::MergeFrom(
          from._internal_addresschanged());
      break;
    }
    case kAddressChangedLogout: {
      _this->_internal_mutable_addresschangedlogout()->::grpc::AddressChangedLogoutEvent::MergeFrom(
          from._internal_addresschangedlogout());
      break;
    }
    case kApiCertIssue: {
      _this->_internal_mutable_apicertissue()->::grpc::ApiCertIssueEvent::MergeFrom(
          from._internal_apicertissue());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:grpc.MailEvent)
}

inline void MailEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  clear_has_event();
}

MailEvent::~MailEvent() {
  // @@protoc_insertion_point(destructor:grpc.MailEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void MailEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_event()) {
    clear_event();
  }
}

void MailEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void MailEvent::clear_event() {
// @@protoc_insertion_point(one_of_clear_start:grpc.MailEvent)
  switch (event_case()) {
    case kNoActiveKeyForRecipientEvent: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.noactivekeyforrecipientevent_;
      }
      break;
    }
    case kAddressChanged: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.addresschanged_;
      }
      break;
    }
    case kAddressChangedLogout: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.addresschangedlogout_;
      }
      break;
    }
    case kApiCertIssue: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.apicertissue_;
      }
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = EVENT_NOT_SET;
}


void MailEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.MailEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  clear_event();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* MailEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .grpc.NoActiveKeyForRecipientEvent noActiveKeyForRecipientEvent = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_noactivekeyforrecipientevent(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.AddressChangedEvent addressChanged = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_addresschanged(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.AddressChangedLogoutEvent addressChangedLogout = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_addresschangedlogout(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.ApiCertIssueEvent apiCertIssue = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr = ctx->ParseMessage(_internal_mutable_apicertissue(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* MailEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.MailEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .grpc.NoActiveKeyForRecipientEvent noActiveKeyForRecipientEvent = 1;
  if (_internal_has_noactivekeyforrecipientevent()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::noactivekeyforrecipientevent(this),
        _Internal::noactivekeyforrecipientevent(this).GetCachedSize(), target, stream);
  }

  // .grpc.AddressChangedEvent addressChanged = 2;
  if (_internal_has_addresschanged()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::addresschanged(this),
        _Internal::addresschanged(this).GetCachedSize(), target, stream);
  }

  // .grpc.AddressChangedLogoutEvent addressChangedLogout = 3;
  if (_internal_has_addresschangedlogout()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::addresschangedlogout(this),
        _Internal::addresschangedlogout(this).GetCachedSize(), target, stream);
  }

  // .grpc.ApiCertIssueEvent apiCertIssue = 6;
  if (_internal_has_apicertissue()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(6, _Internal::apicertissue(this),
        _Internal::apicertissue(this).GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.MailEvent)
  return target;
}

size_t MailEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.MailEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  switch (event_case()) {
    // .grpc.NoActiveKeyForRecipientEvent noActiveKeyForRecipientEvent = 1;
    case kNoActiveKeyForRecipientEvent: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.noactivekeyforrecipientevent_);
      break;
    }
    // .grpc.AddressChangedEvent addressChanged = 2;
    case kAddressChanged: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.addresschanged_);
      break;
    }
    // .grpc.AddressChangedLogoutEvent addressChangedLogout = 3;
    case kAddressChangedLogout: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.addresschangedlogout_);
      break;
    }
    // .grpc.ApiCertIssueEvent apiCertIssue = 6;
    case kApiCertIssue: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.apicertissue_);
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MailEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    MailEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MailEvent::GetClassData() const { return &_class_data_; }


void MailEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<MailEvent*>(&to_msg);
  auto& from = static_cast<const MailEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.MailEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  switch (from.event_case()) {
    case kNoActiveKeyForRecipientEvent: {
      _this->_internal_mutable_noactivekeyforrecipientevent()->::grpc::NoActiveKeyForRecipientEvent::MergeFrom(
          from._internal_noactivekeyforrecipientevent());
      break;
    }
    case kAddressChanged: {
      _this->_internal_mutable_addresschanged()->::grpc::AddressChangedEvent::MergeFrom(
          from._internal_addresschanged());
      break;
    }
    case kAddressChangedLogout: {
      _this->_internal_mutable_addresschangedlogout()->::grpc::AddressChangedLogoutEvent::MergeFrom(
          from._internal_addresschangedlogout());
      break;
    }
    case kApiCertIssue: {
      _this->_internal_mutable_apicertissue()->::grpc::ApiCertIssueEvent::MergeFrom(
          from._internal_apicertissue());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void MailEvent::CopyFrom(const MailEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.MailEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool MailEvent::IsInitialized() const {
  return true;
}

void MailEvent::InternalSwap(MailEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.event_, other->_impl_.event_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata MailEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[49]);
}

// ===================================================================

class NoActiveKeyForRecipientEvent::_Internal {
 public:
};

NoActiveKeyForRecipientEvent::NoActiveKeyForRecipientEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.NoActiveKeyForRecipientEvent)
}
NoActiveKeyForRecipientEvent::NoActiveKeyForRecipientEvent(const NoActiveKeyForRecipientEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  NoActiveKeyForRecipientEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.email_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.email_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.email_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_email().empty()) {
    _this->_impl_.email_.Set(from._internal_email(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.NoActiveKeyForRecipientEvent)
}

inline void NoActiveKeyForRecipientEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.email_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.email_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.email_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

NoActiveKeyForRecipientEvent::~NoActiveKeyForRecipientEvent() {
  // @@protoc_insertion_point(destructor:grpc.NoActiveKeyForRecipientEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void NoActiveKeyForRecipientEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.email_.Destroy();
}

void NoActiveKeyForRecipientEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void NoActiveKeyForRecipientEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.NoActiveKeyForRecipientEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.email_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* NoActiveKeyForRecipientEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string email = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_email();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.NoActiveKeyForRecipientEvent.email"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* NoActiveKeyForRecipientEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.NoActiveKeyForRecipientEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string email = 1;
  if (!this->_internal_email().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_email().data(), static_cast<int>(this->_internal_email().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.NoActiveKeyForRecipientEvent.email");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_email(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.NoActiveKeyForRecipientEvent)
  return target;
}

size_t NoActiveKeyForRecipientEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.NoActiveKeyForRecipientEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string email = 1;
  if (!this->_internal_email().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_email());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData NoActiveKeyForRecipientEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    NoActiveKeyForRecipientEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*NoActiveKeyForRecipientEvent::GetClassData() const { return &_class_data_; }


void NoActiveKeyForRecipientEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<NoActiveKeyForRecipientEvent*>(&to_msg);
  auto& from = static_cast<const NoActiveKeyForRecipientEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.NoActiveKeyForRecipientEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_email().empty()) {
    _this->_internal_set_email(from._internal_email());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void NoActiveKeyForRecipientEvent::CopyFrom(const NoActiveKeyForRecipientEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.NoActiveKeyForRecipientEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool NoActiveKeyForRecipientEvent::IsInitialized() const {
  return true;
}

void NoActiveKeyForRecipientEvent::InternalSwap(NoActiveKeyForRecipientEvent* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.email_, lhs_arena,
      &other->_impl_.email_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata NoActiveKeyForRecipientEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[50]);
}

// ===================================================================

class AddressChangedEvent::_Internal {
 public:
};

AddressChangedEvent::AddressChangedEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.AddressChangedEvent)
}
AddressChangedEvent::AddressChangedEvent(const AddressChangedEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  AddressChangedEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.address_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.address_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.address_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_address().empty()) {
    _this->_impl_.address_.Set(from._internal_address(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.AddressChangedEvent)
}

inline void AddressChangedEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.address_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.address_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.address_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

AddressChangedEvent::~AddressChangedEvent() {
  // @@protoc_insertion_point(destructor:grpc.AddressChangedEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void AddressChangedEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.address_.Destroy();
}

void AddressChangedEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void AddressChangedEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.AddressChangedEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.address_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* AddressChangedEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string address = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_address();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.AddressChangedEvent.address"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* AddressChangedEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.AddressChangedEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string address = 1;
  if (!this->_internal_address().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_address().data(), static_cast<int>(this->_internal_address().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.AddressChangedEvent.address");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_address(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.AddressChangedEvent)
  return target;
}

size_t AddressChangedEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.AddressChangedEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string address = 1;
  if (!this->_internal_address().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_address());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AddressChangedEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    AddressChangedEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AddressChangedEvent::GetClassData() const { return &_class_data_; }


void AddressChangedEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<AddressChangedEvent*>(&to_msg);
  auto& from = static_cast<const AddressChangedEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.AddressChangedEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_address().empty()) {
    _this->_internal_set_address(from._internal_address());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void AddressChangedEvent::CopyFrom(const AddressChangedEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.AddressChangedEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool AddressChangedEvent::IsInitialized() const {
  return true;
}

void AddressChangedEvent::InternalSwap(AddressChangedEvent* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.address_, lhs_arena,
      &other->_impl_.address_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata AddressChangedEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[51]);
}

// ===================================================================

class AddressChangedLogoutEvent::_Internal {
 public:
};

AddressChangedLogoutEvent::AddressChangedLogoutEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.AddressChangedLogoutEvent)
}
AddressChangedLogoutEvent::AddressChangedLogoutEvent(const AddressChangedLogoutEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  AddressChangedLogoutEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.address_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.address_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.address_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_address().empty()) {
    _this->_impl_.address_.Set(from._internal_address(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.AddressChangedLogoutEvent)
}

inline void AddressChangedLogoutEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.address_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.address_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.address_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

AddressChangedLogoutEvent::~AddressChangedLogoutEvent() {
  // @@protoc_insertion_point(destructor:grpc.AddressChangedLogoutEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void AddressChangedLogoutEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.address_.Destroy();
}

void AddressChangedLogoutEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void AddressChangedLogoutEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.AddressChangedLogoutEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.address_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* AddressChangedLogoutEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string address = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_address();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.AddressChangedLogoutEvent.address"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* AddressChangedLogoutEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.AddressChangedLogoutEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string address = 1;
  if (!this->_internal_address().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_address().data(), static_cast<int>(this->_internal_address().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.AddressChangedLogoutEvent.address");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_address(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.AddressChangedLogoutEvent)
  return target;
}

size_t AddressChangedLogoutEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.AddressChangedLogoutEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string address = 1;
  if (!this->_internal_address().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_address());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AddressChangedLogoutEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    AddressChangedLogoutEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AddressChangedLogoutEvent::GetClassData() const { return &_class_data_; }


void AddressChangedLogoutEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<AddressChangedLogoutEvent*>(&to_msg);
  auto& from = static_cast<const AddressChangedLogoutEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.AddressChangedLogoutEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_address().empty()) {
    _this->_internal_set_address(from._internal_address());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void AddressChangedLogoutEvent::CopyFrom(const AddressChangedLogoutEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.AddressChangedLogoutEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool AddressChangedLogoutEvent::IsInitialized() const {
  return true;
}

void AddressChangedLogoutEvent::InternalSwap(AddressChangedLogoutEvent* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.address_, lhs_arena,
      &other->_impl_.address_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata AddressChangedLogoutEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[52]);
}

// ===================================================================

class ApiCertIssueEvent::_Internal {
 public:
};

ApiCertIssueEvent::ApiCertIssueEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:grpc.ApiCertIssueEvent)
}
ApiCertIssueEvent::ApiCertIssueEvent(const ApiCertIssueEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  ApiCertIssueEvent* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:grpc.ApiCertIssueEvent)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ApiCertIssueEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ApiCertIssueEvent::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata ApiCertIssueEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[53]);
}

// ===================================================================

class UserEvent::_Internal {
 public:
  static const ::grpc::ToggleSplitModeFinishedEvent& togglesplitmodefinished(const UserEvent* msg);
  static const ::grpc::UserDisconnectedEvent& userdisconnected(const UserEvent* msg);
  static const ::grpc::UserChangedEvent& userchanged(const UserEvent* msg);
};

const ::grpc::ToggleSplitModeFinishedEvent&
UserEvent::_Internal::togglesplitmodefinished(const UserEvent* msg) {
  return *msg->_impl_.event_.togglesplitmodefinished_;
}
const ::grpc::UserDisconnectedEvent&
UserEvent::_Internal::userdisconnected(const UserEvent* msg) {
  return *msg->_impl_.event_.userdisconnected_;
}
const ::grpc::UserChangedEvent&
UserEvent::_Internal::userchanged(const UserEvent* msg) {
  return *msg->_impl_.event_.userchanged_;
}
void UserEvent::set_allocated_togglesplitmodefinished(::grpc::ToggleSplitModeFinishedEvent* togglesplitmodefinished) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (togglesplitmodefinished) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(togglesplitmodefinished);
    if (message_arena != submessage_arena) {
      togglesplitmodefinished = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, togglesplitmodefinished, submessage_arena);
    }
    set_has_togglesplitmodefinished();
    _impl_.event_.togglesplitmodefinished_ = togglesplitmodefinished;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.UserEvent.toggleSplitModeFinished)
}
void UserEvent::set_allocated_userdisconnected(::grpc::UserDisconnectedEvent* userdisconnected) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (userdisconnected) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(userdisconnected);
    if (message_arena != submessage_arena) {
      userdisconnected = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, userdisconnected, submessage_arena);
    }
    set_has_userdisconnected();
    _impl_.event_.userdisconnected_ = userdisconnected;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.UserEvent.userDisconnected)
}
void UserEvent::set_allocated_userchanged(::grpc::UserChangedEvent* userchanged) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_event();
  if (userchanged) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(userchanged);
    if (message_arena != submessage_arena) {
      userchanged = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, userchanged, submessage_arena);
    }
    set_has_userchanged();
    _impl_.event_.userchanged_ = userchanged;
  }
  // @@protoc_insertion_point(field_set_allocated:grpc.UserEvent.userChanged)
}
UserEvent::UserEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.UserEvent)
}
UserEvent::UserEvent(const UserEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UserEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_event();
  switch (from.event_case()) {
    case kToggleSplitModeFinished: {
      _this->_internal_mutable_togglesplitmodefinished()->::grpc::ToggleSplitModeFinishedEvent::MergeFrom(
          from._internal_togglesplitmodefinished());
      break;
    }
    case kUserDisconnected: {
      _this->_internal_mutable_userdisconnected()->::grpc::UserDisconnectedEvent::MergeFrom(
          from._internal_userdisconnected());
      break;
    }
    case kUserChanged: {
      _this->_internal_mutable_userchanged()->::grpc::UserChangedEvent::MergeFrom(
          from._internal_userchanged());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:grpc.UserEvent)
}

inline void UserEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.event_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  clear_has_event();
}

UserEvent::~UserEvent() {
  // @@protoc_insertion_point(destructor:grpc.UserEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void UserEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_event()) {
    clear_event();
  }
}

void UserEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void UserEvent::clear_event() {
// @@protoc_insertion_point(one_of_clear_start:grpc.UserEvent)
  switch (event_case()) {
    case kToggleSplitModeFinished: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.togglesplitmodefinished_;
      }
      break;
    }
    case kUserDisconnected: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.userdisconnected_;
      }
      break;
    }
    case kUserChanged: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.event_.userchanged_;
      }
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = EVENT_NOT_SET;
}


void UserEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.UserEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  clear_event();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* UserEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .grpc.ToggleSplitModeFinishedEvent toggleSplitModeFinished = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_togglesplitmodefinished(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.UserDisconnectedEvent userDisconnected = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_userdisconnected(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .grpc.UserChangedEvent userChanged = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_userchanged(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* UserEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.UserEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .grpc.ToggleSplitModeFinishedEvent toggleSplitModeFinished = 1;
  if (_internal_has_togglesplitmodefinished()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::togglesplitmodefinished(this),
        _Internal::togglesplitmodefinished(this).GetCachedSize(), target, stream);
  }

  // .grpc.UserDisconnectedEvent userDisconnected = 2;
  if (_internal_has_userdisconnected()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::userdisconnected(this),
        _Internal::userdisconnected(this).GetCachedSize(), target, stream);
  }

  // .grpc.UserChangedEvent userChanged = 3;
  if (_internal_has_userchanged()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::userchanged(this),
        _Internal::userchanged(this).GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.UserEvent)
  return target;
}

size_t UserEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.UserEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  switch (event_case()) {
    // .grpc.ToggleSplitModeFinishedEvent toggleSplitModeFinished = 1;
    case kToggleSplitModeFinished: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.togglesplitmodefinished_);
      break;
    }
    // .grpc.UserDisconnectedEvent userDisconnected = 2;
    case kUserDisconnected: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.userdisconnected_);
      break;
    }
    // .grpc.UserChangedEvent userChanged = 3;
    case kUserChanged: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.event_.userchanged_);
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UserEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    UserEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UserEvent::GetClassData() const { return &_class_data_; }


void UserEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<UserEvent*>(&to_msg);
  auto& from = static_cast<const UserEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.UserEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  switch (from.event_case()) {
    case kToggleSplitModeFinished: {
      _this->_internal_mutable_togglesplitmodefinished()->::grpc::ToggleSplitModeFinishedEvent::MergeFrom(
          from._internal_togglesplitmodefinished());
      break;
    }
    case kUserDisconnected: {
      _this->_internal_mutable_userdisconnected()->::grpc::UserDisconnectedEvent::MergeFrom(
          from._internal_userdisconnected());
      break;
    }
    case kUserChanged: {
      _this->_internal_mutable_userchanged()->::grpc::UserChangedEvent::MergeFrom(
          from._internal_userchanged());
      break;
    }
    case EVENT_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void UserEvent::CopyFrom(const UserEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.UserEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool UserEvent::IsInitialized() const {
  return true;
}

void UserEvent::InternalSwap(UserEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.event_, other->_impl_.event_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata UserEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[54]);
}

// ===================================================================

class ToggleSplitModeFinishedEvent::_Internal {
 public:
};

ToggleSplitModeFinishedEvent::ToggleSplitModeFinishedEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.ToggleSplitModeFinishedEvent)
}
ToggleSplitModeFinishedEvent::ToggleSplitModeFinishedEvent(const ToggleSplitModeFinishedEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  ToggleSplitModeFinishedEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.userid_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.userid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.userid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_userid().empty()) {
    _this->_impl_.userid_.Set(from._internal_userid(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.ToggleSplitModeFinishedEvent)
}

inline void ToggleSplitModeFinishedEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.userid_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.userid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.userid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

ToggleSplitModeFinishedEvent::~ToggleSplitModeFinishedEvent() {
  // @@protoc_insertion_point(destructor:grpc.ToggleSplitModeFinishedEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void ToggleSplitModeFinishedEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.userid_.Destroy();
}

void ToggleSplitModeFinishedEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void ToggleSplitModeFinishedEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.ToggleSplitModeFinishedEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.userid_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* ToggleSplitModeFinishedEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string userID = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_userid();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.ToggleSplitModeFinishedEvent.userID"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* ToggleSplitModeFinishedEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.ToggleSplitModeFinishedEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string userID = 1;
  if (!this->_internal_userid().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_userid().data(), static_cast<int>(this->_internal_userid().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.ToggleSplitModeFinishedEvent.userID");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_userid(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.ToggleSplitModeFinishedEvent)
  return target;
}

size_t ToggleSplitModeFinishedEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.ToggleSplitModeFinishedEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string userID = 1;
  if (!this->_internal_userid().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_userid());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ToggleSplitModeFinishedEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    ToggleSplitModeFinishedEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ToggleSplitModeFinishedEvent::GetClassData() const { return &_class_data_; }


void ToggleSplitModeFinishedEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<ToggleSplitModeFinishedEvent*>(&to_msg);
  auto& from = static_cast<const ToggleSplitModeFinishedEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.ToggleSplitModeFinishedEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_userid().empty()) {
    _this->_internal_set_userid(from._internal_userid());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void ToggleSplitModeFinishedEvent::CopyFrom(const ToggleSplitModeFinishedEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.ToggleSplitModeFinishedEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool ToggleSplitModeFinishedEvent::IsInitialized() const {
  return true;
}

void ToggleSplitModeFinishedEvent::InternalSwap(ToggleSplitModeFinishedEvent* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.userid_, lhs_arena,
      &other->_impl_.userid_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata ToggleSplitModeFinishedEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[55]);
}

// ===================================================================

class UserDisconnectedEvent::_Internal {
 public:
};

UserDisconnectedEvent::UserDisconnectedEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.UserDisconnectedEvent)
}
UserDisconnectedEvent::UserDisconnectedEvent(const UserDisconnectedEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UserDisconnectedEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.username_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.username_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.username_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_username().empty()) {
    _this->_impl_.username_.Set(from._internal_username(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.UserDisconnectedEvent)
}

inline void UserDisconnectedEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.username_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.username_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.username_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

UserDisconnectedEvent::~UserDisconnectedEvent() {
  // @@protoc_insertion_point(destructor:grpc.UserDisconnectedEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void UserDisconnectedEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.username_.Destroy();
}

void UserDisconnectedEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void UserDisconnectedEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.UserDisconnectedEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.username_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* UserDisconnectedEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string username = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_username();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.UserDisconnectedEvent.username"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* UserDisconnectedEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.UserDisconnectedEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string username = 1;
  if (!this->_internal_username().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_username().data(), static_cast<int>(this->_internal_username().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.UserDisconnectedEvent.username");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_username(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.UserDisconnectedEvent)
  return target;
}

size_t UserDisconnectedEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.UserDisconnectedEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string username = 1;
  if (!this->_internal_username().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_username());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UserDisconnectedEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    UserDisconnectedEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UserDisconnectedEvent::GetClassData() const { return &_class_data_; }


void UserDisconnectedEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<UserDisconnectedEvent*>(&to_msg);
  auto& from = static_cast<const UserDisconnectedEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.UserDisconnectedEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_username().empty()) {
    _this->_internal_set_username(from._internal_username());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void UserDisconnectedEvent::CopyFrom(const UserDisconnectedEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.UserDisconnectedEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool UserDisconnectedEvent::IsInitialized() const {
  return true;
}

void UserDisconnectedEvent::InternalSwap(UserDisconnectedEvent* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.username_, lhs_arena,
      &other->_impl_.username_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata UserDisconnectedEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[56]);
}

// ===================================================================

class UserChangedEvent::_Internal {
 public:
};

UserChangedEvent::UserChangedEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:grpc.UserChangedEvent)
}
UserChangedEvent::UserChangedEvent(const UserChangedEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UserChangedEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.userid_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.userid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.userid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_userid().empty()) {
    _this->_impl_.userid_.Set(from._internal_userid(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:grpc.UserChangedEvent)
}

inline void UserChangedEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.userid_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.userid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.userid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

UserChangedEvent::~UserChangedEvent() {
  // @@protoc_insertion_point(destructor:grpc.UserChangedEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void UserChangedEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.userid_.Destroy();
}

void UserChangedEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void UserChangedEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:grpc.UserChangedEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.userid_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* UserChangedEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string userID = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_userid();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "grpc.UserChangedEvent.userID"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* UserChangedEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:grpc.UserChangedEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string userID = 1;
  if (!this->_internal_userid().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_userid().data(), static_cast<int>(this->_internal_userid().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "grpc.UserChangedEvent.userID");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_userid(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:grpc.UserChangedEvent)
  return target;
}

size_t UserChangedEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:grpc.UserChangedEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string userID = 1;
  if (!this->_internal_userid().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_userid());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData UserChangedEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    UserChangedEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*UserChangedEvent::GetClassData() const { return &_class_data_; }


void UserChangedEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<UserChangedEvent*>(&to_msg);
  auto& from = static_cast<const UserChangedEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:grpc.UserChangedEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_userid().empty()) {
    _this->_internal_set_userid(from._internal_userid());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void UserChangedEvent::CopyFrom(const UserChangedEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:grpc.UserChangedEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool UserChangedEvent::IsInitialized() const {
  return true;
}

void UserChangedEvent::InternalSwap(UserChangedEvent* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.userid_, lhs_arena,
      &other->_impl_.userid_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata UserChangedEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_bridge_2eproto_getter, &descriptor_table_bridge_2eproto_once,
      file_level_metadata_bridge_2eproto[57]);
}

// @@protoc_insertion_point(namespace_scope)
}  // namespace grpc
PROTOBUF_NAMESPACE_OPEN
template<> PROTOBUF_NOINLINE ::grpc::AddLogEntryRequest*
Arena::CreateMaybeMessage< ::grpc::AddLogEntryRequest >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::AddLogEntryRequest >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ReportBugRequest*
Arena::CreateMaybeMessage< ::grpc::ReportBugRequest >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ReportBugRequest >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::LoginRequest*
Arena::CreateMaybeMessage< ::grpc::LoginRequest >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::LoginRequest >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::LoginAbortRequest*
Arena::CreateMaybeMessage< ::grpc::LoginAbortRequest >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::LoginAbortRequest >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ChangeLocalCacheRequest*
Arena::CreateMaybeMessage< ::grpc::ChangeLocalCacheRequest >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ChangeLocalCacheRequest >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ChangePortsRequest*
Arena::CreateMaybeMessage< ::grpc::ChangePortsRequest >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ChangePortsRequest >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::AvailableKeychainsResponse*
Arena::CreateMaybeMessage< ::grpc::AvailableKeychainsResponse >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::AvailableKeychainsResponse >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::User*
Arena::CreateMaybeMessage< ::grpc::User >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::User >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UserSplitModeRequest*
Arena::CreateMaybeMessage< ::grpc::UserSplitModeRequest >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UserSplitModeRequest >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UserListResponse*
Arena::CreateMaybeMessage< ::grpc::UserListResponse >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UserListResponse >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ConfigureAppleMailRequest*
Arena::CreateMaybeMessage< ::grpc::ConfigureAppleMailRequest >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ConfigureAppleMailRequest >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::EventStreamRequest*
Arena::CreateMaybeMessage< ::grpc::EventStreamRequest >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::EventStreamRequest >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::StreamEvent*
Arena::CreateMaybeMessage< ::grpc::StreamEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::StreamEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::AppEvent*
Arena::CreateMaybeMessage< ::grpc::AppEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::AppEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::InternetStatusEvent*
Arena::CreateMaybeMessage< ::grpc::InternetStatusEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::InternetStatusEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ToggleAutostartFinishedEvent*
Arena::CreateMaybeMessage< ::grpc::ToggleAutostartFinishedEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ToggleAutostartFinishedEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ResetFinishedEvent*
Arena::CreateMaybeMessage< ::grpc::ResetFinishedEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ResetFinishedEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ReportBugFinishedEvent*
Arena::CreateMaybeMessage< ::grpc::ReportBugFinishedEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ReportBugFinishedEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ReportBugSuccessEvent*
Arena::CreateMaybeMessage< ::grpc::ReportBugSuccessEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ReportBugSuccessEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ReportBugErrorEvent*
Arena::CreateMaybeMessage< ::grpc::ReportBugErrorEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ReportBugErrorEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ShowMainWindowEvent*
Arena::CreateMaybeMessage< ::grpc::ShowMainWindowEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ShowMainWindowEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::LoginEvent*
Arena::CreateMaybeMessage< ::grpc::LoginEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::LoginEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::LoginErrorEvent*
Arena::CreateMaybeMessage< ::grpc::LoginErrorEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::LoginErrorEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::LoginTfaRequestedEvent*
Arena::CreateMaybeMessage< ::grpc::LoginTfaRequestedEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::LoginTfaRequestedEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::LoginTwoPasswordsRequestedEvent*
Arena::CreateMaybeMessage< ::grpc::LoginTwoPasswordsRequestedEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::LoginTwoPasswordsRequestedEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::LoginFinishedEvent*
Arena::CreateMaybeMessage< ::grpc::LoginFinishedEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::LoginFinishedEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UpdateEvent*
Arena::CreateMaybeMessage< ::grpc::UpdateEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UpdateEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UpdateErrorEvent*
Arena::CreateMaybeMessage< ::grpc::UpdateErrorEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UpdateErrorEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UpdateManualReadyEvent*
Arena::CreateMaybeMessage< ::grpc::UpdateManualReadyEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UpdateManualReadyEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UpdateManualRestartNeededEvent*
Arena::CreateMaybeMessage< ::grpc::UpdateManualRestartNeededEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UpdateManualRestartNeededEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UpdateForceEvent*
Arena::CreateMaybeMessage< ::grpc::UpdateForceEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UpdateForceEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UpdateSilentRestartNeeded*
Arena::CreateMaybeMessage< ::grpc::UpdateSilentRestartNeeded >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UpdateSilentRestartNeeded >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UpdateIsLatestVersion*
Arena::CreateMaybeMessage< ::grpc::UpdateIsLatestVersion >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UpdateIsLatestVersion >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UpdateCheckFinished*
Arena::CreateMaybeMessage< ::grpc::UpdateCheckFinished >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UpdateCheckFinished >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UpdateVersionChanged*
Arena::CreateMaybeMessage< ::grpc::UpdateVersionChanged >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UpdateVersionChanged >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::CacheEvent*
Arena::CreateMaybeMessage< ::grpc::CacheEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::CacheEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::CacheErrorEvent*
Arena::CreateMaybeMessage< ::grpc::CacheErrorEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::CacheErrorEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::CacheLocationChangeSuccessEvent*
Arena::CreateMaybeMessage< ::grpc::CacheLocationChangeSuccessEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::CacheLocationChangeSuccessEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ChangeLocalCacheFinishedEvent*
Arena::CreateMaybeMessage< ::grpc::ChangeLocalCacheFinishedEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ChangeLocalCacheFinishedEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::IsCacheOnDiskEnabledChanged*
Arena::CreateMaybeMessage< ::grpc::IsCacheOnDiskEnabledChanged >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::IsCacheOnDiskEnabledChanged >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::DiskCachePathChanged*
Arena::CreateMaybeMessage< ::grpc::DiskCachePathChanged >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::DiskCachePathChanged >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::MailSettingsEvent*
Arena::CreateMaybeMessage< ::grpc::MailSettingsEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::MailSettingsEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::MailSettingsErrorEvent*
Arena::CreateMaybeMessage< ::grpc::MailSettingsErrorEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::MailSettingsErrorEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UseSslForSmtpFinishedEvent*
Arena::CreateMaybeMessage< ::grpc::UseSslForSmtpFinishedEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UseSslForSmtpFinishedEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ChangePortsFinishedEvent*
Arena::CreateMaybeMessage< ::grpc::ChangePortsFinishedEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ChangePortsFinishedEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::KeychainEvent*
Arena::CreateMaybeMessage< ::grpc::KeychainEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::KeychainEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ChangeKeychainFinishedEvent*
Arena::CreateMaybeMessage< ::grpc::ChangeKeychainFinishedEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ChangeKeychainFinishedEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::HasNoKeychainEvent*
Arena::CreateMaybeMessage< ::grpc::HasNoKeychainEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::HasNoKeychainEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::RebuildKeychainEvent*
Arena::CreateMaybeMessage< ::grpc::RebuildKeychainEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::RebuildKeychainEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::MailEvent*
Arena::CreateMaybeMessage< ::grpc::MailEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::MailEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::NoActiveKeyForRecipientEvent*
Arena::CreateMaybeMessage< ::grpc::NoActiveKeyForRecipientEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::NoActiveKeyForRecipientEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::AddressChangedEvent*
Arena::CreateMaybeMessage< ::grpc::AddressChangedEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::AddressChangedEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::AddressChangedLogoutEvent*
Arena::CreateMaybeMessage< ::grpc::AddressChangedLogoutEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::AddressChangedLogoutEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ApiCertIssueEvent*
Arena::CreateMaybeMessage< ::grpc::ApiCertIssueEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ApiCertIssueEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UserEvent*
Arena::CreateMaybeMessage< ::grpc::UserEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UserEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::ToggleSplitModeFinishedEvent*
Arena::CreateMaybeMessage< ::grpc::ToggleSplitModeFinishedEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::ToggleSplitModeFinishedEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UserDisconnectedEvent*
Arena::CreateMaybeMessage< ::grpc::UserDisconnectedEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UserDisconnectedEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::grpc::UserChangedEvent*
Arena::CreateMaybeMessage< ::grpc::UserChangedEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::grpc::UserChangedEvent >(arena);
}
PROTOBUF_NAMESPACE_CLOSE

// @@protoc_insertion_point(global_scope)
#include <google/protobuf/port_undef.inc>
