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

#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
#include "notification_database_data.pb.h"

#include <algorithm>

#include <google/protobuf/stubs/common.h>
#include <google/protobuf/stubs/port.h>
#include <google/protobuf/stubs/once.h>
#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/wire_format_lite_inl.h>
#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
// @@protoc_insertion_point(includes)

namespace content {
class NotificationDatabaseDataProto_NotificationActionDefaultTypeInternal : public ::google::protobuf::internal::ExplicitlyConstructed<NotificationDatabaseDataProto_NotificationAction> {
} _NotificationDatabaseDataProto_NotificationAction_default_instance_;
class NotificationDatabaseDataProto_NotificationDataDefaultTypeInternal : public ::google::protobuf::internal::ExplicitlyConstructed<NotificationDatabaseDataProto_NotificationData> {
} _NotificationDatabaseDataProto_NotificationData_default_instance_;
class NotificationDatabaseDataProtoDefaultTypeInternal : public ::google::protobuf::internal::ExplicitlyConstructed<NotificationDatabaseDataProto> {
} _NotificationDatabaseDataProto_default_instance_;

namespace protobuf_notification_5fdatabase_5fdata_2eproto {

PROTOBUF_CONSTEXPR_VAR ::google::protobuf::internal::ParseTableField
    const TableStruct::entries[] = {
  {0, 0, 0, ::google::protobuf::internal::kInvalidMask, 0, 0},
};

PROTOBUF_CONSTEXPR_VAR ::google::protobuf::internal::AuxillaryParseTableField
    const TableStruct::aux[] = {
  ::google::protobuf::internal::AuxillaryParseTableField(),
};
PROTOBUF_CONSTEXPR_VAR ::google::protobuf::internal::ParseTable const
    TableStruct::schema[] = {
  { NULL, NULL, 0, -1, -1, false },
  { NULL, NULL, 0, -1, -1, false },
  { NULL, NULL, 0, -1, -1, false },
};


void TableStruct::Shutdown() {
  _NotificationDatabaseDataProto_NotificationAction_default_instance_.Shutdown();
  _NotificationDatabaseDataProto_NotificationData_default_instance_.Shutdown();
  _NotificationDatabaseDataProto_default_instance_.Shutdown();
}

void TableStruct::InitDefaultsImpl() {
  GOOGLE_PROTOBUF_VERIFY_VERSION;

  ::google::protobuf::internal::InitProtobufDefaults();
  _NotificationDatabaseDataProto_NotificationAction_default_instance_.DefaultConstruct();
  _NotificationDatabaseDataProto_NotificationData_default_instance_.DefaultConstruct();
  _NotificationDatabaseDataProto_default_instance_.DefaultConstruct();
  _NotificationDatabaseDataProto_default_instance_.get_mutable()->notification_data_ = const_cast< ::content::NotificationDatabaseDataProto_NotificationData*>(
      ::content::NotificationDatabaseDataProto_NotificationData::internal_default_instance());
}

void InitDefaults() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &TableStruct::InitDefaultsImpl);
}
void AddDescriptorsImpl() {
  InitDefaults();
  ::google::protobuf::internal::OnShutdown(&TableStruct::Shutdown);
}

void AddDescriptors() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &AddDescriptorsImpl);
}

}  // namespace protobuf_notification_5fdatabase_5fdata_2eproto

bool NotificationDatabaseDataProto_NotificationAction_Type_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
      return true;
    default:
      return false;
  }
}

#if !defined(_MSC_VER) || _MSC_VER >= 1900
const NotificationDatabaseDataProto_NotificationAction_Type NotificationDatabaseDataProto_NotificationAction::BUTTON;
const NotificationDatabaseDataProto_NotificationAction_Type NotificationDatabaseDataProto_NotificationAction::TEXT;
const NotificationDatabaseDataProto_NotificationAction_Type NotificationDatabaseDataProto_NotificationAction::Type_MIN;
const NotificationDatabaseDataProto_NotificationAction_Type NotificationDatabaseDataProto_NotificationAction::Type_MAX;
const int NotificationDatabaseDataProto_NotificationAction::Type_ARRAYSIZE;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
bool NotificationDatabaseDataProto_NotificationData_Direction_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
      return true;
    default:
      return false;
  }
}

#if !defined(_MSC_VER) || _MSC_VER >= 1900
const NotificationDatabaseDataProto_NotificationData_Direction NotificationDatabaseDataProto_NotificationData::LEFT_TO_RIGHT;
const NotificationDatabaseDataProto_NotificationData_Direction NotificationDatabaseDataProto_NotificationData::RIGHT_TO_LEFT;
const NotificationDatabaseDataProto_NotificationData_Direction NotificationDatabaseDataProto_NotificationData::AUTO;
const NotificationDatabaseDataProto_NotificationData_Direction NotificationDatabaseDataProto_NotificationData::Direction_MIN;
const NotificationDatabaseDataProto_NotificationData_Direction NotificationDatabaseDataProto_NotificationData::Direction_MAX;
const int NotificationDatabaseDataProto_NotificationData::Direction_ARRAYSIZE;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
bool NotificationDatabaseDataProto_ClosedReason_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
      return true;
    default:
      return false;
  }
}

#if !defined(_MSC_VER) || _MSC_VER >= 1900
const NotificationDatabaseDataProto_ClosedReason NotificationDatabaseDataProto::USER;
const NotificationDatabaseDataProto_ClosedReason NotificationDatabaseDataProto::DEVELOPER;
const NotificationDatabaseDataProto_ClosedReason NotificationDatabaseDataProto::UNKNOWN;
const NotificationDatabaseDataProto_ClosedReason NotificationDatabaseDataProto::ClosedReason_MIN;
const NotificationDatabaseDataProto_ClosedReason NotificationDatabaseDataProto::ClosedReason_MAX;
const int NotificationDatabaseDataProto::ClosedReason_ARRAYSIZE;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900

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

#if !defined(_MSC_VER) || _MSC_VER >= 1900
const int NotificationDatabaseDataProto_NotificationAction::kActionFieldNumber;
const int NotificationDatabaseDataProto_NotificationAction::kTitleFieldNumber;
const int NotificationDatabaseDataProto_NotificationAction::kIconFieldNumber;
const int NotificationDatabaseDataProto_NotificationAction::kTypeFieldNumber;
const int NotificationDatabaseDataProto_NotificationAction::kPlaceholderFieldNumber;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900

NotificationDatabaseDataProto_NotificationAction::NotificationDatabaseDataProto_NotificationAction()
  : ::google::protobuf::MessageLite(), _internal_metadata_(NULL) {
  if (GOOGLE_PREDICT_TRUE(this != internal_default_instance())) {
    protobuf_notification_5fdatabase_5fdata_2eproto::InitDefaults();
  }
  SharedCtor();
  // @@protoc_insertion_point(constructor:content.NotificationDatabaseDataProto.NotificationAction)
}
NotificationDatabaseDataProto_NotificationAction::NotificationDatabaseDataProto_NotificationAction(const NotificationDatabaseDataProto_NotificationAction& from)
  : ::google::protobuf::MessageLite(),
      _internal_metadata_(NULL),
      _has_bits_(from._has_bits_),
      _cached_size_(0) {
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  action_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (from.has_action()) {
    action_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.action_);
  }
  title_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (from.has_title()) {
    title_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.title_);
  }
  icon_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (from.has_icon()) {
    icon_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.icon_);
  }
  placeholder_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (from.has_placeholder()) {
    placeholder_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.placeholder_);
  }
  type_ = from.type_;
  // @@protoc_insertion_point(copy_constructor:content.NotificationDatabaseDataProto.NotificationAction)
}

void NotificationDatabaseDataProto_NotificationAction::SharedCtor() {
  _cached_size_ = 0;
  action_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  title_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  icon_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  placeholder_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  type_ = 0;
}

NotificationDatabaseDataProto_NotificationAction::~NotificationDatabaseDataProto_NotificationAction() {
  // @@protoc_insertion_point(destructor:content.NotificationDatabaseDataProto.NotificationAction)
  SharedDtor();
}

void NotificationDatabaseDataProto_NotificationAction::SharedDtor() {
  action_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  title_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  icon_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  placeholder_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}

void NotificationDatabaseDataProto_NotificationAction::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const NotificationDatabaseDataProto_NotificationAction& NotificationDatabaseDataProto_NotificationAction::default_instance() {
  protobuf_notification_5fdatabase_5fdata_2eproto::InitDefaults();
  return *internal_default_instance();
}

NotificationDatabaseDataProto_NotificationAction* NotificationDatabaseDataProto_NotificationAction::New(::google::protobuf::Arena* arena) const {
  NotificationDatabaseDataProto_NotificationAction* n = new NotificationDatabaseDataProto_NotificationAction;
  if (arena != NULL) {
    arena->Own(n);
  }
  return n;
}

void NotificationDatabaseDataProto_NotificationAction::Clear() {
// @@protoc_insertion_point(message_clear_start:content.NotificationDatabaseDataProto.NotificationAction)
  if (_has_bits_[0 / 32] & 15u) {
    if (has_action()) {
      GOOGLE_DCHECK(!action_.IsDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()));
      (*action_.UnsafeRawStringPointer())->clear();
    }
    if (has_title()) {
      GOOGLE_DCHECK(!title_.IsDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()));
      (*title_.UnsafeRawStringPointer())->clear();
    }
    if (has_icon()) {
      GOOGLE_DCHECK(!icon_.IsDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()));
      (*icon_.UnsafeRawStringPointer())->clear();
    }
    if (has_placeholder()) {
      GOOGLE_DCHECK(!placeholder_.IsDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()));
      (*placeholder_.UnsafeRawStringPointer())->clear();
    }
  }
  type_ = 0;
  _has_bits_.Clear();
  _internal_metadata_.Clear();
}

bool NotificationDatabaseDataProto_NotificationAction::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
  ::google::protobuf::uint32 tag;
  ::google::protobuf::io::LazyStringOutputStream unknown_fields_string(
      ::google::protobuf::NewPermanentCallback(&_internal_metadata_,
          &::google::protobuf::internal::InternalMetadataWithArenaLite::
              mutable_unknown_fields));
  ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
      &unknown_fields_string, false);
  // @@protoc_insertion_point(parse_start:content.NotificationDatabaseDataProto.NotificationAction)
  for (;;) {
    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
    tag = p.first;
    if (!p.second) goto handle_unusual;
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // optional string action = 1;
      case 1: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(10u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_action()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional string title = 2;
      case 2: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(18u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_title()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional string icon = 3;
      case 3: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(26u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_icon()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional .content.NotificationDatabaseDataProto.NotificationAction.Type type = 4;
      case 4: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(32u)) {
          int value;
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
                 input, &value)));
          if (::content::NotificationDatabaseDataProto_NotificationAction_Type_IsValid(value)) {
            set_type(static_cast< ::content::NotificationDatabaseDataProto_NotificationAction_Type >(value));
          } else {
            unknown_fields_stream.WriteVarint32(32u);
            unknown_fields_stream.WriteVarint32(
                static_cast< ::google::protobuf::uint32>(value));
          }
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional string placeholder = 5;
      case 5: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(42u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_placeholder()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      default: {
      handle_unusual:
        if (tag == 0 ||
            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
          goto success;
        }
        DO_(::google::protobuf::internal::WireFormatLite::SkipField(
            input, tag, &unknown_fields_stream));
        break;
      }
    }
  }
success:
  // @@protoc_insertion_point(parse_success:content.NotificationDatabaseDataProto.NotificationAction)
  return true;
failure:
  // @@protoc_insertion_point(parse_failure:content.NotificationDatabaseDataProto.NotificationAction)
  return false;
#undef DO_
}

void NotificationDatabaseDataProto_NotificationAction::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // @@protoc_insertion_point(serialize_start:content.NotificationDatabaseDataProto.NotificationAction)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _has_bits_[0];
  // optional string action = 1;
  if (cached_has_bits & 0x00000001u) {
    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
      1, this->action(), output);
  }

  // optional string title = 2;
  if (cached_has_bits & 0x00000002u) {
    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
      2, this->title(), output);
  }

  // optional string icon = 3;
  if (cached_has_bits & 0x00000004u) {
    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
      3, this->icon(), output);
  }

  // optional .content.NotificationDatabaseDataProto.NotificationAction.Type type = 4;
  if (cached_has_bits & 0x00000010u) {
    ::google::protobuf::internal::WireFormatLite::WriteEnum(
      4, this->type(), output);
  }

  // optional string placeholder = 5;
  if (cached_has_bits & 0x00000008u) {
    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
      5, this->placeholder(), output);
  }

  output->WriteRaw(unknown_fields().data(),
                   static_cast<int>(unknown_fields().size()));
  // @@protoc_insertion_point(serialize_end:content.NotificationDatabaseDataProto.NotificationAction)
}

