// Generated by the protocol buffer compiler.  DO NOT EDIT!
// NO CHECKED-IN PROTOBUF GENCODE
// source: onnx/onnx-operators-ml.proto
// Protobuf C++ Version: 7.34.1

#include "onnx/onnx-operators-ml.pb.h"

#include <algorithm>
#include <type_traits>
#include "google/protobuf/io/coded_stream.h"
#include "google/protobuf/generated_message_tctable_impl.h"
#include "google/protobuf/internal_visibility.h"
#include "google/protobuf/extension_set.h"
#include "google/protobuf/generated_message_util.h"
#include "google/protobuf/wire_format_lite.h"
#include "google/protobuf/descriptor.h"
#include "google/protobuf/generated_message_reflection.h"
#include "google/protobuf/reflection_ops.h"
#include "google/protobuf/wire_format.h"
// @@protoc_insertion_point(includes)

// Must be included last.
#include "google/protobuf/port_def.inc"
PROTOBUF_PRAGMA_INIT_SEG
namespace _pb = ::google::protobuf;
namespace _pbi = ::google::protobuf::internal;
namespace _fl = ::google::protobuf::internal::field_layout;
namespace onnx {

inline constexpr OperatorProto::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        op_type_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        doc_string_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        since_version_{::int64_t{0}},
        status_{static_cast< ::onnx::OperatorStatus >(0)} {}

template <typename>
constexpr OperatorProto::OperatorProto(::_pbi::ConstantInitialized)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(OperatorProto_class_data_.base()),
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(),
#endif  // PROTOBUF_CUSTOM_VTABLE
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
struct OperatorProtoDefaultTypeInternal {
  constexpr OperatorProtoDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {}
  ~OperatorProtoDefaultTypeInternal() {}
  union {
    OperatorProto _instance;
  };
};

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 OperatorProtoDefaultTypeInternal _OperatorProto_default_instance_;

inline constexpr OperatorSetProto::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        #ifdef PROTOBUF_INTERNAL_REMOVE_ARENA_PTRS_REPEATED_PTR_FIELD
        operator__{visibility, ::_pbi::InternalMetadataOffset::Build<
            ::onnx::OperatorSetProto,
            PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.operator__)>()
        }
        #else  // !PROTOBUF_INTERNAL_REMOVE_ARENA_PTRS_REPEATED_PTR_FIELD
        operator__ {}
        #endif
        ,
        #ifdef PROTOBUF_INTERNAL_REMOVE_ARENA_PTRS_REPEATED_PTR_FIELD
        functions_{visibility, ::_pbi::InternalMetadataOffset::Build<
            ::onnx::OperatorSetProto,
            PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.functions_)>()
        }
        #else  // !PROTOBUF_INTERNAL_REMOVE_ARENA_PTRS_REPEATED_PTR_FIELD
        functions_ {}
        #endif
        ,
        magic_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        ir_version_prerelease_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        domain_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        doc_string_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        ir_build_metadata_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        ir_version_{::int64_t{0}},
        opset_version_{::int64_t{0}} {}

template <typename>
constexpr OperatorSetProto::OperatorSetProto(::_pbi::ConstantInitialized)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(OperatorSetProto_class_data_.base()),
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(),
#endif  // PROTOBUF_CUSTOM_VTABLE
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
struct OperatorSetProtoDefaultTypeInternal {
  constexpr OperatorSetProtoDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {}
  ~OperatorSetProtoDefaultTypeInternal() {}
  union {
    OperatorSetProto _instance;
  };
};

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 OperatorSetProtoDefaultTypeInternal _OperatorSetProto_default_instance_;
}  // namespace onnx
static constexpr const ::_pb::EnumDescriptor* PROTOBUF_NONNULL* PROTOBUF_NULLABLE
    file_level_enum_descriptors_onnx_2fonnx_2doperators_2dml_2eproto = nullptr;
static constexpr const ::_pb::ServiceDescriptor* PROTOBUF_NONNULL* PROTOBUF_NULLABLE
    file_level_service_descriptors_onnx_2fonnx_2doperators_2dml_2eproto = nullptr;