size_t NotificationDatabaseDataProto_NotificationAction::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:content.NotificationDatabaseDataProto.NotificationAction)
  size_t total_size = 0;

  total_size += unknown_fields().size();

  if (_has_bits_[0 / 32] & 31u) {
    // optional string action = 1;
    if (has_action()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->action());
    }

    // optional string title = 2;
    if (has_title()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->title());
    }

    // optional string icon = 3;
    if (has_icon()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->icon());
    }

    // optional string placeholder = 5;
    if (has_placeholder()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->placeholder());
    }

    // optional .content.NotificationDatabaseDataProto.NotificationAction.Type type = 4;
    if (has_type()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::EnumSize(this->type());
    }

  }
  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = cached_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void NotificationDatabaseDataProto_NotificationAction::CheckTypeAndMergeFrom(
    const ::google::protobuf::MessageLite& from) {
  MergeFrom(*::google::protobuf::down_cast<const NotificationDatabaseDataProto_NotificationAction*>(&from));
}

void NotificationDatabaseDataProto_NotificationAction::MergeFrom(const NotificationDatabaseDataProto_NotificationAction& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:content.NotificationDatabaseDataProto.NotificationAction)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._has_bits_[0];
  if (cached_has_bits & 31u) {
    if (cached_has_bits & 0x00000001u) {
      set_has_action();
      action_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.action_);
    }
    if (cached_has_bits & 0x00000002u) {
      set_has_title();
      title_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.title_);
    }
    if (cached_has_bits & 0x00000004u) {
      set_has_icon();
      icon_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.icon_);
    }
    if (cached_has_bits & 0x00000008u) {
      set_has_placeholder();
      placeholder_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.placeholder_);
    }
    if (cached_has_bits & 0x00000010u) {
      type_ = from.type_;
    }
    _has_bits_[0] |= cached_has_bits;
  }
}

void NotificationDatabaseDataProto_NotificationAction::CopyFrom(const NotificationDatabaseDataProto_NotificationAction& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:content.NotificationDatabaseDataProto.NotificationAction)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void NotificationDatabaseDataProto_NotificationAction::Swap(NotificationDatabaseDataProto_NotificationAction* other) {
  if (other == this) return;
  InternalSwap(other);
}
void NotificationDatabaseDataProto_NotificationAction::InternalSwap(NotificationDatabaseDataProto_NotificationAction* other) {
  action_.Swap(&other->action_);
  title_.Swap(&other->title_);
  icon_.Swap(&other->icon_);
  placeholder_.Swap(&other->placeholder_);
  std::swap(type_, other->type_);
  std::swap(_has_bits_[0], other->_has_bits_[0]);
  _internal_metadata_.Swap(&other->_internal_metadata_);
  std::swap(_cached_size_, other->_cached_size_);
}

::std::string NotificationDatabaseDataProto_NotificationAction::GetTypeName() const {
  return "content.NotificationDatabaseDataProto.NotificationAction";
}

#if PROTOBUF_INLINE_NOT_IN_HEADERS
// NotificationDatabaseDataProto_NotificationAction

// optional string action = 1;
bool NotificationDatabaseDataProto_NotificationAction::has_action() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
void NotificationDatabaseDataProto_NotificationAction::set_has_action() {
  _has_bits_[0] |= 0x00000001u;
}
void NotificationDatabaseDataProto_NotificationAction::clear_has_action() {
  _has_bits_[0] &= ~0x00000001u;
}
void NotificationDatabaseDataProto_NotificationAction::clear_action() {
  action_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_action();
}
const ::std::string& NotificationDatabaseDataProto_NotificationAction::action() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationAction.action)
  return action_.GetNoArena();
}
void NotificationDatabaseDataProto_NotificationAction::set_action(const ::std::string& value) {
  set_has_action();
  action_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationAction.action)
}
#if LANG_CXX11
void NotificationDatabaseDataProto_NotificationAction::set_action(::std::string&& value) {
  set_has_action();
  action_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:content.NotificationDatabaseDataProto.NotificationAction.action)
}
#endif
void NotificationDatabaseDataProto_NotificationAction::set_action(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_action();
  action_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:content.NotificationDatabaseDataProto.NotificationAction.action)
}
void NotificationDatabaseDataProto_NotificationAction::set_action(const char* value, size_t size) {
  set_has_action();
  action_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:content.NotificationDatabaseDataProto.NotificationAction.action)
}
::std::string* NotificationDatabaseDataProto_NotificationAction::mutable_action() {
  set_has_action();
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.NotificationAction.action)
  return action_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
::std::string* NotificationDatabaseDataProto_NotificationAction::release_action() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.NotificationAction.action)
  clear_has_action();
  return action_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
void NotificationDatabaseDataProto_NotificationAction::set_allocated_action(::std::string* action) {
  if (action != NULL) {
    set_has_action();
  } else {
    clear_has_action();
  }
  action_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), action);
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.NotificationAction.action)
}

// optional string title = 2;
bool NotificationDatabaseDataProto_NotificationAction::has_title() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
void NotificationDatabaseDataProto_NotificationAction::set_has_title() {
  _has_bits_[0] |= 0x00000002u;
}
void NotificationDatabaseDataProto_NotificationAction::clear_has_title() {
  _has_bits_[0] &= ~0x00000002u;
}
void NotificationDatabaseDataProto_NotificationAction::clear_title() {
  title_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_title();
}
const ::std::string& NotificationDatabaseDataProto_NotificationAction::title() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationAction.title)
  return title_.GetNoArena();
}
void NotificationDatabaseDataProto_NotificationAction::set_title(const ::std::string& value) {
  set_has_title();
  title_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationAction.title)
}
#if LANG_CXX11
void NotificationDatabaseDataProto_NotificationAction::set_title(::std::string&& value) {
  set_has_title();
  title_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:content.NotificationDatabaseDataProto.NotificationAction.title)
}
#endif
void NotificationDatabaseDataProto_NotificationAction::set_title(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_title();
  title_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:content.NotificationDatabaseDataProto.NotificationAction.title)
}
void NotificationDatabaseDataProto_NotificationAction::set_title(const char* value, size_t size) {
  set_has_title();
  title_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:content.NotificationDatabaseDataProto.NotificationAction.title)
}
::std::string* NotificationDatabaseDataProto_NotificationAction::mutable_title() {
  set_has_title();
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.NotificationAction.title)
  return title_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
::std::string* NotificationDatabaseDataProto_NotificationAction::release_title() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.NotificationAction.title)
  clear_has_title();
  return title_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
void NotificationDatabaseDataProto_NotificationAction::set_allocated_title(::std::string* title) {
  if (title != NULL) {
    set_has_title();
  } else {
    clear_has_title();
  }
  title_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), title);
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.NotificationAction.title)
}

// optional string icon = 3;
bool NotificationDatabaseDataProto_NotificationAction::has_icon() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
void NotificationDatabaseDataProto_NotificationAction::set_has_icon() {
  _has_bits_[0] |= 0x00000004u;
}
void NotificationDatabaseDataProto_NotificationAction::clear_has_icon() {
  _has_bits_[0] &= ~0x00000004u;
}
void NotificationDatabaseDataProto_NotificationAction::clear_icon() {
  icon_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_icon();
}
const ::std::string& NotificationDatabaseDataProto_NotificationAction::icon() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationAction.icon)
  return icon_.GetNoArena();
}
void NotificationDatabaseDataProto_NotificationAction::set_icon(const ::std::string& value) {
  set_has_icon();
  icon_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationAction.icon)
}
#if LANG_CXX11
void NotificationDatabaseDataProto_NotificationAction::set_icon(::std::string&& value) {
  set_has_icon();
  icon_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:content.NotificationDatabaseDataProto.NotificationAction.icon)
}
#endif
void NotificationDatabaseDataProto_NotificationAction::set_icon(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_icon();
  icon_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:content.NotificationDatabaseDataProto.NotificationAction.icon)
}
void NotificationDatabaseDataProto_NotificationAction::set_icon(const char* value, size_t size) {
  set_has_icon();
  icon_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:content.NotificationDatabaseDataProto.NotificationAction.icon)
}
::std::string* NotificationDatabaseDataProto_NotificationAction::mutable_icon() {
  set_has_icon();
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.NotificationAction.icon)
  return icon_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
::std::string* NotificationDatabaseDataProto_NotificationAction::release_icon() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.NotificationAction.icon)
  clear_has_icon();
  return icon_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
void NotificationDatabaseDataProto_NotificationAction::set_allocated_icon(::std::string* icon) {
  if (icon != NULL) {
    set_has_icon();
  } else {
    clear_has_icon();
  }
  icon_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), icon);
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.NotificationAction.icon)
}

// optional .content.NotificationDatabaseDataProto.NotificationAction.Type type = 4;
bool NotificationDatabaseDataProto_NotificationAction::has_type() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
void NotificationDatabaseDataProto_NotificationAction::set_has_type() {
  _has_bits_[0] |= 0x00000010u;
}
void NotificationDatabaseDataProto_NotificationAction::clear_has_type() {
  _has_bits_[0] &= ~0x00000010u;
}
void NotificationDatabaseDataProto_NotificationAction::clear_type() {
  type_ = 0;
  clear_has_type();
}
::content::NotificationDatabaseDataProto_NotificationAction_Type NotificationDatabaseDataProto_NotificationAction::type() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationAction.type)
  return static_cast< ::content::NotificationDatabaseDataProto_NotificationAction_Type >(type_);
}
void NotificationDatabaseDataProto_NotificationAction::set_type(::content::NotificationDatabaseDataProto_NotificationAction_Type value) {
  assert(::content::NotificationDatabaseDataProto_NotificationAction_Type_IsValid(value));
  set_has_type();
  type_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationAction.type)
}

// optional string placeholder = 5;
bool NotificationDatabaseDataProto_NotificationAction::has_placeholder() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
void NotificationDatabaseDataProto_NotificationAction::set_has_placeholder() {
  _has_bits_[0] |= 0x00000008u;
}
void NotificationDatabaseDataProto_NotificationAction::clear_has_placeholder() {
  _has_bits_[0] &= ~0x00000008u;
}
void NotificationDatabaseDataProto_NotificationAction::clear_placeholder() {
  placeholder_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_placeholder();
}
const ::std::string& NotificationDatabaseDataProto_NotificationAction::placeholder() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationAction.placeholder)
  return placeholder_.GetNoArena();
}
void NotificationDatabaseDataProto_NotificationAction::set_placeholder(const ::std::string& value) {
  set_has_placeholder();
  placeholder_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationAction.placeholder)
}
#if LANG_CXX11
void NotificationDatabaseDataProto_NotificationAction::set_placeholder(::std::string&& value) {
  set_has_placeholder();
  placeholder_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:content.NotificationDatabaseDataProto.NotificationAction.placeholder)
}
#endif
void NotificationDatabaseDataProto_NotificationAction::set_placeholder(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_placeholder();
  placeholder_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:content.NotificationDatabaseDataProto.NotificationAction.placeholder)
}
void NotificationDatabaseDataProto_NotificationAction::set_placeholder(const char* value, size_t size) {
  set_has_placeholder();
  placeholder_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:content.NotificationDatabaseDataProto.NotificationAction.placeholder)
}
::std::string* NotificationDatabaseDataProto_NotificationAction::mutable_placeholder() {
  set_has_placeholder();
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.NotificationAction.placeholder)
  return placeholder_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
::std::string* NotificationDatabaseDataProto_NotificationAction::release_placeholder() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.NotificationAction.placeholder)
  clear_has_placeholder();
  return placeholder_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
void NotificationDatabaseDataProto_NotificationAction::set_allocated_placeholder(::std::string* placeholder) {
  if (placeholder != NULL) {
    set_has_placeholder();
  } else {
    clear_has_placeholder();
  }
  placeholder_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), placeholder);
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.NotificationAction.placeholder)
}

#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS

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

#if !defined(_MSC_VER) || _MSC_VER >= 1900
const int NotificationDatabaseDataProto_NotificationData::kTitleFieldNumber;
const int NotificationDatabaseDataProto_NotificationData::kDirectionFieldNumber;
const int NotificationDatabaseDataProto_NotificationData::kLangFieldNumber;
const int NotificationDatabaseDataProto_NotificationData::kBodyFieldNumber;
const int NotificationDatabaseDataProto_NotificationData::kTagFieldNumber;
const int NotificationDatabaseDataProto_NotificationData::kImageFieldNumber;
const int NotificationDatabaseDataProto_NotificationData::kIconFieldNumber;
const int NotificationDatabaseDataProto_NotificationData::kBadgeFieldNumber;
const int NotificationDatabaseDataProto_NotificationData::kVibrationPatternFieldNumber;
const int NotificationDatabaseDataProto_NotificationData::kTimestampFieldNumber;
const int NotificationDatabaseDataProto_NotificationData::kRenotifyFieldNumber;
const int NotificationDatabaseDataProto_NotificationData::kSilentFieldNumber;
const int NotificationDatabaseDataProto_NotificationData::kRequireInteractionFieldNumber;
const int NotificationDatabaseDataProto_NotificationData::kDataFieldNumber;
const int NotificationDatabaseDataProto_NotificationData::kActionsFieldNumber;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900

NotificationDatabaseDataProto_NotificationData::NotificationDatabaseDataProto_NotificationData()
  : ::google::protobuf::MessageLite(), _internal_metadata_(NULL) {
  if (GOOGLE_PREDICT_TRUE(this != internal_default_instance())) {
    protobuf_notification_5fdatabase_5fdata_2eproto::InitDefaults();
  }
  SharedCtor();
  // @@protoc_insertion_point(constructor:content.NotificationDatabaseDataProto.NotificationData)
}
NotificationDatabaseDataProto_NotificationData::NotificationDatabaseDataProto_NotificationData(const NotificationDatabaseDataProto_NotificationData& from)
  : ::google::protobuf::MessageLite(),
      _internal_metadata_(NULL),
      _has_bits_(from._has_bits_),
      _cached_size_(0),
      vibration_pattern_(from.vibration_pattern_),
      actions_(from.actions_) {
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  title_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (from.has_title()) {
    title_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.title_);
  }
  lang_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (from.has_lang()) {
    lang_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.lang_);
  }
  body_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (from.has_body()) {
    body_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.body_);
  }
  tag_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (from.has_tag()) {
    tag_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.tag_);
  }
  icon_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (from.has_icon()) {
    icon_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.icon_);
  }
  data_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (from.has_data()) {
    data_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.data_);
  }
  badge_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (from.has_badge()) {
    badge_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.badge_);
  }
  image_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (from.has_image()) {
    image_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.image_);
  }
  ::memcpy(&direction_, &from.direction_,
    static_cast<size_t>(reinterpret_cast<char*>(&timestamp_) -
    reinterpret_cast<char*>(&direction_)) + sizeof(timestamp_));
  // @@protoc_insertion_point(copy_constructor:content.NotificationDatabaseDataProto.NotificationData)
}

void NotificationDatabaseDataProto_NotificationData::SharedCtor() {
  _cached_size_ = 0;
  title_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  lang_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  body_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  tag_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  icon_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  data_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  badge_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  image_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  ::memset(&direction_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&timestamp_) -
      reinterpret_cast<char*>(&direction_)) + sizeof(timestamp_));
}

NotificationDatabaseDataProto_NotificationData::~NotificationDatabaseDataProto_NotificationData() {
  // @@protoc_insertion_point(destructor:content.NotificationDatabaseDataProto.NotificationData)
  SharedDtor();
}

void NotificationDatabaseDataProto_NotificationData::SharedDtor() {
  title_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  lang_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  body_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  tag_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  icon_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  data_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  badge_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  image_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}

void NotificationDatabaseDataProto_NotificationData::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const NotificationDatabaseDataProto_NotificationData& NotificationDatabaseDataProto_NotificationData::default_instance() {
  protobuf_notification_5fdatabase_5fdata_2eproto::InitDefaults();
  return *internal_default_instance();
}

NotificationDatabaseDataProto_NotificationData* NotificationDatabaseDataProto_NotificationData::New(::google::protobuf::Arena* arena) const {
  NotificationDatabaseDataProto_NotificationData* n = new NotificationDatabaseDataProto_NotificationData;
  if (arena != NULL) {
    arena->Own(n);
  }
  return n;
}

void NotificationDatabaseDataProto_NotificationData::Clear() {
// @@protoc_insertion_point(message_clear_start:content.NotificationDatabaseDataProto.NotificationData)
  vibration_pattern_.Clear();
  actions_.Clear();
  if (_has_bits_[0 / 32] & 255u) {
    if (has_title()) {
      GOOGLE_DCHECK(!title_.IsDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()));
      (*title_.UnsafeRawStringPointer())->clear();
    }
    if (has_lang()) {
      GOOGLE_DCHECK(!lang_.IsDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()));
      (*lang_.UnsafeRawStringPointer())->clear();
    }
    if (has_body()) {
      GOOGLE_DCHECK(!body_.IsDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()));
      (*body_.UnsafeRawStringPointer())->clear();
    }
    if (has_tag()) {
      GOOGLE_DCHECK(!tag_.IsDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()));
      (*tag_.UnsafeRawStringPointer())->clear();
    }
    if (has_icon()) {
      GOOGLE_DCHECK(!icon_.IsDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()));
      (*icon_.UnsafeRawStringPointer())->clear();
    }
    if (has_data()) {
      GOOGLE_DCHECK(!data_.IsDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()));
      (*data_.UnsafeRawStringPointer())->clear();
    }
    if (has_badge()) {
      GOOGLE_DCHECK(!badge_.IsDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()));
      (*badge_.UnsafeRawStringPointer())->clear();
    }
    if (has_image()) {
      GOOGLE_DCHECK(!image_.IsDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()));
      (*image_.UnsafeRawStringPointer())->clear();
    }
  }
  if (_has_bits_[8 / 32] & 7936u) {
    ::memset(&direction_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&timestamp_) -
        reinterpret_cast<char*>(&direction_)) + sizeof(timestamp_));
  }
  _has_bits_.Clear();
  _internal_metadata_.Clear();
}

bool NotificationDatabaseDataProto_NotificationData::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
  ::google::protobuf::uint32 tag;
  ::google::protobuf::io::LazyStringOutputStream unknown_fields_string(
      ::google::protobuf::NewPermanentCallback(&_internal_metadata_,
          &::google::protobuf::internal::InternalMetadataWithArenaLite::
              mutable_unknown_fields));
  ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
      &unknown_fields_string, false);
  // @@protoc_insertion_point(parse_start:content.NotificationDatabaseDataProto.NotificationData)
  for (;;) {
    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
    tag = p.first;
    if (!p.second) goto handle_unusual;
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // optional string title = 1;
      case 1: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(10u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_title()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional .content.NotificationDatabaseDataProto.NotificationData.Direction direction = 2;
      case 2: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(16u)) {
          int value;
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
                 input, &value)));
          if (::content::NotificationDatabaseDataProto_NotificationData_Direction_IsValid(value)) {
            set_direction(static_cast< ::content::NotificationDatabaseDataProto_NotificationData_Direction >(value));
          } else {
            unknown_fields_stream.WriteVarint32(16u);
            unknown_fields_stream.WriteVarint32(
                static_cast< ::google::protobuf::uint32>(value));
          }
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional string lang = 3;
      case 3: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(26u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_lang()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional string body = 4;
      case 4: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(34u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_body()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional string tag = 5;
      case 5: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(42u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_tag()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional string icon = 6;
      case 6: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(50u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_icon()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional bool silent = 7;
      case 7: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(56u)) {
          set_has_silent();
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                 input, &silent_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional bytes data = 8;
      case 8: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(66u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
                input, this->mutable_data()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // repeated int32 vibration_pattern = 9 [packed = true];
      case 9: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(74u)) {
          DO_((::google::protobuf::internal::WireFormatLite::ReadPackedPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, this->mutable_vibration_pattern())));
        } else if (static_cast< ::google::protobuf::uint8>(tag) ==
                   static_cast< ::google::protobuf::uint8>(72u)) {
          DO_((::google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitiveNoInline<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 1, 74u, input, this->mutable_vibration_pattern())));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // repeated .content.NotificationDatabaseDataProto.NotificationAction actions = 10;
      case 10: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(82u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, add_actions()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional bool require_interaction = 11;
      case 11: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(88u)) {
          set_has_require_interaction();
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                 input, &require_interaction_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional int64 timestamp = 12;
      case 12: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(96u)) {
          set_has_timestamp();
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                 input, &timestamp_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional bool renotify = 13;
      case 13: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(104u)) {
          set_has_renotify();
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                 input, &renotify_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional string badge = 14;
      case 14: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(114u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_badge()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional string image = 15;
      case 15: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(122u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_image()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      default: {
      handle_unusual:
        if (tag == 0 ||
            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
          goto success;
        }
        DO_(::google::protobuf::internal::WireFormatLite::SkipField(
            input, tag, &unknown_fields_stream));
        break;
      }
    }
  }
success:
  // @@protoc_insertion_point(parse_success:content.NotificationDatabaseDataProto.NotificationData)
  return true;
failure:
  // @@protoc_insertion_point(parse_failure:content.NotificationDatabaseDataProto.NotificationData)
  return false;
#undef DO_
}

void NotificationDatabaseDataProto_NotificationData::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // @@protoc_insertion_point(serialize_start:content.NotificationDatabaseDataProto.NotificationData)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _has_bits_[0];
  // optional string title = 1;
  if (cached_has_bits & 0x00000001u) {
    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
      1, this->title(), output);
  }

  // optional .content.NotificationDatabaseDataProto.NotificationData.Direction direction = 2;
  if (cached_has_bits & 0x00000100u) {
    ::google::protobuf::internal::WireFormatLite::WriteEnum(
      2, this->direction(), output);
  }

  // optional string lang = 3;
  if (cached_has_bits & 0x00000002u) {
    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
      3, this->lang(), output);
  }

  // optional string body = 4;
  if (cached_has_bits & 0x00000004u) {
    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
      4, this->body(), output);
  }

  // optional string tag = 5;
  if (cached_has_bits & 0x00000008u) {
    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
      5, this->tag(), output);
  }

  // optional string icon = 6;
  if (cached_has_bits & 0x00000010u) {
    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
      6, this->icon(), output);
  }

  // optional bool silent = 7;
  if (cached_has_bits & 0x00000400u) {
    ::google::protobuf::internal::WireFormatLite::WriteBool(7, this->silent(), output);
  }

  // optional bytes data = 8;
  if (cached_has_bits & 0x00000020u) {
    ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
      8, this->data(), output);
  }

  // repeated int32 vibration_pattern = 9 [packed = true];
  if (this->vibration_pattern_size() > 0) {
    ::google::protobuf::internal::WireFormatLite::WriteTag(9, ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED, output);
    output->WriteVarint32(static_cast< ::google::protobuf::uint32>(
        _vibration_pattern_cached_byte_size_));
  }
  for (int i = 0, n = this->vibration_pattern_size(); i < n; i++) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32NoTag(
      this->vibration_pattern(i), output);
  }

  // repeated .content.NotificationDatabaseDataProto.NotificationAction actions = 10;
  for (unsigned int i = 0,
      n = static_cast<unsigned int>(this->actions_size()); i < n; i++) {
    ::google::protobuf::internal::WireFormatLite::WriteMessage(
      10, this->actions(static_cast<int>(i)), output);
  }

  // optional bool require_interaction = 11;
  if (cached_has_bits & 0x00000800u) {
    ::google::protobuf::internal::WireFormatLite::WriteBool(11, this->require_interaction(), output);
  }

  // optional int64 timestamp = 12;
  if (cached_has_bits & 0x00001000u) {
    ::google::protobuf::internal::WireFormatLite::WriteInt64(12, this->timestamp(), output);
  }

  // optional bool renotify = 13;
  if (cached_has_bits & 0x00000200u) {
    ::google::protobuf::internal::WireFormatLite::WriteBool(13, this->renotify(), output);
  }

  // optional string badge = 14;
  if (cached_has_bits & 0x00000040u) {
    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
      14, this->badge(), output);
  }

  // optional string image = 15;
  if (cached_has_bits & 0x00000080u) {
    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
      15, this->image(), output);
  }

  output->WriteRaw(unknown_fields().data(),
                   static_cast<int>(unknown_fields().size()));
  // @@protoc_insertion_point(serialize_end:content.NotificationDatabaseDataProto.NotificationData)
}