const ::uint32_t
    TableStruct_onnx_2fonnx_2doperators_2dml_2eproto::offsets[] ABSL_ATTRIBUTE_SECTION_VARIABLE(
        protodesc_cold) = {
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorProto, _impl_._has_bits_),
        7, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorProto, _impl_.op_type_),
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorProto, _impl_.since_version_),
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorProto, _impl_.status_),
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorProto, _impl_.doc_string_),
        0,
        2,
        3,
        1,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_._has_bits_),
        12, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.magic_),
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.ir_version_),
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.ir_version_prerelease_),
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.ir_build_metadata_),
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.domain_),
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.opset_version_),
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.doc_string_),
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.operator__),
        PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.functions_),
        2,
        7,
        3,
        6,
        4,
        8,
        5,
        0,
        1,
};

static const ::_pbi::MigrationSchema
    schemas[] ABSL_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
        {0, sizeof(::onnx::OperatorProto)},
        {11, sizeof(::onnx::OperatorSetProto)},
};
static const ::_pb::Message* PROTOBUF_NONNULL const file_default_instances[] = {
    &::onnx::_OperatorProto_default_instance_._instance,
    &::onnx::_OperatorSetProto_default_instance_._instance,
};
const char descriptor_table_protodef_onnx_2fonnx_2doperators_2dml_2eproto[] ABSL_ATTRIBUTE_SECTION_VARIABLE(
    protodesc_cold) = {
    "\n\034onnx/onnx-operators-ml.proto\022\004onnx\032\022on"
    "nx/onnx-ml.proto\"q\n\rOperatorProto\022\017\n\007op_"
    "type\030\001 \001(\t\022\025\n\rsince_version\030\002 \001(\003\022$\n\006sta"
    "tus\030\003 \001(\0162\024.onnx.OperatorStatus\022\022\n\ndoc_s"
    "tring\030\n \001(\t\"\371\001\n\020OperatorSetProto\022\r\n\005magi"
    "c\030\001 \001(\t\022\022\n\nir_version\030\002 \001(\003\022\035\n\025ir_versio"
    "n_prerelease\030\003 \001(\t\022\031\n\021ir_build_metadata\030"
    "\007 \001(\t\022\016\n\006domain\030\004 \001(\t\022\025\n\ropset_version\030\005"
    " \001(\003\022\022\n\ndoc_string\030\006 \001(\t\022%\n\010operator\030\010 \003"
    "(\0132\023.onnx.OperatorProto\022&\n\tfunctions\030\t \003"
    "(\0132\023.onnx.FunctionProto"
};
static const ::_pbi::DescriptorTable* PROTOBUF_NONNULL const
    descriptor_table_onnx_2fonnx_2doperators_2dml_2eproto_deps[1] = {
        &::descriptor_table_onnx_2fonnx_2dml_2eproto,
};
static ::absl::once_flag descriptor_table_onnx_2fonnx_2doperators_2dml_2eproto_once;
PROTOBUF_CONSTINIT const ::_pbi::DescriptorTable descriptor_table_onnx_2fonnx_2doperators_2dml_2eproto = {
    false,
    false,
    423,
    descriptor_table_protodef_onnx_2fonnx_2doperators_2dml_2eproto,
    "onnx/onnx-operators-ml.proto",
    &descriptor_table_onnx_2fonnx_2doperators_2dml_2eproto_once,
    descriptor_table_onnx_2fonnx_2doperators_2dml_2eproto_deps,
    1,
    2,
    schemas,
    file_default_instances,
    TableStruct_onnx_2fonnx_2doperators_2dml_2eproto::offsets,
    file_level_enum_descriptors_onnx_2fonnx_2doperators_2dml_2eproto,
    file_level_service_descriptors_onnx_2fonnx_2doperators_2dml_2eproto,
};
namespace onnx {
// ===================================================================

class OperatorProto::_Internal {
 public:
  using HasBits =
      decltype(::std::declval<OperatorProto>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(OperatorProto, _impl_._has_bits_);
};

OperatorProto::OperatorProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, OperatorProto_class_data_.base()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:onnx.OperatorProto)
}
PROTOBUF_NDEBUG_INLINE OperatorProto::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::onnx::OperatorProto& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        op_type_(arena, from.op_type_),
        doc_string_(arena, from.doc_string_) {}

OperatorProto::OperatorProto(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const OperatorProto& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, OperatorProto_class_data_.base()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  OperatorProto* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, since_version_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, since_version_),
           offsetof(Impl_, status_) -
               offsetof(Impl_, since_version_) +
               sizeof(Impl_::status_));

  // @@protoc_insertion_point(copy_constructor:onnx.OperatorProto)
}
PROTOBUF_NDEBUG_INLINE OperatorProto::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        op_type_(arena),
        doc_string_(arena) {}