size_t NotificationDatabaseDataProto_NotificationData::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:content.NotificationDatabaseDataProto.NotificationData)
  size_t total_size = 0;

  total_size += unknown_fields().size();

  // repeated int32 vibration_pattern = 9 [packed = true];
  {
    size_t data_size = ::google::protobuf::internal::WireFormatLite::
      Int32Size(this->vibration_pattern_);
    if (data_size > 0) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
            static_cast< ::google::protobuf::int32>(data_size));
    }
    int cached_size = ::google::protobuf::internal::ToCachedSize(data_size);
    GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    _vibration_pattern_cached_byte_size_ = cached_size;
    GOOGLE_SAFE_CONCURRENT_WRITES_END();
    total_size += data_size;
  }

  // repeated .content.NotificationDatabaseDataProto.NotificationAction actions = 10;
  {
    unsigned int count = static_cast<unsigned int>(this->actions_size());
    total_size += 1UL * count;
    for (unsigned int i = 0; i < count; i++) {
      total_size +=
        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
          this->actions(static_cast<int>(i)));
    }
  }

  if (_has_bits_[0 / 32] & 255u) {
    // optional string title = 1;
    if (has_title()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->title());
    }

    // optional string lang = 3;
    if (has_lang()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->lang());
    }

    // optional string body = 4;
    if (has_body()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->body());
    }

    // optional string tag = 5;
    if (has_tag()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->tag());
    }

    // optional string icon = 6;
    if (has_icon()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->icon());
    }

    // optional bytes data = 8;
    if (has_data()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::BytesSize(
          this->data());
    }

    // optional string badge = 14;
    if (has_badge()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->badge());
    }

    // optional string image = 15;
    if (has_image()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->image());
    }

  }
  if (_has_bits_[8 / 32] & 7936u) {
    // optional .content.NotificationDatabaseDataProto.NotificationData.Direction direction = 2;
    if (has_direction()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::EnumSize(this->direction());
    }

    // optional bool renotify = 13;
    if (has_renotify()) {
      total_size += 1 + 1;
    }

    // optional bool silent = 7;
    if (has_silent()) {
      total_size += 1 + 1;
    }

    // optional bool require_interaction = 11;
    if (has_require_interaction()) {
      total_size += 1 + 1;
    }

    // optional int64 timestamp = 12;
    if (has_timestamp()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int64Size(
          this->timestamp());
    }

  }
  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = cached_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void NotificationDatabaseDataProto_NotificationData::CheckTypeAndMergeFrom(
    const ::google::protobuf::MessageLite& from) {
  MergeFrom(*::google::protobuf::down_cast<const NotificationDatabaseDataProto_NotificationData*>(&from));
}

void NotificationDatabaseDataProto_NotificationData::MergeFrom(const NotificationDatabaseDataProto_NotificationData& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:content.NotificationDatabaseDataProto.NotificationData)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  vibration_pattern_.MergeFrom(from.vibration_pattern_);
  actions_.MergeFrom(from.actions_);
  cached_has_bits = from._has_bits_[0];
  if (cached_has_bits & 255u) {
    if (cached_has_bits & 0x00000001u) {
      set_has_title();
      title_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.title_);
    }
    if (cached_has_bits & 0x00000002u) {
      set_has_lang();
      lang_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.lang_);
    }
    if (cached_has_bits & 0x00000004u) {
      set_has_body();
      body_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.body_);
    }
    if (cached_has_bits & 0x00000008u) {
      set_has_tag();
      tag_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.tag_);
    }
    if (cached_has_bits & 0x00000010u) {
      set_has_icon();
      icon_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.icon_);
    }
    if (cached_has_bits & 0x00000020u) {
      set_has_data();
      data_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.data_);
    }
    if (cached_has_bits & 0x00000040u) {
      set_has_badge();
      badge_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.badge_);
    }
    if (cached_has_bits & 0x00000080u) {
      set_has_image();
      image_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.image_);
    }
  }
  if (cached_has_bits & 7936u) {
    if (cached_has_bits & 0x00000100u) {
      direction_ = from.direction_;
    }
    if (cached_has_bits & 0x00000200u) {
      renotify_ = from.renotify_;
    }
    if (cached_has_bits & 0x00000400u) {
      silent_ = from.silent_;
    }
    if (cached_has_bits & 0x00000800u) {
      require_interaction_ = from.require_interaction_;
    }
    if (cached_has_bits & 0x00001000u) {
      timestamp_ = from.timestamp_;
    }
    _has_bits_[0] |= cached_has_bits;
  }
}

void NotificationDatabaseDataProto_NotificationData::CopyFrom(const NotificationDatabaseDataProto_NotificationData& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:content.NotificationDatabaseDataProto.NotificationData)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void NotificationDatabaseDataProto_NotificationData::Swap(NotificationDatabaseDataProto_NotificationData* other) {
  if (other == this) return;
  InternalSwap(other);
}
void NotificationDatabaseDataProto_NotificationData::InternalSwap(NotificationDatabaseDataProto_NotificationData* other) {
  vibration_pattern_.InternalSwap(&other->vibration_pattern_);
  actions_.InternalSwap(&other->actions_);
  title_.Swap(&other->title_);
  lang_.Swap(&other->lang_);
  body_.Swap(&other->body_);
  tag_.Swap(&other->tag_);
  icon_.Swap(&other->icon_);
  data_.Swap(&other->data_);
  badge_.Swap(&other->badge_);
  image_.Swap(&other->image_);
  std::swap(direction_, other->direction_);
  std::swap(renotify_, other->renotify_);
  std::swap(silent_, other->silent_);
  std::swap(require_interaction_, other->require_interaction_);
  std::swap(timestamp_, other->timestamp_);
  std::swap(_has_bits_[0], other->_has_bits_[0]);
  _internal_metadata_.Swap(&other->_internal_metadata_);
  std::swap(_cached_size_, other->_cached_size_);
}

::std::string NotificationDatabaseDataProto_NotificationData::GetTypeName() const {
  return "content.NotificationDatabaseDataProto.NotificationData";
}

#if PROTOBUF_INLINE_NOT_IN_HEADERS
// NotificationDatabaseDataProto_NotificationData

// optional string title = 1;
bool NotificationDatabaseDataProto_NotificationData::has_title() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
void NotificationDatabaseDataProto_NotificationData::set_has_title() {
  _has_bits_[0] |= 0x00000001u;
}
void NotificationDatabaseDataProto_NotificationData::clear_has_title() {
  _has_bits_[0] &= ~0x00000001u;
}
void NotificationDatabaseDataProto_NotificationData::clear_title() {
  title_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_title();
}
const ::std::string& NotificationDatabaseDataProto_NotificationData::title() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.title)
  return title_.GetNoArena();
}
void NotificationDatabaseDataProto_NotificationData::set_title(const ::std::string& value) {
  set_has_title();
  title_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationData.title)
}
#if LANG_CXX11
void NotificationDatabaseDataProto_NotificationData::set_title(::std::string&& value) {
  set_has_title();
  title_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:content.NotificationDatabaseDataProto.NotificationData.title)
}
#endif
void NotificationDatabaseDataProto_NotificationData::set_title(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_title();
  title_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:content.NotificationDatabaseDataProto.NotificationData.title)
}
void NotificationDatabaseDataProto_NotificationData::set_title(const char* value, size_t size) {
  set_has_title();
  title_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:content.NotificationDatabaseDataProto.NotificationData.title)
}
::std::string* NotificationDatabaseDataProto_NotificationData::mutable_title() {
  set_has_title();
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.NotificationData.title)
  return title_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
::std::string* NotificationDatabaseDataProto_NotificationData::release_title() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.NotificationData.title)
  clear_has_title();
  return title_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
void NotificationDatabaseDataProto_NotificationData::set_allocated_title(::std::string* title) {
  if (title != NULL) {
    set_has_title();
  } else {
    clear_has_title();
  }
  title_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), title);
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.NotificationData.title)
}

// optional .content.NotificationDatabaseDataProto.NotificationData.Direction direction = 2;
bool NotificationDatabaseDataProto_NotificationData::has_direction() const {
  return (_has_bits_[0] & 0x00000100u) != 0;
}
void NotificationDatabaseDataProto_NotificationData::set_has_direction() {
  _has_bits_[0] |= 0x00000100u;
}
void NotificationDatabaseDataProto_NotificationData::clear_has_direction() {
  _has_bits_[0] &= ~0x00000100u;
}
void NotificationDatabaseDataProto_NotificationData::clear_direction() {
  direction_ = 0;
  clear_has_direction();
}
::content::NotificationDatabaseDataProto_NotificationData_Direction NotificationDatabaseDataProto_NotificationData::direction() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.direction)
  return static_cast< ::content::NotificationDatabaseDataProto_NotificationData_Direction >(direction_);
}
void NotificationDatabaseDataProto_NotificationData::set_direction(::content::NotificationDatabaseDataProto_NotificationData_Direction value) {
  assert(::content::NotificationDatabaseDataProto_NotificationData_Direction_IsValid(value));
  set_has_direction();
  direction_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationData.direction)
}

// optional string lang = 3;
bool NotificationDatabaseDataProto_NotificationData::has_lang() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
void NotificationDatabaseDataProto_NotificationData::set_has_lang() {
  _has_bits_[0] |= 0x00000002u;
}
void NotificationDatabaseDataProto_NotificationData::clear_has_lang() {
  _has_bits_[0] &= ~0x00000002u;
}
void NotificationDatabaseDataProto_NotificationData::clear_lang() {
  lang_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_lang();
}
const ::std::string& NotificationDatabaseDataProto_NotificationData::lang() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.lang)
  return lang_.GetNoArena();
}
void NotificationDatabaseDataProto_NotificationData::set_lang(const ::std::string& value) {
  set_has_lang();
  lang_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationData.lang)
}
#if LANG_CXX11
void NotificationDatabaseDataProto_NotificationData::set_lang(::std::string&& value) {
  set_has_lang();
  lang_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:content.NotificationDatabaseDataProto.NotificationData.lang)
}
#endif
void NotificationDatabaseDataProto_NotificationData::set_lang(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_lang();
  lang_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:content.NotificationDatabaseDataProto.NotificationData.lang)
}
void NotificationDatabaseDataProto_NotificationData::set_lang(const char* value, size_t size) {
  set_has_lang();
  lang_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:content.NotificationDatabaseDataProto.NotificationData.lang)
}
::std::string* NotificationDatabaseDataProto_NotificationData::mutable_lang() {
  set_has_lang();
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.NotificationData.lang)
  return lang_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
::std::string* NotificationDatabaseDataProto_NotificationData::release_lang() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.NotificationData.lang)
  clear_has_lang();
  return lang_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
void NotificationDatabaseDataProto_NotificationData::set_allocated_lang(::std::string* lang) {
  if (lang != NULL) {
    set_has_lang();
  } else {
    clear_has_lang();
  }
  lang_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), lang);
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.NotificationData.lang)
}

// optional string body = 4;
bool NotificationDatabaseDataProto_NotificationData::has_body() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
void NotificationDatabaseDataProto_NotificationData::set_has_body() {
  _has_bits_[0] |= 0x00000004u;
}
void NotificationDatabaseDataProto_NotificationData::clear_has_body() {
  _has_bits_[0] &= ~0x00000004u;
}
void NotificationDatabaseDataProto_NotificationData::clear_body() {
  body_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_body();
}
const ::std::string& NotificationDatabaseDataProto_NotificationData::body() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.body)
  return body_.GetNoArena();
}
void NotificationDatabaseDataProto_NotificationData::set_body(const ::std::string& value) {
  set_has_body();
  body_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationData.body)
}
#if LANG_CXX11
void NotificationDatabaseDataProto_NotificationData::set_body(::std::string&& value) {
  set_has_body();
  body_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:content.NotificationDatabaseDataProto.NotificationData.body)
}
#endif
void NotificationDatabaseDataProto_NotificationData::set_body(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_body();
  body_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:content.NotificationDatabaseDataProto.NotificationData.body)
}
void NotificationDatabaseDataProto_NotificationData::set_body(const char* value, size_t size) {
  set_has_body();
  body_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:content.NotificationDatabaseDataProto.NotificationData.body)
}
::std::string* NotificationDatabaseDataProto_NotificationData::mutable_body() {
  set_has_body();
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.NotificationData.body)
  return body_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
::std::string* NotificationDatabaseDataProto_NotificationData::release_body() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.NotificationData.body)
  clear_has_body();
  return body_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
void NotificationDatabaseDataProto_NotificationData::set_allocated_body(::std::string* body) {
  if (body != NULL) {
    set_has_body();
  } else {
    clear_has_body();
  }
  body_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), body);
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.NotificationData.body)
}

// optional string tag = 5;
bool NotificationDatabaseDataProto_NotificationData::has_tag() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
void NotificationDatabaseDataProto_NotificationData::set_has_tag() {
  _has_bits_[0] |= 0x00000008u;
}
void NotificationDatabaseDataProto_NotificationData::clear_has_tag() {
  _has_bits_[0] &= ~0x00000008u;
}
void NotificationDatabaseDataProto_NotificationData::clear_tag() {
  tag_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_tag();
}
const ::std::string& NotificationDatabaseDataProto_NotificationData::tag() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.tag)
  return tag_.GetNoArena();
}
void NotificationDatabaseDataProto_NotificationData::set_tag(const ::std::string& value) {
  set_has_tag();
  tag_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationData.tag)
}
#if LANG_CXX11
void NotificationDatabaseDataProto_NotificationData::set_tag(::std::string&& value) {
  set_has_tag();
  tag_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:content.NotificationDatabaseDataProto.NotificationData.tag)
}
#endif
void NotificationDatabaseDataProto_NotificationData::set_tag(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_tag();
  tag_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:content.NotificationDatabaseDataProto.NotificationData.tag)
}
void NotificationDatabaseDataProto_NotificationData::set_tag(const char* value, size_t size) {
  set_has_tag();
  tag_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:content.NotificationDatabaseDataProto.NotificationData.tag)
}
::std::string* NotificationDatabaseDataProto_NotificationData::mutable_tag() {
  set_has_tag();
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.NotificationData.tag)
  return tag_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
::std::string* NotificationDatabaseDataProto_NotificationData::release_tag() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.NotificationData.tag)
  clear_has_tag();
  return tag_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
void NotificationDatabaseDataProto_NotificationData::set_allocated_tag(::std::string* tag) {
  if (tag != NULL) {
    set_has_tag();
  } else {
    clear_has_tag();
  }
  tag_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), tag);
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.NotificationData.tag)
}

// optional string image = 15;
bool NotificationDatabaseDataProto_NotificationData::has_image() const {
  return (_has_bits_[0] & 0x00000080u) != 0;
}
void NotificationDatabaseDataProto_NotificationData::set_has_image() {
  _has_bits_[0] |= 0x00000080u;
}
void NotificationDatabaseDataProto_NotificationData::clear_has_image() {
  _has_bits_[0] &= ~0x00000080u;
}
void NotificationDatabaseDataProto_NotificationData::clear_image() {
  image_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_image();
}
const ::std::string& NotificationDatabaseDataProto_NotificationData::image() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.image)
  return image_.GetNoArena();
}
void NotificationDatabaseDataProto_NotificationData::set_image(const ::std::string& value) {
  set_has_image();
  image_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationData.image)
}
#if LANG_CXX11
void NotificationDatabaseDataProto_NotificationData::set_image(::std::string&& value) {
  set_has_image();
  image_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:content.NotificationDatabaseDataProto.NotificationData.image)
}
#endif
void NotificationDatabaseDataProto_NotificationData::set_image(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_image();
  image_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:content.NotificationDatabaseDataProto.NotificationData.image)
}
void NotificationDatabaseDataProto_NotificationData::set_image(const char* value, size_t size) {
  set_has_image();
  image_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:content.NotificationDatabaseDataProto.NotificationData.image)
}
::std::string* NotificationDatabaseDataProto_NotificationData::mutable_image() {
  set_has_image();
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.NotificationData.image)
  return image_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
::std::string* NotificationDatabaseDataProto_NotificationData::release_image() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.NotificationData.image)
  clear_has_image();
  return image_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
void NotificationDatabaseDataProto_NotificationData::set_allocated_image(::std::string* image) {
  if (image != NULL) {
    set_has_image();
  } else {
    clear_has_image();
  }
  image_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), image);
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.NotificationData.image)
}

// optional string icon = 6;
bool NotificationDatabaseDataProto_NotificationData::has_icon() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
void NotificationDatabaseDataProto_NotificationData::set_has_icon() {
  _has_bits_[0] |= 0x00000010u;
}
void NotificationDatabaseDataProto_NotificationData::clear_has_icon() {
  _has_bits_[0] &= ~0x00000010u;
}
void NotificationDatabaseDataProto_NotificationData::clear_icon() {
  icon_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_icon();
}
const ::std::string& NotificationDatabaseDataProto_NotificationData::icon() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.icon)
  return icon_.GetNoArena();
}
void NotificationDatabaseDataProto_NotificationData::set_icon(const ::std::string& value) {
  set_has_icon();
  icon_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationData.icon)
}
#if LANG_CXX11
void NotificationDatabaseDataProto_NotificationData::set_icon(::std::string&& value) {
  set_has_icon();
  icon_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:content.NotificationDatabaseDataProto.NotificationData.icon)
}
#endif
void NotificationDatabaseDataProto_NotificationData::set_icon(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_icon();
  icon_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:content.NotificationDatabaseDataProto.NotificationData.icon)
}
void NotificationDatabaseDataProto_NotificationData::set_icon(const char* value, size_t size) {
  set_has_icon();
  icon_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:content.NotificationDatabaseDataProto.NotificationData.icon)
}
::std::string* NotificationDatabaseDataProto_NotificationData::mutable_icon() {
  set_has_icon();
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.NotificationData.icon)
  return icon_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
::std::string* NotificationDatabaseDataProto_NotificationData::release_icon() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.NotificationData.icon)
  clear_has_icon();
  return icon_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
void NotificationDatabaseDataProto_NotificationData::set_allocated_icon(::std::string* icon) {
  if (icon != NULL) {
    set_has_icon();
  } else {
    clear_has_icon();
  }
  icon_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), icon);
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.NotificationData.icon)
}

// optional string badge = 14;
bool NotificationDatabaseDataProto_NotificationData::has_badge() const {
  return (_has_bits_[0] & 0x00000040u) != 0;
}
void NotificationDatabaseDataProto_NotificationData::set_has_badge() {
  _has_bits_[0] |= 0x00000040u;
}
void NotificationDatabaseDataProto_NotificationData::clear_has_badge() {
  _has_bits_[0] &= ~0x00000040u;
}
void NotificationDatabaseDataProto_NotificationData::clear_badge() {
  badge_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_badge();
}
const ::std::string& NotificationDatabaseDataProto_NotificationData::badge() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.badge)
  return badge_.GetNoArena();
}
void NotificationDatabaseDataProto_NotificationData::set_badge(const ::std::string& value) {
  set_has_badge();
  badge_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationData.badge)
}
#if LANG_CXX11
void NotificationDatabaseDataProto_NotificationData::set_badge(::std::string&& value) {
  set_has_badge();
  badge_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:content.NotificationDatabaseDataProto.NotificationData.badge)
}
#endif
void NotificationDatabaseDataProto_NotificationData::set_badge(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_badge();
  badge_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:content.NotificationDatabaseDataProto.NotificationData.badge)
}
void NotificationDatabaseDataProto_NotificationData::set_badge(const char* value, size_t size) {
  set_has_badge();
  badge_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:content.NotificationDatabaseDataProto.NotificationData.badge)
}
::std::string* NotificationDatabaseDataProto_NotificationData::mutable_badge() {
  set_has_badge();
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.NotificationData.badge)
  return badge_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
::std::string* NotificationDatabaseDataProto_NotificationData::release_badge() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.NotificationData.badge)
  clear_has_badge();
  return badge_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
void NotificationDatabaseDataProto_NotificationData::set_allocated_badge(::std::string* badge) {
  if (badge != NULL) {
    set_has_badge();
  } else {
    clear_has_badge();
  }
  badge_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), badge);
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.NotificationData.badge)
}

// repeated int32 vibration_pattern = 9 [packed = true];
int NotificationDatabaseDataProto_NotificationData::vibration_pattern_size() const {
  return vibration_pattern_.size();
}
void NotificationDatabaseDataProto_NotificationData::clear_vibration_pattern() {
  vibration_pattern_.Clear();
}
::google::protobuf::int32 NotificationDatabaseDataProto_NotificationData::vibration_pattern(int index) const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.vibration_pattern)
  return vibration_pattern_.Get(index);
}
void NotificationDatabaseDataProto_NotificationData::set_vibration_pattern(int index, ::google::protobuf::int32 value) {
  vibration_pattern_.Set(index, value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationData.vibration_pattern)
}
void NotificationDatabaseDataProto_NotificationData::add_vibration_pattern(::google::protobuf::int32 value) {
  vibration_pattern_.Add(value);
  // @@protoc_insertion_point(field_add:content.NotificationDatabaseDataProto.NotificationData.vibration_pattern)
}
const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
NotificationDatabaseDataProto_NotificationData::vibration_pattern() const {
  // @@protoc_insertion_point(field_list:content.NotificationDatabaseDataProto.NotificationData.vibration_pattern)
  return vibration_pattern_;
}
::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
NotificationDatabaseDataProto_NotificationData::mutable_vibration_pattern() {
  // @@protoc_insertion_point(field_mutable_list:content.NotificationDatabaseDataProto.NotificationData.vibration_pattern)
  return &vibration_pattern_;
}

// optional int64 timestamp = 12;
bool NotificationDatabaseDataProto_NotificationData::has_timestamp() const {
  return (_has_bits_[0] & 0x00001000u) != 0;
}
void NotificationDatabaseDataProto_NotificationData::set_has_timestamp() {
  _has_bits_[0] |= 0x00001000u;
}
void NotificationDatabaseDataProto_NotificationData::clear_has_timestamp() {
  _has_bits_[0] &= ~0x00001000u;
}
void NotificationDatabaseDataProto_NotificationData::clear_timestamp() {
  timestamp_ = GOOGLE_LONGLONG(0);
  clear_has_timestamp();
}
::google::protobuf::int64 NotificationDatabaseDataProto_NotificationData::timestamp() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.timestamp)
  return timestamp_;
}
void NotificationDatabaseDataProto_NotificationData::set_timestamp(::google::protobuf::int64 value) {
  set_has_timestamp();
  timestamp_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationData.timestamp)
}

// optional bool renotify = 13;
bool NotificationDatabaseDataProto_NotificationData::has_renotify() const {
  return (_has_bits_[0] & 0x00000200u) != 0;
}
void NotificationDatabaseDataProto_NotificationData::set_has_renotify() {
  _has_bits_[0] |= 0x00000200u;
}
void NotificationDatabaseDataProto_NotificationData::clear_has_renotify() {
  _has_bits_[0] &= ~0x00000200u;
}
void NotificationDatabaseDataProto_NotificationData::clear_renotify() {
  renotify_ = false;
  clear_has_renotify();
}
bool NotificationDatabaseDataProto_NotificationData::renotify() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.renotify)
  return renotify_;
}
void NotificationDatabaseDataProto_NotificationData::set_renotify(bool value) {
  set_has_renotify();
  renotify_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationData.renotify)
}

// optional bool silent = 7;
bool NotificationDatabaseDataProto_NotificationData::has_silent() const {
  return (_has_bits_[0] & 0x00000400u) != 0;
}
void NotificationDatabaseDataProto_NotificationData::set_has_silent() {
  _has_bits_[0] |= 0x00000400u;
}
void NotificationDatabaseDataProto_NotificationData::clear_has_silent() {
  _has_bits_[0] &= ~0x00000400u;
}
void NotificationDatabaseDataProto_NotificationData::clear_silent() {
  silent_ = false;
  clear_has_silent();
}
bool NotificationDatabaseDataProto_NotificationData::silent() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.silent)
  return silent_;
}
void NotificationDatabaseDataProto_NotificationData::set_silent(bool value) {
  set_has_silent();
  silent_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationData.silent)
}