inline void OperatorProto::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, since_version_),
           0,
           offsetof(Impl_, status_) -
               offsetof(Impl_, since_version_) +
               sizeof(Impl_::status_));
}
OperatorProto::~OperatorProto() {
  // @@protoc_insertion_point(destructor:onnx.OperatorProto)
  SharedDtor(*this);
}
inline void OperatorProto::SharedDtor(MessageLite& self) {
  OperatorProto& this_ = static_cast<OperatorProto&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.op_type_.Destroy();
  this_._impl_.doc_string_.Destroy();
  this_._impl_.~Impl_();
}

inline void* PROTOBUF_NONNULL OperatorProto::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) OperatorProto(arena);
}
constexpr auto OperatorProto::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(OperatorProto),
                                            alignof(OperatorProto));
}
constexpr auto OperatorProto::InternalGenerateClassData_() {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &_OperatorProto_default_instance_._instance,
          &_table_.header,
          nullptr,  // IsInitialized
          &OperatorProto::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<OperatorProto>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &OperatorProto::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<OperatorProto>(), &OperatorProto::ByteSizeLong,
              &OperatorProto::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(OperatorProto, _impl_._cached_size_),
          false,
      },
      &OperatorProto::kDescriptorMethods,
      &descriptor_table_onnx_2fonnx_2doperators_2dml_2eproto,
      nullptr,  // tracker
  };
}

PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull OperatorProto_class_data_ =
        OperatorProto::InternalGenerateClassData_();

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
OperatorProto::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&OperatorProto_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(OperatorProto_class_data_.tc_table);
  return OperatorProto_class_data_.base();
}
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::_pbi::TcParseTable<2, 4, 1, 0, 2>
OperatorProto::_table_ = {
  {
    PROTOBUF_FIELD_OFFSET(OperatorProto, _impl_._has_bits_),
    0, // no _extensions_
    10, 24,  // max_field_number, fast_idx_mask
    offsetof(decltype(_table_), field_lookup_table),
    4294966776,  // skipmap
    offsetof(decltype(_table_), field_entries),
    4,  // num_field_entries
    1,  // num_aux_entries
    offsetof(decltype(_table_), aux_entries),
    OperatorProto_class_data_.base(),
    nullptr,  // post_loop_handler
    ::_pbi::TcParser::GenericFallback,  // fallback
    #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
    ::_pbi::TcParser::GetTable<::onnx::OperatorProto>(),  // to_prefetch
    #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
  }, {{
    {::_pbi::TcParser::MiniParse, {}},
    // optional string op_type = 1;
    {::_pbi::TcParser::FastBS1,
     {10, 0, 0,
      PROTOBUF_FIELD_OFFSET(OperatorProto, _impl_.op_type_)}},
    // optional int64 since_version = 2;
    {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(OperatorProto, _impl_.since_version_), 2>(),
     {16, 2, 0,
      PROTOBUF_FIELD_OFFSET(OperatorProto, _impl_.since_version_)}},
    // optional .onnx.OperatorStatus status = 3;
    {::_pbi::TcParser::FastEr0S1,
     {24, 3, 1,
      PROTOBUF_FIELD_OFFSET(OperatorProto, _impl_.status_)}},
  }}, {{
    65535, 65535
  }}, {{
    // optional string op_type = 1;
    {PROTOBUF_FIELD_OFFSET(OperatorProto, _impl_.op_type_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    // optional int64 since_version = 2;
    {PROTOBUF_FIELD_OFFSET(OperatorProto, _impl_.since_version_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
    // optional .onnx.OperatorStatus status = 3;
    {PROTOBUF_FIELD_OFFSET(OperatorProto, _impl_.status_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
    // optional string doc_string = 10;
    {PROTOBUF_FIELD_OFFSET(OperatorProto, _impl_.doc_string_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
  }},
  {{
      {0, 1},
  }},
  {{
  }},
};
PROTOBUF_NOINLINE void OperatorProto::Clear() {
// @@protoc_insertion_point(message_clear_start:onnx.OperatorProto)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.op_type_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.doc_string_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000000cU)) {
    ::memset(&_impl_.since_version_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.status_) -
        reinterpret_cast<char*>(&_impl_.since_version_)) + sizeof(_impl_.status_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL OperatorProto::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const OperatorProto& this_ = static_cast<const OperatorProto&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL OperatorProto::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const OperatorProto& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:onnx.OperatorProto)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional string op_type = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    const ::std::string& _s = this_._internal_op_type();
    target = stream->WriteStringMaybeAliased(1, _s, target);
  }

  // optional int64 since_version = 2;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<2>(
            stream, this_._internal_since_version(), target);
  }

  // optional .onnx.OperatorStatus status = 3;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
        3, this_._internal_status(), target);
  }

  // optional string doc_string = 10;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    const ::std::string& _s = this_._internal_doc_string();
    target = stream->WriteStringMaybeAliased(10, _s, target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:onnx.OperatorProto)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t OperatorProto::ByteSizeLong(const MessageLite& base) {
  const OperatorProto& this_ = static_cast<const OperatorProto&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t OperatorProto::ByteSizeLong() const {
  const OperatorProto& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:onnx.OperatorProto)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    // optional string op_type = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_op_type());
    }
    // optional string doc_string = 10;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_doc_string());
    }
    // optional int64 since_version = 2;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
          this_._internal_since_version());
    }
    // optional .onnx.OperatorStatus status = 3;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 +
                    ::_pbi::WireFormatLite::EnumSize(this_._internal_status());
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void OperatorProto::MergeImpl(::google::protobuf::MessageLite& to_msg,
                            const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this =
      static_cast<OperatorProto*>(&to_msg);
  auto& from = static_cast<const OperatorProto&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:onnx.OperatorProto)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_op_type(from._internal_op_type());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_doc_string(from._internal_doc_string());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_impl_.since_version_ = from._impl_.since_version_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_impl_.status_ = from._impl_.status_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void OperatorProto::InternalSwap(OperatorProto* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.op_type_, &other->_impl_.op_type_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.doc_string_, &other->_impl_.doc_string_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(OperatorProto, _impl_.status_)
      + sizeof(OperatorProto::_impl_.status_)
      - PROTOBUF_FIELD_OFFSET(OperatorProto, _impl_.since_version_)>(
          reinterpret_cast<char*>(&_impl_.since_version_),
          reinterpret_cast<char*>(&other->_impl_.since_version_));
}