// optional bool require_interaction = 11;
bool NotificationDatabaseDataProto_NotificationData::has_require_interaction() const {
  return (_has_bits_[0] & 0x00000800u) != 0;
}
void NotificationDatabaseDataProto_NotificationData::set_has_require_interaction() {
  _has_bits_[0] |= 0x00000800u;
}
void NotificationDatabaseDataProto_NotificationData::clear_has_require_interaction() {
  _has_bits_[0] &= ~0x00000800u;
}
void NotificationDatabaseDataProto_NotificationData::clear_require_interaction() {
  require_interaction_ = false;
  clear_has_require_interaction();
}
bool NotificationDatabaseDataProto_NotificationData::require_interaction() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.require_interaction)
  return require_interaction_;
}
void NotificationDatabaseDataProto_NotificationData::set_require_interaction(bool value) {
  set_has_require_interaction();
  require_interaction_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationData.require_interaction)
}

// optional bytes data = 8;
bool NotificationDatabaseDataProto_NotificationData::has_data() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
void NotificationDatabaseDataProto_NotificationData::set_has_data() {
  _has_bits_[0] |= 0x00000020u;
}
void NotificationDatabaseDataProto_NotificationData::clear_has_data() {
  _has_bits_[0] &= ~0x00000020u;
}
void NotificationDatabaseDataProto_NotificationData::clear_data() {
  data_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_data();
}
const ::std::string& NotificationDatabaseDataProto_NotificationData::data() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.data)
  return data_.GetNoArena();
}
void NotificationDatabaseDataProto_NotificationData::set_data(const ::std::string& value) {
  set_has_data();
  data_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.NotificationData.data)
}
#if LANG_CXX11
void NotificationDatabaseDataProto_NotificationData::set_data(::std::string&& value) {
  set_has_data();
  data_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:content.NotificationDatabaseDataProto.NotificationData.data)
}
#endif
void NotificationDatabaseDataProto_NotificationData::set_data(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_data();
  data_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:content.NotificationDatabaseDataProto.NotificationData.data)
}
void NotificationDatabaseDataProto_NotificationData::set_data(const void* value, size_t size) {
  set_has_data();
  data_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:content.NotificationDatabaseDataProto.NotificationData.data)
}
::std::string* NotificationDatabaseDataProto_NotificationData::mutable_data() {
  set_has_data();
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.NotificationData.data)
  return data_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
::std::string* NotificationDatabaseDataProto_NotificationData::release_data() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.NotificationData.data)
  clear_has_data();
  return data_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
void NotificationDatabaseDataProto_NotificationData::set_allocated_data(::std::string* data) {
  if (data != NULL) {
    set_has_data();
  } else {
    clear_has_data();
  }
  data_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), data);
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.NotificationData.data)
}

// repeated .content.NotificationDatabaseDataProto.NotificationAction actions = 10;
int NotificationDatabaseDataProto_NotificationData::actions_size() const {
  return actions_.size();
}
void NotificationDatabaseDataProto_NotificationData::clear_actions() {
  actions_.Clear();
}
const ::content::NotificationDatabaseDataProto_NotificationAction& NotificationDatabaseDataProto_NotificationData::actions(int index) const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.NotificationData.actions)
  return actions_.Get(index);
}
::content::NotificationDatabaseDataProto_NotificationAction* NotificationDatabaseDataProto_NotificationData::mutable_actions(int index) {
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.NotificationData.actions)
  return actions_.Mutable(index);
}
::content::NotificationDatabaseDataProto_NotificationAction* NotificationDatabaseDataProto_NotificationData::add_actions() {
  // @@protoc_insertion_point(field_add:content.NotificationDatabaseDataProto.NotificationData.actions)
  return actions_.Add();
}
::google::protobuf::RepeatedPtrField< ::content::NotificationDatabaseDataProto_NotificationAction >*
NotificationDatabaseDataProto_NotificationData::mutable_actions() {
  // @@protoc_insertion_point(field_mutable_list:content.NotificationDatabaseDataProto.NotificationData.actions)
  return &actions_;
}
const ::google::protobuf::RepeatedPtrField< ::content::NotificationDatabaseDataProto_NotificationAction >&
NotificationDatabaseDataProto_NotificationData::actions() const {
  // @@protoc_insertion_point(field_list:content.NotificationDatabaseDataProto.NotificationData.actions)
  return actions_;
}

#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS

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

#if !defined(_MSC_VER) || _MSC_VER >= 1900
const int NotificationDatabaseDataProto::kPersistentNotificationIdFieldNumber;
const int NotificationDatabaseDataProto::kNotificationIdFieldNumber;
const int NotificationDatabaseDataProto::kOriginFieldNumber;
const int NotificationDatabaseDataProto::kServiceWorkerRegistrationIdFieldNumber;
const int NotificationDatabaseDataProto::kReplacedExistingNotificationFieldNumber;
const int NotificationDatabaseDataProto::kNumClicksFieldNumber;
const int NotificationDatabaseDataProto::kNumActionButtonClicksFieldNumber;
const int NotificationDatabaseDataProto::kCreationTimeMillisFieldNumber;
const int NotificationDatabaseDataProto::kTimeUntilFirstClickMillisFieldNumber;
const int NotificationDatabaseDataProto::kTimeUntilLastClickMillisFieldNumber;
const int NotificationDatabaseDataProto::kTimeUntilCloseMillisFieldNumber;
const int NotificationDatabaseDataProto::kClosedReasonFieldNumber;
const int NotificationDatabaseDataProto::kNotificationDataFieldNumber;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900

NotificationDatabaseDataProto::NotificationDatabaseDataProto()
  : ::google::protobuf::MessageLite(), _internal_metadata_(NULL) {
  if (GOOGLE_PREDICT_TRUE(this != internal_default_instance())) {
    protobuf_notification_5fdatabase_5fdata_2eproto::InitDefaults();
  }
  SharedCtor();
  // @@protoc_insertion_point(constructor:content.NotificationDatabaseDataProto)
}
NotificationDatabaseDataProto::NotificationDatabaseDataProto(const NotificationDatabaseDataProto& from)
  : ::google::protobuf::MessageLite(),
      _internal_metadata_(NULL),
      _has_bits_(from._has_bits_),
      _cached_size_(0) {
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  origin_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (from.has_origin()) {
    origin_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.origin_);
  }
  notification_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (from.has_notification_id()) {
    notification_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.notification_id_);
  }
  if (from.has_notification_data()) {
    notification_data_ = new ::content::NotificationDatabaseDataProto_NotificationData(*from.notification_data_);
  } else {
    notification_data_ = NULL;
  }
  ::memcpy(&persistent_notification_id_, &from.persistent_notification_id_,
    static_cast<size_t>(reinterpret_cast<char*>(&time_until_close_millis_) -
    reinterpret_cast<char*>(&persistent_notification_id_)) + sizeof(time_until_close_millis_));
  // @@protoc_insertion_point(copy_constructor:content.NotificationDatabaseDataProto)
}

void NotificationDatabaseDataProto::SharedCtor() {
  _cached_size_ = 0;
  origin_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  notification_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  ::memset(&notification_data_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&time_until_close_millis_) -
      reinterpret_cast<char*>(&notification_data_)) + sizeof(time_until_close_millis_));
}

NotificationDatabaseDataProto::~NotificationDatabaseDataProto() {
  // @@protoc_insertion_point(destructor:content.NotificationDatabaseDataProto)
  SharedDtor();
}

void NotificationDatabaseDataProto::SharedDtor() {
  origin_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  notification_id_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  if (this != internal_default_instance()) {
    delete notification_data_;
  }
}

void NotificationDatabaseDataProto::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const NotificationDatabaseDataProto& NotificationDatabaseDataProto::default_instance() {
  protobuf_notification_5fdatabase_5fdata_2eproto::InitDefaults();
  return *internal_default_instance();
}

NotificationDatabaseDataProto* NotificationDatabaseDataProto::New(::google::protobuf::Arena* arena) const {
  NotificationDatabaseDataProto* n = new NotificationDatabaseDataProto;
  if (arena != NULL) {
    arena->Own(n);
  }
  return n;
}

void NotificationDatabaseDataProto::Clear() {
// @@protoc_insertion_point(message_clear_start:content.NotificationDatabaseDataProto)
  if (_has_bits_[0 / 32] & 7u) {
    if (has_origin()) {
      GOOGLE_DCHECK(!origin_.IsDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()));
      (*origin_.UnsafeRawStringPointer())->clear();
    }
    if (has_notification_id()) {
      GOOGLE_DCHECK(!notification_id_.IsDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()));
      (*notification_id_.UnsafeRawStringPointer())->clear();
    }
    if (has_notification_data()) {
      GOOGLE_DCHECK(notification_data_ != NULL);
      notification_data_->::content::NotificationDatabaseDataProto_NotificationData::Clear();
    }
  }
  if (_has_bits_[0 / 32] & 248u) {
    ::memset(&persistent_notification_id_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&creation_time_millis_) -
        reinterpret_cast<char*>(&persistent_notification_id_)) + sizeof(creation_time_millis_));
  }
  if (_has_bits_[8 / 32] & 7936u) {
    ::memset(&time_until_first_click_millis_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&time_until_close_millis_) -
        reinterpret_cast<char*>(&time_until_first_click_millis_)) + sizeof(time_until_close_millis_));
  }
  _has_bits_.Clear();
  _internal_metadata_.Clear();
}

bool NotificationDatabaseDataProto::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
  ::google::protobuf::uint32 tag;
  ::google::protobuf::io::LazyStringOutputStream unknown_fields_string(
      ::google::protobuf::NewPermanentCallback(&_internal_metadata_,
          &::google::protobuf::internal::InternalMetadataWithArenaLite::
              mutable_unknown_fields));
  ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
      &unknown_fields_string, false);
  // @@protoc_insertion_point(parse_start:content.NotificationDatabaseDataProto)
  for (;;) {
    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
    tag = p.first;
    if (!p.second) goto handle_unusual;
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // optional int64 persistent_notification_id = 1;
      case 1: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(8u)) {
          set_has_persistent_notification_id();
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                 input, &persistent_notification_id_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional string origin = 2;
      case 2: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(18u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_origin()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional int64 service_worker_registration_id = 3;
      case 3: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(24u)) {
          set_has_service_worker_registration_id();
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                 input, &service_worker_registration_id_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional .content.NotificationDatabaseDataProto.NotificationData notification_data = 4;
      case 4: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(34u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
               input, mutable_notification_data()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional string notification_id = 5;
      case 5: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(42u)) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_notification_id()));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional bool replaced_existing_notification = 6;
      case 6: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(48u)) {
          set_has_replaced_existing_notification();
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                 input, &replaced_existing_notification_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional int32 num_clicks = 7;
      case 7: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(56u)) {
          set_has_num_clicks();
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &num_clicks_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional int32 num_action_button_clicks = 8;
      case 8: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(64u)) {
          set_has_num_action_button_clicks();
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &num_action_button_clicks_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional int64 creation_time_millis = 9;
      case 9: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(72u)) {
          set_has_creation_time_millis();
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                 input, &creation_time_millis_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional int64 time_until_first_click_millis = 10;
      case 10: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(80u)) {
          set_has_time_until_first_click_millis();
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                 input, &time_until_first_click_millis_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional int64 time_until_last_click_millis = 11;
      case 11: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(88u)) {
          set_has_time_until_last_click_millis();
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                 input, &time_until_last_click_millis_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional int64 time_until_close_millis = 12;
      case 12: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(96u)) {
          set_has_time_until_close_millis();
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                 input, &time_until_close_millis_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // optional .content.NotificationDatabaseDataProto.ClosedReason closed_reason = 13;
      case 13: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(104u)) {
          int value;
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
                 input, &value)));
          if (::content::NotificationDatabaseDataProto_ClosedReason_IsValid(value)) {
            set_closed_reason(static_cast< ::content::NotificationDatabaseDataProto_ClosedReason >(value));
          } else {
            unknown_fields_stream.WriteVarint32(104u);
            unknown_fields_stream.WriteVarint32(
                static_cast< ::google::protobuf::uint32>(value));
          }
        } else {
          goto handle_unusual;
        }
        break;
      }

      default: {
      handle_unusual:
        if (tag == 0 ||
            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
          goto success;
        }
        DO_(::google::protobuf::internal::WireFormatLite::SkipField(
            input, tag, &unknown_fields_stream));
        break;
      }
    }
  }