::google::protobuf::Metadata OperatorProto::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

class OperatorSetProto::_Internal {
 public:
  using HasBits =
      decltype(::std::declval<OperatorSetProto>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_._has_bits_);
};

void OperatorSetProto::clear_functions() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.functions_.Clear();
  ClearHasBitForRepeated(_impl_._has_bits_[0],
                  0x00000002U);
}
OperatorSetProto::OperatorSetProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, OperatorSetProto_class_data_.base()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:onnx.OperatorSetProto)
}
PROTOBUF_NDEBUG_INLINE OperatorSetProto::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::onnx::OperatorSetProto& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        #ifdef PROTOBUF_INTERNAL_REMOVE_ARENA_PTRS_REPEATED_PTR_FIELD
        operator__{visibility, ::_pbi::InternalMetadataOffset::Build<
            ::onnx::OperatorSetProto,
            PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.operator__)>()
        , from.operator__}
        #else
        operator__ { visibility, arena, from.operator__ }
        #endif
        ,
        #ifdef PROTOBUF_INTERNAL_REMOVE_ARENA_PTRS_REPEATED_PTR_FIELD
        functions_{visibility, ::_pbi::InternalMetadataOffset::Build<
            ::onnx::OperatorSetProto,
            PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.functions_)>()
        , from.functions_}
        #else
        functions_ { visibility, arena, from.functions_ }
        #endif
        ,
        magic_(arena, from.magic_),
        ir_version_prerelease_(arena, from.ir_version_prerelease_),
        domain_(arena, from.domain_),
        doc_string_(arena, from.doc_string_),
        ir_build_metadata_(arena, from.ir_build_metadata_) {}