success:
  // @@protoc_insertion_point(parse_success:content.NotificationDatabaseDataProto)
  return true;
failure:
  // @@protoc_insertion_point(parse_failure:content.NotificationDatabaseDataProto)
  return false;
#undef DO_
}

void NotificationDatabaseDataProto::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // @@protoc_insertion_point(serialize_start:content.NotificationDatabaseDataProto)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _has_bits_[0];
  // optional int64 persistent_notification_id = 1;
  if (cached_has_bits & 0x00000008u) {
    ::google::protobuf::internal::WireFormatLite::WriteInt64(1, this->persistent_notification_id(), output);
  }

  // optional string origin = 2;
  if (cached_has_bits & 0x00000001u) {
    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
      2, this->origin(), output);
  }

  // optional int64 service_worker_registration_id = 3;
  if (cached_has_bits & 0x00000010u) {
    ::google::protobuf::internal::WireFormatLite::WriteInt64(3, this->service_worker_registration_id(), output);
  }

  // optional .content.NotificationDatabaseDataProto.NotificationData notification_data = 4;
  if (cached_has_bits & 0x00000004u) {
    ::google::protobuf::internal::WireFormatLite::WriteMessage(
      4, *this->notification_data_, output);
  }

  // optional string notification_id = 5;
  if (cached_has_bits & 0x00000002u) {
    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
      5, this->notification_id(), output);
  }

  // optional bool replaced_existing_notification = 6;
  if (cached_has_bits & 0x00000020u) {
    ::google::protobuf::internal::WireFormatLite::WriteBool(6, this->replaced_existing_notification(), output);
  }

  // optional int32 num_clicks = 7;
  if (cached_has_bits & 0x00000040u) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(7, this->num_clicks(), output);
  }

  // optional int32 num_action_button_clicks = 8;
  if (cached_has_bits & 0x00000200u) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(8, this->num_action_button_clicks(), output);
  }

  // optional int64 creation_time_millis = 9;
  if (cached_has_bits & 0x00000080u) {
    ::google::protobuf::internal::WireFormatLite::WriteInt64(9, this->creation_time_millis(), output);
  }

  // optional int64 time_until_first_click_millis = 10;
  if (cached_has_bits & 0x00000100u) {
    ::google::protobuf::internal::WireFormatLite::WriteInt64(10, this->time_until_first_click_millis(), output);
  }

  // optional int64 time_until_last_click_millis = 11;
  if (cached_has_bits & 0x00000800u) {
    ::google::protobuf::internal::WireFormatLite::WriteInt64(11, this->time_until_last_click_millis(), output);
  }

  // optional int64 time_until_close_millis = 12;
  if (cached_has_bits & 0x00001000u) {
    ::google::protobuf::internal::WireFormatLite::WriteInt64(12, this->time_until_close_millis(), output);
  }

  // optional .content.NotificationDatabaseDataProto.ClosedReason closed_reason = 13;
  if (cached_has_bits & 0x00000400u) {
    ::google::protobuf::internal::WireFormatLite::WriteEnum(
      13, this->closed_reason(), output);
  }

  output->WriteRaw(unknown_fields().data(),
                   static_cast<int>(unknown_fields().size()));
  // @@protoc_insertion_point(serialize_end:content.NotificationDatabaseDataProto)
}

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

  total_size += unknown_fields().size();

  if (_has_bits_[0 / 32] & 255u) {
    // optional string origin = 2;
    if (has_origin()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->origin());
    }

    // optional string notification_id = 5;
    if (has_notification_id()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->notification_id());
    }

    // optional .content.NotificationDatabaseDataProto.NotificationData notification_data = 4;
    if (has_notification_data()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
          *this->notification_data_);
    }

    // optional int64 persistent_notification_id = 1;
    if (has_persistent_notification_id()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int64Size(
          this->persistent_notification_id());
    }

    // optional int64 service_worker_registration_id = 3;
    if (has_service_worker_registration_id()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int64Size(
          this->service_worker_registration_id());
    }

    // optional bool replaced_existing_notification = 6;
    if (has_replaced_existing_notification()) {
      total_size += 1 + 1;
    }

    // optional int32 num_clicks = 7;
    if (has_num_clicks()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->num_clicks());
    }

    // optional int64 creation_time_millis = 9;
    if (has_creation_time_millis()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int64Size(
          this->creation_time_millis());
    }

  }
  if (_has_bits_[8 / 32] & 7936u) {
    // optional int64 time_until_first_click_millis = 10;
    if (has_time_until_first_click_millis()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int64Size(
          this->time_until_first_click_millis());
    }

    // optional int32 num_action_button_clicks = 8;
    if (has_num_action_button_clicks()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->num_action_button_clicks());
    }

    // optional .content.NotificationDatabaseDataProto.ClosedReason closed_reason = 13;
    if (has_closed_reason()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::EnumSize(this->closed_reason());
    }

    // optional int64 time_until_last_click_millis = 11;
    if (has_time_until_last_click_millis()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int64Size(
          this->time_until_last_click_millis());
    }

    // optional int64 time_until_close_millis = 12;
    if (has_time_until_close_millis()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int64Size(
          this->time_until_close_millis());
    }

  }
  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = cached_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void NotificationDatabaseDataProto::CheckTypeAndMergeFrom(
    const ::google::protobuf::MessageLite& from) {
  MergeFrom(*::google::protobuf::down_cast<const NotificationDatabaseDataProto*>(&from));
}

void NotificationDatabaseDataProto::MergeFrom(const NotificationDatabaseDataProto& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:content.NotificationDatabaseDataProto)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._has_bits_[0];
  if (cached_has_bits & 255u) {
    if (cached_has_bits & 0x00000001u) {
      set_has_origin();
      origin_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.origin_);
    }
    if (cached_has_bits & 0x00000002u) {
      set_has_notification_id();
      notification_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.notification_id_);
    }
    if (cached_has_bits & 0x00000004u) {
      mutable_notification_data()->::content::NotificationDatabaseDataProto_NotificationData::MergeFrom(from.notification_data());
    }
    if (cached_has_bits & 0x00000008u) {
      persistent_notification_id_ = from.persistent_notification_id_;
    }
    if (cached_has_bits & 0x00000010u) {
      service_worker_registration_id_ = from.service_worker_registration_id_;
    }
    if (cached_has_bits & 0x00000020u) {
      replaced_existing_notification_ = from.replaced_existing_notification_;
    }
    if (cached_has_bits & 0x00000040u) {
      num_clicks_ = from.num_clicks_;
    }
    if (cached_has_bits & 0x00000080u) {
      creation_time_millis_ = from.creation_time_millis_;
    }
    _has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 7936u) {
    if (cached_has_bits & 0x00000100u) {
      time_until_first_click_millis_ = from.time_until_first_click_millis_;
    }
    if (cached_has_bits & 0x00000200u) {
      num_action_button_clicks_ = from.num_action_button_clicks_;
    }
    if (cached_has_bits & 0x00000400u) {
      closed_reason_ = from.closed_reason_;
    }
    if (cached_has_bits & 0x00000800u) {
      time_until_last_click_millis_ = from.time_until_last_click_millis_;
    }
    if (cached_has_bits & 0x00001000u) {
      time_until_close_millis_ = from.time_until_close_millis_;
    }
    _has_bits_[0] |= cached_has_bits;
  }
}

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

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

void NotificationDatabaseDataProto::Swap(NotificationDatabaseDataProto* other) {
  if (other == this) return;
  InternalSwap(other);
}
void NotificationDatabaseDataProto::InternalSwap(NotificationDatabaseDataProto* other) {
  origin_.Swap(&other->origin_);
  notification_id_.Swap(&other->notification_id_);
  std::swap(notification_data_, other->notification_data_);
  std::swap(persistent_notification_id_, other->persistent_notification_id_);
  std::swap(service_worker_registration_id_, other->service_worker_registration_id_);
  std::swap(replaced_existing_notification_, other->replaced_existing_notification_);
  std::swap(num_clicks_, other->num_clicks_);
  std::swap(creation_time_millis_, other->creation_time_millis_);
  std::swap(time_until_first_click_millis_, other->time_until_first_click_millis_);
  std::swap(num_action_button_clicks_, other->num_action_button_clicks_);
  std::swap(closed_reason_, other->closed_reason_);
  std::swap(time_until_last_click_millis_, other->time_until_last_click_millis_);
  std::swap(time_until_close_millis_, other->time_until_close_millis_);
  std::swap(_has_bits_[0], other->_has_bits_[0]);
  _internal_metadata_.Swap(&other->_internal_metadata_);
  std::swap(_cached_size_, other->_cached_size_);
}

::std::string NotificationDatabaseDataProto::GetTypeName() const {
  return "content.NotificationDatabaseDataProto";
}

#if PROTOBUF_INLINE_NOT_IN_HEADERS
// NotificationDatabaseDataProto

// optional int64 persistent_notification_id = 1;
bool NotificationDatabaseDataProto::has_persistent_notification_id() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
void NotificationDatabaseDataProto::set_has_persistent_notification_id() {
  _has_bits_[0] |= 0x00000008u;
}
void NotificationDatabaseDataProto::clear_has_persistent_notification_id() {
  _has_bits_[0] &= ~0x00000008u;
}
void NotificationDatabaseDataProto::clear_persistent_notification_id() {
  persistent_notification_id_ = GOOGLE_LONGLONG(0);
  clear_has_persistent_notification_id();
}
::google::protobuf::int64 NotificationDatabaseDataProto::persistent_notification_id() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.persistent_notification_id)
  return persistent_notification_id_;
}
void NotificationDatabaseDataProto::set_persistent_notification_id(::google::protobuf::int64 value) {
  set_has_persistent_notification_id();
  persistent_notification_id_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.persistent_notification_id)
}

// optional string notification_id = 5;
bool NotificationDatabaseDataProto::has_notification_id() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
void NotificationDatabaseDataProto::set_has_notification_id() {
  _has_bits_[0] |= 0x00000002u;
}
void NotificationDatabaseDataProto::clear_has_notification_id() {
  _has_bits_[0] &= ~0x00000002u;
}
void NotificationDatabaseDataProto::clear_notification_id() {
  notification_id_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_notification_id();
}
const ::std::string& NotificationDatabaseDataProto::notification_id() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.notification_id)
  return notification_id_.GetNoArena();
}
void NotificationDatabaseDataProto::set_notification_id(const ::std::string& value) {
  set_has_notification_id();
  notification_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.notification_id)
}
#if LANG_CXX11
void NotificationDatabaseDataProto::set_notification_id(::std::string&& value) {
  set_has_notification_id();
  notification_id_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:content.NotificationDatabaseDataProto.notification_id)
}
#endif
void NotificationDatabaseDataProto::set_notification_id(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_notification_id();
  notification_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:content.NotificationDatabaseDataProto.notification_id)
}
void NotificationDatabaseDataProto::set_notification_id(const char* value, size_t size) {
  set_has_notification_id();
  notification_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:content.NotificationDatabaseDataProto.notification_id)
}
::std::string* NotificationDatabaseDataProto::mutable_notification_id() {
  set_has_notification_id();
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.notification_id)
  return notification_id_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
::std::string* NotificationDatabaseDataProto::release_notification_id() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.notification_id)
  clear_has_notification_id();
  return notification_id_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
void NotificationDatabaseDataProto::set_allocated_notification_id(::std::string* notification_id) {
  if (notification_id != NULL) {
    set_has_notification_id();
  } else {
    clear_has_notification_id();
  }
  notification_id_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), notification_id);
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.notification_id)
}

// optional string origin = 2;
bool NotificationDatabaseDataProto::has_origin() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
void NotificationDatabaseDataProto::set_has_origin() {
  _has_bits_[0] |= 0x00000001u;
}
void NotificationDatabaseDataProto::clear_has_origin() {
  _has_bits_[0] &= ~0x00000001u;
}
void NotificationDatabaseDataProto::clear_origin() {
  origin_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_origin();
}
const ::std::string& NotificationDatabaseDataProto::origin() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.origin)
  return origin_.GetNoArena();
}
void NotificationDatabaseDataProto::set_origin(const ::std::string& value) {
  set_has_origin();
  origin_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.origin)
}
#if LANG_CXX11
void NotificationDatabaseDataProto::set_origin(::std::string&& value) {
  set_has_origin();
  origin_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:content.NotificationDatabaseDataProto.origin)
}
#endif
void NotificationDatabaseDataProto::set_origin(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_origin();
  origin_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:content.NotificationDatabaseDataProto.origin)
}
void NotificationDatabaseDataProto::set_origin(const char* value, size_t size) {
  set_has_origin();
  origin_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:content.NotificationDatabaseDataProto.origin)
}
::std::string* NotificationDatabaseDataProto::mutable_origin() {
  set_has_origin();
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.origin)
  return origin_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
::std::string* NotificationDatabaseDataProto::release_origin() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.origin)
  clear_has_origin();
  return origin_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
void NotificationDatabaseDataProto::set_allocated_origin(::std::string* origin) {
  if (origin != NULL) {
    set_has_origin();
  } else {
    clear_has_origin();
  }
  origin_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), origin);
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.origin)
}

// optional int64 service_worker_registration_id = 3;
bool NotificationDatabaseDataProto::has_service_worker_registration_id() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
void NotificationDatabaseDataProto::set_has_service_worker_registration_id() {
  _has_bits_[0] |= 0x00000010u;
}
void NotificationDatabaseDataProto::clear_has_service_worker_registration_id() {
  _has_bits_[0] &= ~0x00000010u;
}
void NotificationDatabaseDataProto::clear_service_worker_registration_id() {
  service_worker_registration_id_ = GOOGLE_LONGLONG(0);
  clear_has_service_worker_registration_id();
}
::google::protobuf::int64 NotificationDatabaseDataProto::service_worker_registration_id() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.service_worker_registration_id)
  return service_worker_registration_id_;
}
void NotificationDatabaseDataProto::set_service_worker_registration_id(::google::protobuf::int64 value) {
  set_has_service_worker_registration_id();
  service_worker_registration_id_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.service_worker_registration_id)
}

// optional bool replaced_existing_notification = 6;
bool NotificationDatabaseDataProto::has_replaced_existing_notification() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
void NotificationDatabaseDataProto::set_has_replaced_existing_notification() {
  _has_bits_[0] |= 0x00000020u;
}
void NotificationDatabaseDataProto::clear_has_replaced_existing_notification() {
  _has_bits_[0] &= ~0x00000020u;
}
void NotificationDatabaseDataProto::clear_replaced_existing_notification() {
  replaced_existing_notification_ = false;
  clear_has_replaced_existing_notification();
}
bool NotificationDatabaseDataProto::replaced_existing_notification() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.replaced_existing_notification)
  return replaced_existing_notification_;
}
void NotificationDatabaseDataProto::set_replaced_existing_notification(bool value) {
  set_has_replaced_existing_notification();
  replaced_existing_notification_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.replaced_existing_notification)
}

// optional int32 num_clicks = 7;
bool NotificationDatabaseDataProto::has_num_clicks() const {
  return (_has_bits_[0] & 0x00000040u) != 0;
}
void NotificationDatabaseDataProto::set_has_num_clicks() {
  _has_bits_[0] |= 0x00000040u;
}
void NotificationDatabaseDataProto::clear_has_num_clicks() {
  _has_bits_[0] &= ~0x00000040u;
}
void NotificationDatabaseDataProto::clear_num_clicks() {
  num_clicks_ = 0;
  clear_has_num_clicks();
}
::google::protobuf::int32 NotificationDatabaseDataProto::num_clicks() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.num_clicks)
  return num_clicks_;
}
void NotificationDatabaseDataProto::set_num_clicks(::google::protobuf::int32 value) {
  set_has_num_clicks();
  num_clicks_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.num_clicks)
}

// optional int32 num_action_button_clicks = 8;
bool NotificationDatabaseDataProto::has_num_action_button_clicks() const {
  return (_has_bits_[0] & 0x00000200u) != 0;
}
void NotificationDatabaseDataProto::set_has_num_action_button_clicks() {
  _has_bits_[0] |= 0x00000200u;
}
void NotificationDatabaseDataProto::clear_has_num_action_button_clicks() {
  _has_bits_[0] &= ~0x00000200u;
}
void NotificationDatabaseDataProto::clear_num_action_button_clicks() {
  num_action_button_clicks_ = 0;
  clear_has_num_action_button_clicks();
}
::google::protobuf::int32 NotificationDatabaseDataProto::num_action_button_clicks() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.num_action_button_clicks)
  return num_action_button_clicks_;
}
void NotificationDatabaseDataProto::set_num_action_button_clicks(::google::protobuf::int32 value) {
  set_has_num_action_button_clicks();
  num_action_button_clicks_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.num_action_button_clicks)
}

// optional int64 creation_time_millis = 9;
bool NotificationDatabaseDataProto::has_creation_time_millis() const {
  return (_has_bits_[0] & 0x00000080u) != 0;
}
void NotificationDatabaseDataProto::set_has_creation_time_millis() {
  _has_bits_[0] |= 0x00000080u;
}
void NotificationDatabaseDataProto::clear_has_creation_time_millis() {
  _has_bits_[0] &= ~0x00000080u;
}
void NotificationDatabaseDataProto::clear_creation_time_millis() {
  creation_time_millis_ = GOOGLE_LONGLONG(0);
  clear_has_creation_time_millis();
}
::google::protobuf::int64 NotificationDatabaseDataProto::creation_time_millis() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.creation_time_millis)
  return creation_time_millis_;
}
void NotificationDatabaseDataProto::set_creation_time_millis(::google::protobuf::int64 value) {
  set_has_creation_time_millis();
  creation_time_millis_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.creation_time_millis)
}

// optional int64 time_until_first_click_millis = 10;
bool NotificationDatabaseDataProto::has_time_until_first_click_millis() const {
  return (_has_bits_[0] & 0x00000100u) != 0;
}
void NotificationDatabaseDataProto::set_has_time_until_first_click_millis() {
  _has_bits_[0] |= 0x00000100u;
}
void NotificationDatabaseDataProto::clear_has_time_until_first_click_millis() {
  _has_bits_[0] &= ~0x00000100u;
}
void NotificationDatabaseDataProto::clear_time_until_first_click_millis() {
  time_until_first_click_millis_ = GOOGLE_LONGLONG(0);
  clear_has_time_until_first_click_millis();
}
::google::protobuf::int64 NotificationDatabaseDataProto::time_until_first_click_millis() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.time_until_first_click_millis)
  return time_until_first_click_millis_;
}
void NotificationDatabaseDataProto::set_time_until_first_click_millis(::google::protobuf::int64 value) {
  set_has_time_until_first_click_millis();
  time_until_first_click_millis_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.time_until_first_click_millis)
}

// optional int64 time_until_last_click_millis = 11;
bool NotificationDatabaseDataProto::has_time_until_last_click_millis() const {
  return (_has_bits_[0] & 0x00000800u) != 0;
}
void NotificationDatabaseDataProto::set_has_time_until_last_click_millis() {
  _has_bits_[0] |= 0x00000800u;
}
void NotificationDatabaseDataProto::clear_has_time_until_last_click_millis() {
  _has_bits_[0] &= ~0x00000800u;
}
void NotificationDatabaseDataProto::clear_time_until_last_click_millis() {
  time_until_last_click_millis_ = GOOGLE_LONGLONG(0);
  clear_has_time_until_last_click_millis();
}
::google::protobuf::int64 NotificationDatabaseDataProto::time_until_last_click_millis() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.time_until_last_click_millis)
  return time_until_last_click_millis_;
}
void NotificationDatabaseDataProto::set_time_until_last_click_millis(::google::protobuf::int64 value) {
  set_has_time_until_last_click_millis();
  time_until_last_click_millis_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.time_until_last_click_millis)
}

// optional int64 time_until_close_millis = 12;
bool NotificationDatabaseDataProto::has_time_until_close_millis() const {
  return (_has_bits_[0] & 0x00001000u) != 0;
}
void NotificationDatabaseDataProto::set_has_time_until_close_millis() {
  _has_bits_[0] |= 0x00001000u;
}
void NotificationDatabaseDataProto::clear_has_time_until_close_millis() {
  _has_bits_[0] &= ~0x00001000u;
}
void NotificationDatabaseDataProto::clear_time_until_close_millis() {
  time_until_close_millis_ = GOOGLE_LONGLONG(0);
  clear_has_time_until_close_millis();
}
::google::protobuf::int64 NotificationDatabaseDataProto::time_until_close_millis() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.time_until_close_millis)
  return time_until_close_millis_;
}
void NotificationDatabaseDataProto::set_time_until_close_millis(::google::protobuf::int64 value) {
  set_has_time_until_close_millis();
  time_until_close_millis_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.time_until_close_millis)
}

// optional .content.NotificationDatabaseDataProto.ClosedReason closed_reason = 13;
bool NotificationDatabaseDataProto::has_closed_reason() const {
  return (_has_bits_[0] & 0x00000400u) != 0;
}
void NotificationDatabaseDataProto::set_has_closed_reason() {
  _has_bits_[0] |= 0x00000400u;
}
void NotificationDatabaseDataProto::clear_has_closed_reason() {
  _has_bits_[0] &= ~0x00000400u;
}
void NotificationDatabaseDataProto::clear_closed_reason() {
  closed_reason_ = 0;
  clear_has_closed_reason();
}
::content::NotificationDatabaseDataProto_ClosedReason NotificationDatabaseDataProto::closed_reason() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.closed_reason)
  return static_cast< ::content::NotificationDatabaseDataProto_ClosedReason >(closed_reason_);
}
void NotificationDatabaseDataProto::set_closed_reason(::content::NotificationDatabaseDataProto_ClosedReason value) {
  assert(::content::NotificationDatabaseDataProto_ClosedReason_IsValid(value));
  set_has_closed_reason();
  closed_reason_ = value;
  // @@protoc_insertion_point(field_set:content.NotificationDatabaseDataProto.closed_reason)
}

// optional .content.NotificationDatabaseDataProto.NotificationData notification_data = 4;
bool NotificationDatabaseDataProto::has_notification_data() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
void NotificationDatabaseDataProto::set_has_notification_data() {
  _has_bits_[0] |= 0x00000004u;
}
void NotificationDatabaseDataProto::clear_has_notification_data() {
  _has_bits_[0] &= ~0x00000004u;
}
void NotificationDatabaseDataProto::clear_notification_data() {
  if (notification_data_ != NULL) notification_data_->::content::NotificationDatabaseDataProto_NotificationData::Clear();
  clear_has_notification_data();
}
const ::content::NotificationDatabaseDataProto_NotificationData& NotificationDatabaseDataProto::notification_data() const {
  // @@protoc_insertion_point(field_get:content.NotificationDatabaseDataProto.notification_data)
  return notification_data_ != NULL ? *notification_data_
                         : *::content::NotificationDatabaseDataProto_NotificationData::internal_default_instance();
}
::content::NotificationDatabaseDataProto_NotificationData* NotificationDatabaseDataProto::mutable_notification_data() {
  set_has_notification_data();
  if (notification_data_ == NULL) {
    notification_data_ = new ::content::NotificationDatabaseDataProto_NotificationData;
  }
  // @@protoc_insertion_point(field_mutable:content.NotificationDatabaseDataProto.notification_data)
  return notification_data_;
}
::content::NotificationDatabaseDataProto_NotificationData* NotificationDatabaseDataProto::release_notification_data() {
  // @@protoc_insertion_point(field_release:content.NotificationDatabaseDataProto.notification_data)
  clear_has_notification_data();
  ::content::NotificationDatabaseDataProto_NotificationData* temp = notification_data_;
  notification_data_ = NULL;
  return temp;
}
void NotificationDatabaseDataProto::set_allocated_notification_data(::content::NotificationDatabaseDataProto_NotificationData* notification_data) {
  delete notification_data_;
  notification_data_ = notification_data;
  if (notification_data) {
    set_has_notification_data();
  } else {
    clear_has_notification_data();
  }
  // @@protoc_insertion_point(field_set_allocated:content.NotificationDatabaseDataProto.notification_data)
}

#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS

// @@protoc_insertion_point(namespace_scope)

}  // namespace content

// @@protoc_insertion_point(global_scope)