OperatorSetProto::OperatorSetProto(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const OperatorSetProto& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, OperatorSetProto_class_data_.base()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  OperatorSetProto* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, ir_version_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, ir_version_),
           offsetof(Impl_, opset_version_) -
               offsetof(Impl_, ir_version_) +
               sizeof(Impl_::opset_version_));

  // @@protoc_insertion_point(copy_constructor:onnx.OperatorSetProto)
}
PROTOBUF_NDEBUG_INLINE OperatorSetProto::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        #ifdef PROTOBUF_INTERNAL_REMOVE_ARENA_PTRS_REPEATED_PTR_FIELD
        operator__{visibility, ::_pbi::InternalMetadataOffset::Build<
            ::onnx::OperatorSetProto,
            PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.operator__)>()
        }
        #else
        operator__ { visibility, arena }
        #endif
        ,
        #ifdef PROTOBUF_INTERNAL_REMOVE_ARENA_PTRS_REPEATED_PTR_FIELD
        functions_{visibility, ::_pbi::InternalMetadataOffset::Build<
            ::onnx::OperatorSetProto,
            PROTOBUF_FIELD_OFFSET(::onnx::OperatorSetProto, _impl_.functions_)>()
        }
        #else
        functions_ { visibility, arena }
        #endif
        ,
        magic_(arena),
        ir_version_prerelease_(arena),
        domain_(arena),
        doc_string_(arena),
        ir_build_metadata_(arena) {}

inline void OperatorSetProto::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, ir_version_),
           0,
           offsetof(Impl_, opset_version_) -
               offsetof(Impl_, ir_version_) +
               sizeof(Impl_::opset_version_));
}
OperatorSetProto::~OperatorSetProto() {
  // @@protoc_insertion_point(destructor:onnx.OperatorSetProto)
  SharedDtor(*this);
}
inline void OperatorSetProto::SharedDtor(MessageLite& self) {
  OperatorSetProto& this_ = static_cast<OperatorSetProto&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.magic_.Destroy();
  this_._impl_.ir_version_prerelease_.Destroy();
  this_._impl_.domain_.Destroy();
  this_._impl_.doc_string_.Destroy();
  this_._impl_.ir_build_metadata_.Destroy();
  this_._impl_.~Impl_();
}

inline void* PROTOBUF_NONNULL OperatorSetProto::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) OperatorSetProto(arena);
}
#ifdef PROTOBUF_INTERNAL_REMOVE_ARENA_PTRS_REPEATED_PTR_FIELD
constexpr auto OperatorSetProto::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(OperatorSetProto),
                                            alignof(OperatorSetProto));
}
#else  // !PROTOBUF_INTERNAL_REMOVE_ARENA_PTRS_REPEATED_PTR_FIELD
constexpr auto OperatorSetProto::InternalNewImpl_() {
  constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
      PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.operator__) +
          decltype(OperatorSetProto::_impl_.operator__)::
              InternalGetArenaOffset(
                  ::google::protobuf::Message::internal_visibility()),
      PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.functions_) +
          decltype(OperatorSetProto::_impl_.functions_)::
              InternalGetArenaOffset(
                  ::google::protobuf::Message::internal_visibility()),
  });
  if (arena_bits.has_value()) {
    return ::google::protobuf::internal::MessageCreator::CopyInit(
        sizeof(OperatorSetProto), alignof(OperatorSetProto), *arena_bits);
  } else {
    return ::google::protobuf::internal::MessageCreator(&OperatorSetProto::PlacementNew_,
                                 sizeof(OperatorSetProto),
                                 alignof(OperatorSetProto));
  }
}
#endif
constexpr auto OperatorSetProto::InternalGenerateClassData_() {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &_OperatorSetProto_default_instance_._instance,
          &_table_.header,
          nullptr,  // IsInitialized
          &OperatorSetProto::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<OperatorSetProto>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &OperatorSetProto::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<OperatorSetProto>(), &OperatorSetProto::ByteSizeLong,
              &OperatorSetProto::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_._cached_size_),
          false,
      },
      &OperatorSetProto::kDescriptorMethods,
      &descriptor_table_onnx_2fonnx_2doperators_2dml_2eproto,
      nullptr,  // tracker
  };
}

PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull OperatorSetProto_class_data_ =
        OperatorSetProto::InternalGenerateClassData_();

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
OperatorSetProto::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&OperatorSetProto_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(OperatorSetProto_class_data_.tc_table);
  return OperatorSetProto_class_data_.base();
}
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::_pbi::TcParseTable<4, 9, 2, 0, 2>
OperatorSetProto::_table_ = {
  {
    PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_._has_bits_),
    0, // no _extensions_
    9, 120,  // max_field_number, fast_idx_mask
    offsetof(decltype(_table_), field_lookup_table),
    4294966784,  // skipmap
    offsetof(decltype(_table_), field_entries),
    9,  // num_field_entries
    2,  // num_aux_entries
    offsetof(decltype(_table_), aux_entries),
    OperatorSetProto_class_data_.base(),
    nullptr,  // post_loop_handler
    ::_pbi::TcParser::GenericFallback,  // fallback
    #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
    ::_pbi::TcParser::GetTable<::onnx::OperatorSetProto>(),  // to_prefetch
    #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
  }, {{
    {::_pbi::TcParser::MiniParse, {}},
    // optional string magic = 1;
    {::_pbi::TcParser::FastBS1,
     {10, 2, 0,
      PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.magic_)}},
    // optional int64 ir_version = 2;
    {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(OperatorSetProto, _impl_.ir_version_), 7>(),
     {16, 7, 0,
      PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.ir_version_)}},
    // optional string ir_version_prerelease = 3;
    {::_pbi::TcParser::FastBS1,
     {26, 3, 0,
      PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.ir_version_prerelease_)}},
    // optional string domain = 4;
    {::_pbi::TcParser::FastBS1,
     {34, 4, 0,
      PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.domain_)}},
    // optional int64 opset_version = 5;
    {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(OperatorSetProto, _impl_.opset_version_), 8>(),
     {40, 8, 0,
      PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.opset_version_)}},
    // optional string doc_string = 6;
    {::_pbi::TcParser::FastBS1,
     {50, 5, 0,
      PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.doc_string_)}},
    // optional string ir_build_metadata = 7;
    {::_pbi::TcParser::FastBS1,
     {58, 6, 0,
      PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.ir_build_metadata_)}},
    // repeated .onnx.OperatorProto operator = 8;
    {::_pbi::TcParser::FastMtR1,
     {66, 0, 0,
      PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.operator__)}},
    // repeated .onnx.FunctionProto functions = 9;
    {::_pbi::TcParser::FastMtR1,
     {74, 1, 1,
      PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.functions_)}},
    {::_pbi::TcParser::MiniParse, {}},
    {::_pbi::TcParser::MiniParse, {}},
    {::_pbi::TcParser::MiniParse, {}},
    {::_pbi::TcParser::MiniParse, {}},
    {::_pbi::TcParser::MiniParse, {}},
    {::_pbi::TcParser::MiniParse, {}},
  }}, {{
    65535, 65535
  }}, {{
    // optional string magic = 1;
    {PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.magic_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    // optional int64 ir_version = 2;
    {PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.ir_version_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
    // optional string ir_version_prerelease = 3;
    {PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.ir_version_prerelease_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    // optional string domain = 4;
    {PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.domain_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    // optional int64 opset_version = 5;
    {PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.opset_version_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
    // optional string doc_string = 6;
    {PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.doc_string_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    // optional string ir_build_metadata = 7;
    {PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.ir_build_metadata_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    // repeated .onnx.OperatorProto operator = 8;
    {PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.operator__), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
    // repeated .onnx.FunctionProto functions = 9;
    {PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.functions_), _Internal::kHasBitsOffset + 1, 1, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
  }},
  {{
      {::_pbi::TcParser::GetTable<::onnx::OperatorProto>()},
      {::_pbi::TcParser::GetTable<::onnx::FunctionProto>()},
  }},
  {{
  }},
};
PROTOBUF_NOINLINE void OperatorSetProto::Clear() {
// @@protoc_insertion_point(message_clear_start:onnx.OperatorSetProto)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000007fU)) {
    if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
      _impl_.operator__.Clear();
    }
    if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
      _impl_.functions_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.magic_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.ir_version_prerelease_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.domain_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.doc_string_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _impl_.ir_build_metadata_.ClearNonDefaultToEmpty();
    }
  }
  _impl_.ir_version_ = ::int64_t{0};
  _impl_.opset_version_ = ::int64_t{0};
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL OperatorSetProto::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const OperatorSetProto& this_ = static_cast<const OperatorSetProto&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL OperatorSetProto::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const OperatorSetProto& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:onnx.OperatorSetProto)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional string magic = 1;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    const ::std::string& _s = this_._internal_magic();
    target = stream->WriteStringMaybeAliased(1, _s, target);
  }

  // optional int64 ir_version = 2;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<2>(
            stream, this_._internal_ir_version(), target);
  }

  // optional string ir_version_prerelease = 3;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    const ::std::string& _s = this_._internal_ir_version_prerelease();
    target = stream->WriteStringMaybeAliased(3, _s, target);
  }

  // optional string domain = 4;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    const ::std::string& _s = this_._internal_domain();
    target = stream->WriteStringMaybeAliased(4, _s, target);
  }

  // optional int64 opset_version = 5;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<5>(
            stream, this_._internal_opset_version(), target);
  }

  // optional string doc_string = 6;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    const ::std::string& _s = this_._internal_doc_string();
    target = stream->WriteStringMaybeAliased(6, _s, target);
  }

  // optional string ir_build_metadata = 7;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    const ::std::string& _s = this_._internal_ir_build_metadata();
    target = stream->WriteStringMaybeAliased(7, _s, target);
  }

  // repeated .onnx.OperatorProto operator = 8;
  if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_operator__size());
         i < n; i++) {
      const auto& repfield = this_._internal_operator_().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              8, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // repeated .onnx.FunctionProto functions = 9;
  if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_functions_size());
         i < n; i++) {
      const auto& repfield = this_._internal_functions().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              9, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:onnx.OperatorSetProto)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t OperatorSetProto::ByteSizeLong(const MessageLite& base) {
  const OperatorSetProto& this_ = static_cast<const OperatorSetProto&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t OperatorSetProto::ByteSizeLong() const {
  const OperatorSetProto& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:onnx.OperatorSetProto)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated .onnx.OperatorProto operator = 8;
    if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_operator__size();
      for (const auto& msg : this_._internal_operator_()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated .onnx.FunctionProto functions = 9;
    if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
      total_size += 1UL * this_._internal_functions_size();
      for (const auto& msg : this_._internal_functions()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // optional string magic = 1;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_magic());
    }
    // optional string ir_version_prerelease = 3;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_ir_version_prerelease());
    }
    // optional string domain = 4;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_domain());
    }
    // optional string doc_string = 6;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_doc_string());
    }
    // optional string ir_build_metadata = 7;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_ir_build_metadata());
    }
    // optional int64 ir_version = 2;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
          this_._internal_ir_version());
    }
  }
   {
    // optional int64 opset_version = 5;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
          this_._internal_opset_version());
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void OperatorSetProto::MergeImpl(::google::protobuf::MessageLite& to_msg,
                            const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this =
      static_cast<OperatorSetProto*>(&to_msg);
  auto& from = static_cast<const OperatorSetProto&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:onnx.OperatorSetProto)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_operator_()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_operator_());
    }
    if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_functions()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_functions());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_set_magic(from._internal_magic());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_internal_set_ir_version_prerelease(from._internal_ir_version_prerelease());
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_internal_set_domain(from._internal_domain());
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _this->_internal_set_doc_string(from._internal_doc_string());
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _this->_internal_set_ir_build_metadata(from._internal_ir_build_metadata());
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _this->_impl_.ir_version_ = from._impl_.ir_version_;
    }
  }
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    _this->_impl_.opset_version_ = from._impl_.opset_version_;
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void OperatorSetProto::InternalSwap(OperatorSetProto* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.operator__.InternalSwap(&other->_impl_.operator__);
  _impl_.functions_.InternalSwap(&other->_impl_.functions_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.magic_, &other->_impl_.magic_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.ir_version_prerelease_, &other->_impl_.ir_version_prerelease_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.domain_, &other->_impl_.domain_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.doc_string_, &other->_impl_.doc_string_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.ir_build_metadata_, &other->_impl_.ir_build_metadata_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.opset_version_)
      + sizeof(OperatorSetProto::_impl_.opset_version_)
      - PROTOBUF_FIELD_OFFSET(OperatorSetProto, _impl_.ir_version_)>(
          reinterpret_cast<char*>(&_impl_.ir_version_),
          reinterpret_cast<char*>(&other->_impl_.ir_version_));
}

::google::protobuf::Metadata OperatorSetProto::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// @@protoc_insertion_point(namespace_scope)
}  // namespace onnx
namespace google {
namespace protobuf {
}  // namespace protobuf
}  // namespace google
// @@protoc_insertion_point(global_scope)
PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::std::false_type
    _static_init2_ [[maybe_unused]] =
        (::_pbi::AddDescriptors(&descriptor_table_onnx_2fonnx_2doperators_2dml_2eproto),
         ::std::false_type{});
#include "google/protobuf/port_undef.inc"
