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

#ifndef fastnetmon_5finternal_5fapi_2eproto_2epb_2eh
#define fastnetmon_5finternal_5fapi_2eproto_2epb_2eh

#include <limits>
#include <string>
#include <type_traits>
#include <utility>

// clang-format off
#include "google/protobuf/runtime_version.h"
#if PROTOBUF_VERSION != 7035001
#error "Protobuf C++ gencode is built with an incompatible version of"
#error "Protobuf C++ headers/runtime. See"
#error "https://protobuf.dev/support/cross-version-runtime-guarantee/#cpp"
#endif
#include "google/protobuf/io/coded_stream.h"
#include "google/protobuf/arena.h"
#include "google/protobuf/arenastring.h"
#include "google/protobuf/generated_message_bases.h"
#include "google/protobuf/generated_message_tctable_decl.h"
#include "google/protobuf/generated_message_util.h"
#include "google/protobuf/metadata_lite.h"
#include "google/protobuf/generated_message_reflection.h"
#include "google/protobuf/message.h"
#include "google/protobuf/message_lite.h"
#include "google/protobuf/repeated_field.h"  // IWYU pragma: export
#include "google/protobuf/extension_set.h"  // IWYU pragma: export
#include "google/protobuf/generated_enum_reflection.h"
#include "google/protobuf/unknown_field_set.h"
// @@protoc_insertion_point(includes)

// Must be included last.
#include "google/protobuf/port_def.inc"

#define PROTOBUF_INTERNAL_EXPORT_fastnetmon_5finternal_5fapi_2eproto

namespace google {
namespace protobuf {
namespace internal {
template <typename T>
::absl::string_view GetAnyMessageName();
}  // namespace internal
}  // namespace protobuf
}  // namespace google

// Internal implementation detail -- do not use these members.
struct TableStruct_fastnetmon_5finternal_5fapi_2eproto {
  static const ::uint32_t offsets[];
};
extern "C" {
extern const ::google::protobuf::internal::DescriptorTable descriptor_table_fastnetmon_5finternal_5fapi_2eproto;
}  // extern "C"
namespace fastnetmoninternal {
enum OrderingDirection : int;
extern const uint32_t OrderingDirection_internal_data_[];
enum OrderingType : int;
extern const uint32_t OrderingType_internal_data_[];
class BanListHostgroupReply;
struct BanListHostgroupReplyGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern BanListHostgroupReplyGlobalsTypeInternal BanListHostgroupReply_globals_;
extern const ::google::protobuf::internal::ClassDataFull BanListHostgroupReply_class_data_;
#else
extern const BanListHostgroupReplyGlobalsTypeInternal BanListHostgroupReply_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class BanListHostgroupRequest;
struct BanListHostgroupRequestGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern BanListHostgroupRequestGlobalsTypeInternal BanListHostgroupRequest_globals_;
extern const ::google::protobuf::internal::ClassDataFull BanListHostgroupRequest_class_data_;
#else
extern const BanListHostgroupRequestGlobalsTypeInternal BanListHostgroupRequest_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class BanListReply;
struct BanListReplyGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern BanListReplyGlobalsTypeInternal BanListReply_globals_;
extern const ::google::protobuf::internal::ClassDataFull BanListReply_class_data_;
#else
extern const BanListReplyGlobalsTypeInternal BanListReply_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class BanListRequest;
struct BanListRequestGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern BanListRequestGlobalsTypeInternal BanListRequest_globals_;
extern const ::google::protobuf::internal::ClassDataFull BanListRequest_class_data_;
#else
extern const BanListRequestGlobalsTypeInternal BanListRequest_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class DisableMitigationReply;
struct DisableMitigationReplyGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern DisableMitigationReplyGlobalsTypeInternal DisableMitigationReply_globals_;
extern const ::google::protobuf::internal::ClassDataFull DisableMitigationReply_class_data_;
#else
extern const DisableMitigationReplyGlobalsTypeInternal DisableMitigationReply_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class DisableMitigationRequest;
struct DisableMitigationRequestGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern DisableMitigationRequestGlobalsTypeInternal DisableMitigationRequest_globals_;
extern const ::google::protobuf::internal::ClassDataFull DisableMitigationRequest_class_data_;
#else
extern const DisableMitigationRequestGlobalsTypeInternal DisableMitigationRequest_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class ExecuteBanReply;
struct ExecuteBanReplyGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern ExecuteBanReplyGlobalsTypeInternal ExecuteBanReply_globals_;
extern const ::google::protobuf::internal::ClassDataFull ExecuteBanReply_class_data_;
#else
extern const ExecuteBanReplyGlobalsTypeInternal ExecuteBanReply_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class ExecuteBanRequest;
struct ExecuteBanRequestGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern ExecuteBanRequestGlobalsTypeInternal ExecuteBanRequest_globals_;
extern const ::google::protobuf::internal::ClassDataFull ExecuteBanRequest_class_data_;
#else
extern const ExecuteBanRequestGlobalsTypeInternal ExecuteBanRequest_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class GetHostCountersRequest;
struct GetHostCountersRequestGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern GetHostCountersRequestGlobalsTypeInternal GetHostCountersRequest_globals_;
extern const ::google::protobuf::internal::ClassDataFull GetHostCountersRequest_class_data_;
#else
extern const GetHostCountersRequestGlobalsTypeInternal GetHostCountersRequest_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class GetHostCountersV6Request;
struct GetHostCountersV6RequestGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern GetHostCountersV6RequestGlobalsTypeInternal GetHostCountersV6Request_globals_;
extern const ::google::protobuf::internal::ClassDataFull GetHostCountersV6Request_class_data_;
#else
extern const GetHostCountersV6RequestGlobalsTypeInternal GetHostCountersV6Request_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class GetNetworkCountersRequest;
struct GetNetworkCountersRequestGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern GetNetworkCountersRequestGlobalsTypeInternal GetNetworkCountersRequest_globals_;
extern const ::google::protobuf::internal::ClassDataFull GetNetworkCountersRequest_class_data_;
#else
extern const GetNetworkCountersRequestGlobalsTypeInternal GetNetworkCountersRequest_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class GetNetworkCountersV6Request;
struct GetNetworkCountersV6RequestGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern GetNetworkCountersV6RequestGlobalsTypeInternal GetNetworkCountersV6Request_globals_;
extern const ::google::protobuf::internal::ClassDataFull GetNetworkCountersV6Request_class_data_;
#else
extern const GetNetworkCountersV6RequestGlobalsTypeInternal GetNetworkCountersV6Request_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class GetRunningVersionReply;
struct GetRunningVersionReplyGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern GetRunningVersionReplyGlobalsTypeInternal GetRunningVersionReply_globals_;
extern const ::google::protobuf::internal::ClassDataFull GetRunningVersionReply_class_data_;
#else
extern const GetRunningVersionReplyGlobalsTypeInternal GetRunningVersionReply_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class GetRunningVersionRequest;
struct GetRunningVersionRequestGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern GetRunningVersionRequestGlobalsTypeInternal GetRunningVersionRequest_globals_;
extern const ::google::protobuf::internal::ClassDataFull GetRunningVersionRequest_class_data_;
#else
extern const GetRunningVersionRequestGlobalsTypeInternal GetRunningVersionRequest_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class GetSystemCountersRequest;
struct GetSystemCountersRequestGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern GetSystemCountersRequestGlobalsTypeInternal GetSystemCountersRequest_globals_;
extern const ::google::protobuf::internal::ClassDataFull GetSystemCountersRequest_class_data_;
#else
extern const GetSystemCountersRequestGlobalsTypeInternal GetSystemCountersRequest_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class GetTotalTrafficCountersRequest;
struct GetTotalTrafficCountersRequestGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern GetTotalTrafficCountersRequestGlobalsTypeInternal GetTotalTrafficCountersRequest_globals_;
extern const ::google::protobuf::internal::ClassDataFull GetTotalTrafficCountersRequest_class_data_;
#else
extern const GetTotalTrafficCountersRequestGlobalsTypeInternal GetTotalTrafficCountersRequest_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class HostCounter;
struct HostCounterGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern HostCounterGlobalsTypeInternal HostCounter_globals_;
extern const ::google::protobuf::internal::ClassDataFull HostCounter_class_data_;
#else
extern const HostCounterGlobalsTypeInternal HostCounter_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class HostGroup;
struct HostGroupGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern HostGroupGlobalsTypeInternal HostGroup_globals_;
extern const ::google::protobuf::internal::ClassDataFull HostGroup_class_data_;
#else
extern const HostGroupGlobalsTypeInternal HostGroup_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class Network;
struct NetworkGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern NetworkGlobalsTypeInternal Network_globals_;
extern const ::google::protobuf::internal::ClassDataFull Network_class_data_;
#else
extern const NetworkGlobalsTypeInternal Network_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class NetworkCounter;
struct NetworkCounterGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern NetworkCounterGlobalsTypeInternal NetworkCounter_globals_;
extern const ::google::protobuf::internal::ClassDataFull NetworkCounter_class_data_;
#else
extern const NetworkCounterGlobalsTypeInternal NetworkCounter_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class PerProtocolCounters;
struct PerProtocolCountersGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern PerProtocolCountersGlobalsTypeInternal PerProtocolCounters_globals_;
extern const ::google::protobuf::internal::ClassDataFull PerProtocolCounters_class_data_;
#else
extern const PerProtocolCountersGlobalsTypeInternal PerProtocolCounters_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class PingReply;
struct PingReplyGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern PingReplyGlobalsTypeInternal PingReply_globals_;
extern const ::google::protobuf::internal::ClassDataFull PingReply_class_data_;
#else
extern const PingReplyGlobalsTypeInternal PingReply_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class PingRequest;
struct PingRequestGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern PingRequestGlobalsTypeInternal PingRequest_globals_;
extern const ::google::protobuf::internal::ClassDataFull PingRequest_class_data_;
#else
extern const PingRequestGlobalsTypeInternal PingRequest_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class SixtyFourNamedCounter;
struct SixtyFourNamedCounterGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern SixtyFourNamedCounterGlobalsTypeInternal SixtyFourNamedCounter_globals_;
extern const ::google::protobuf::internal::ClassDataFull SixtyFourNamedCounter_class_data_;
#else
extern const SixtyFourNamedCounterGlobalsTypeInternal SixtyFourNamedCounter_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class SystemCounter;
struct SystemCounterGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern SystemCounterGlobalsTypeInternal SystemCounter_globals_;
extern const ::google::protobuf::internal::ClassDataFull SystemCounter_class_data_;
#else
extern const SystemCounterGlobalsTypeInternal SystemCounter_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
}  // namespace fastnetmoninternal
namespace google {
namespace protobuf {
template <>
internal::EnumTraitsT<::fastnetmoninternal::OrderingDirection_internal_data_>
    internal::EnumTraitsImpl::value<::fastnetmoninternal::OrderingDirection>;
template <>
internal::EnumTraitsT<::fastnetmoninternal::OrderingType_internal_data_>
    internal::EnumTraitsImpl::value<::fastnetmoninternal::OrderingType>;
}  // namespace protobuf
}  // namespace google

namespace fastnetmoninternal {
enum OrderingType : int {
  BYTES = 0,
  PACKETS = 1,
  FLOWS = 2,
  OrderingType_INT_MIN_SENTINEL_DO_NOT_USE_ =
      ::std::numeric_limits<::int32_t>::min(),
  OrderingType_INT_MAX_SENTINEL_DO_NOT_USE_ =
      ::std::numeric_limits<::int32_t>::max(),
};

extern const uint32_t OrderingType_internal_data_[];
inline constexpr OrderingType OrderingType_MIN =
    static_cast<OrderingType>(0);
inline constexpr OrderingType OrderingType_MAX =
    static_cast<OrderingType>(2);
[[nodiscard]] inline bool OrderingType_IsValid(int value) {
  return 0 <= value && value <= 2;
}
inline constexpr int OrderingType_ARRAYSIZE = 2 + 1;
[[nodiscard]] const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL
OrderingType_descriptor();
[[nodiscard]] inline auto ProtobufInternalGetEnumDescriptor(OrderingType) {
  return OrderingType_descriptor();
}
template <typename T>
[[nodiscard]] const ::std::string& OrderingType_Name(T value) {
  static_assert(::std::is_same<T, OrderingType>::value ||
                    ::std::is_integral<T>::value,
                "Incorrect type passed to OrderingType_Name().");
  return OrderingType_Name(static_cast<OrderingType>(value));
}
template <>
[[nodiscard]] inline const ::std::string& OrderingType_Name(OrderingType value) {
  return ::google::protobuf::internal::NameOfDenseEnum<OrderingType_descriptor, 0, 2>(
      static_cast<int>(value));
}
[[nodiscard]] inline bool OrderingType_Parse(
    ::absl::string_view name, OrderingType* PROTOBUF_NONNULL value) {
  return ::google::protobuf::internal::ParseNamedEnum<OrderingType>(OrderingType_descriptor(), name,
                                           value);
}
enum OrderingDirection : int {
  INCOMING = 0,
  OUTGOING = 1,
  OrderingDirection_INT_MIN_SENTINEL_DO_NOT_USE_ =
      ::std::numeric_limits<::int32_t>::min(),
  OrderingDirection_INT_MAX_SENTINEL_DO_NOT_USE_ =
      ::std::numeric_limits<::int32_t>::max(),
};

extern const uint32_t OrderingDirection_internal_data_[];
inline constexpr OrderingDirection OrderingDirection_MIN =
    static_cast<OrderingDirection>(0);
inline constexpr OrderingDirection OrderingDirection_MAX =
    static_cast<OrderingDirection>(1);
[[nodiscard]] inline bool OrderingDirection_IsValid(int value) {
  return 0 <= value && value <= 1;
}
inline constexpr int OrderingDirection_ARRAYSIZE = 1 + 1;
[[nodiscard]] const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL
OrderingDirection_descriptor();
[[nodiscard]] inline auto ProtobufInternalGetEnumDescriptor(OrderingDirection) {
  return OrderingDirection_descriptor();
}
template <typename T>
[[nodiscard]] const ::std::string& OrderingDirection_Name(T value) {
  static_assert(::std::is_same<T, OrderingDirection>::value ||
                    ::std::is_integral<T>::value,
                "Incorrect type passed to OrderingDirection_Name().");
  return OrderingDirection_Name(static_cast<OrderingDirection>(value));
}
template <>
[[nodiscard]] inline const ::std::string& OrderingDirection_Name(OrderingDirection value) {
  return ::google::protobuf::internal::NameOfDenseEnum<OrderingDirection_descriptor, 0, 1>(
      static_cast<int>(value));
}
[[nodiscard]] inline bool OrderingDirection_Parse(
    ::absl::string_view name, OrderingDirection* PROTOBUF_NONNULL value) {
  return ::google::protobuf::internal::ParseNamedEnum<OrderingDirection>(OrderingDirection_descriptor(), name,
                                           value);
}
using ::google::protobuf::internal::generated_enum::AbslParseFlag;
using ::google::protobuf::internal::generated_enum::AbslUnparseFlag;

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


// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED SystemCounter final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.SystemCounter) */ {
 public:
  inline SystemCounter() : SystemCounter(nullptr) {}
  ~SystemCounter() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(SystemCounter* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(SystemCounter));
  }
#endif

  template <typename = void>
  explicit constexpr SystemCounter(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline SystemCounter(const SystemCounter& from) : SystemCounter(nullptr, from) {}
  inline SystemCounter(SystemCounter&& from) noexcept : SystemCounter(nullptr, ::std::move(from)) {}
  inline SystemCounter& operator=(const SystemCounter& from) {
    CopyFrom(from);
    return *this;
  }
  inline SystemCounter& operator=(SystemCounter&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const SystemCounter& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<SystemCounter>(&SystemCounter_globals_);
  }
  static constexpr int kIndexInFileMessages = 16;
  friend void swap(SystemCounter& a, SystemCounter& b) { a.Swap(&b); }
  inline void Swap(SystemCounter* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(SystemCounter* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] SystemCounter* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<SystemCounter>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const SystemCounter& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const SystemCounter& from) { SystemCounter::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(SystemCounter* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.SystemCounter"; }

  explicit SystemCounter(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  SystemCounter(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const SystemCounter& from);
  SystemCounter(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, SystemCounter&& from) noexcept
      : SystemCounter(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kCounterNameFieldNumber = 1,
    kCounterTypeFieldNumber = 2,
    kCounterUnitFieldNumber = 5,
    kCounterDescriptionFieldNumber = 6,
    kCounterValueFieldNumber = 3,
    kCounterValueDoubleFieldNumber = 4,
  };
  // string counter_name = 1;
  void clear_counter_name() ;
  [[nodiscard]] const ::std::string& counter_name() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_counter_name(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_counter_name();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_counter_name();
  void set_allocated_counter_name(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_counter_name() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_counter_name(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_counter_name();

  public:
  // string counter_type = 2;
  void clear_counter_type() ;
  [[nodiscard]] const ::std::string& counter_type() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_counter_type(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_counter_type();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_counter_type();
  void set_allocated_counter_type(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_counter_type() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_counter_type(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_counter_type();

  public:
  // string counter_unit = 5;
  void clear_counter_unit() ;
  [[nodiscard]] const ::std::string& counter_unit() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_counter_unit(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_counter_unit();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_counter_unit();
  void set_allocated_counter_unit(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_counter_unit() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_counter_unit(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_counter_unit();

  public:
  // string counter_description = 6;
  void clear_counter_description() ;
  [[nodiscard]] const ::std::string& counter_description() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_counter_description(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_counter_description();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_counter_description();
  void set_allocated_counter_description(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_counter_description() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_counter_description(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_counter_description();

  public:
  // uint64 counter_value = 3;
  void clear_counter_value() ;
  [[nodiscard]] ::uint64_t counter_value() const;
  void set_counter_value(::uint64_t value);

  private:
  ::uint64_t _internal_counter_value() const;
  void _internal_set_counter_value(::uint64_t value);

  public:
  // double counter_value_double = 4;
  void clear_counter_value_double() ;
  [[nodiscard]] double counter_value_double() const;
  void set_counter_value_double(double value);

  private:
  double _internal_counter_value_double() const;
  void _internal_set_counter_value_double(double value);

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.SystemCounter)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<3, 6,
                          0, 96,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const SystemCounter& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr counter_name_;
    ::google::protobuf::internal::ArenaStringPtr counter_type_;
    ::google::protobuf::internal::ArenaStringPtr counter_unit_;
    ::google::protobuf::internal::ArenaStringPtr counter_description_;
    ::uint64_t counter_value_;
    double counter_value_double_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED SixtyFourNamedCounter final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.SixtyFourNamedCounter) */ {
 public:
  inline SixtyFourNamedCounter() : SixtyFourNamedCounter(nullptr) {}
  ~SixtyFourNamedCounter() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(SixtyFourNamedCounter* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(SixtyFourNamedCounter));
  }
#endif

  template <typename = void>
  explicit constexpr SixtyFourNamedCounter(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline SixtyFourNamedCounter(const SixtyFourNamedCounter& from) : SixtyFourNamedCounter(nullptr, from) {}
  inline SixtyFourNamedCounter(SixtyFourNamedCounter&& from) noexcept : SixtyFourNamedCounter(nullptr, ::std::move(from)) {}
  inline SixtyFourNamedCounter& operator=(const SixtyFourNamedCounter& from) {
    CopyFrom(from);
    return *this;
  }
  inline SixtyFourNamedCounter& operator=(SixtyFourNamedCounter&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const SixtyFourNamedCounter& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<SixtyFourNamedCounter>(&SixtyFourNamedCounter_globals_);
  }
  static constexpr int kIndexInFileMessages = 15;
  friend void swap(SixtyFourNamedCounter& a, SixtyFourNamedCounter& b) { a.Swap(&b); }
  inline void Swap(SixtyFourNamedCounter* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(SixtyFourNamedCounter* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] SixtyFourNamedCounter* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<SixtyFourNamedCounter>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const SixtyFourNamedCounter& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const SixtyFourNamedCounter& from) { SixtyFourNamedCounter::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(SixtyFourNamedCounter* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.SixtyFourNamedCounter"; }

  explicit SixtyFourNamedCounter(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  SixtyFourNamedCounter(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const SixtyFourNamedCounter& from);
  SixtyFourNamedCounter(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, SixtyFourNamedCounter&& from) noexcept
      : SixtyFourNamedCounter(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kCounterNameFieldNumber = 1,
    kCounterUnitFieldNumber = 3,
    kCounterDescriptionFieldNumber = 4,
    kCounterValueFieldNumber = 2,
  };
  // string counter_name = 1;
  void clear_counter_name() ;
  [[nodiscard]] const ::std::string& counter_name() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_counter_name(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_counter_name();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_counter_name();
  void set_allocated_counter_name(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_counter_name() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_counter_name(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_counter_name();

  public:
  // string counter_unit = 3;
  void clear_counter_unit() ;
  [[nodiscard]] const ::std::string& counter_unit() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_counter_unit(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_counter_unit();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_counter_unit();
  void set_allocated_counter_unit(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_counter_unit() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_counter_unit(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_counter_unit();

  public:
  // string counter_description = 4;
  void clear_counter_description() ;
  [[nodiscard]] const ::std::string& counter_description() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_counter_description(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_counter_description();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_counter_description();
  void set_allocated_counter_description(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_counter_description() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_counter_description(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_counter_description();

  public:
  // uint64 counter_value = 2;
  void clear_counter_value() ;
  [[nodiscard]] ::uint64_t counter_value() const;
  void set_counter_value(::uint64_t value);

  private:
  ::uint64_t _internal_counter_value() const;
  void _internal_set_counter_value(::uint64_t value);

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.SixtyFourNamedCounter)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<2, 4,
                          0, 92,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const SixtyFourNamedCounter& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr counter_name_;
    ::google::protobuf::internal::ArenaStringPtr counter_unit_;
    ::google::protobuf::internal::ArenaStringPtr counter_description_;
    ::uint64_t counter_value_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED PingRequest final : public ::google::protobuf::internal::ZeroFieldsBase
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.PingRequest) */ {
 public:
  inline PingRequest() : PingRequest(nullptr) {}

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(PingRequest* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(PingRequest));
  }
#endif

  template <typename = void>
  explicit constexpr PingRequest(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline PingRequest(const PingRequest& from) : PingRequest(nullptr, from) {}
  inline PingRequest(PingRequest&& from) noexcept : PingRequest(nullptr, ::std::move(from)) {}
  inline PingRequest& operator=(const PingRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline PingRequest& operator=(PingRequest&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const PingRequest& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<PingRequest>(&PingRequest_globals_);
  }
  static constexpr int kIndexInFileMessages = 2;
  friend void swap(PingRequest& a, PingRequest& b) { a.Swap(&b); }
  inline void Swap(PingRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PingRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] PingRequest* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::internal::ZeroFieldsBase::DefaultConstruct<PingRequest>(arena);
  }
  using ::google::protobuf::internal::ZeroFieldsBase::CopyFrom;
  inline void CopyFrom(const PingRequest& from) { ::google::protobuf::internal::ZeroFieldsBase::CopyImpl(*this, from); }
  using ::google::protobuf::internal::ZeroFieldsBase::MergeFrom;
  void MergeFrom(const PingRequest& from) { ::google::protobuf::internal::ZeroFieldsBase::MergeImpl(*this, from); }

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.PingRequest"; }

  explicit PingRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  PingRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PingRequest& from);
  PingRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PingRequest&& from) noexcept
      : PingRequest(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.PingRequest)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 0,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED PingReply final : public ::google::protobuf::internal::ZeroFieldsBase
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.PingReply) */ {
 public:
  inline PingReply() : PingReply(nullptr) {}

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(PingReply* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(PingReply));
  }
#endif

  template <typename = void>
  explicit constexpr PingReply(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline PingReply(const PingReply& from) : PingReply(nullptr, from) {}
  inline PingReply(PingReply&& from) noexcept : PingReply(nullptr, ::std::move(from)) {}
  inline PingReply& operator=(const PingReply& from) {
    CopyFrom(from);
    return *this;
  }
  inline PingReply& operator=(PingReply&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const PingReply& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<PingReply>(&PingReply_globals_);
  }
  static constexpr int kIndexInFileMessages = 3;
  friend void swap(PingReply& a, PingReply& b) { a.Swap(&b); }
  inline void Swap(PingReply* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PingReply* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] PingReply* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::internal::ZeroFieldsBase::DefaultConstruct<PingReply>(arena);
  }
  using ::google::protobuf::internal::ZeroFieldsBase::CopyFrom;
  inline void CopyFrom(const PingReply& from) { ::google::protobuf::internal::ZeroFieldsBase::CopyImpl(*this, from); }
  using ::google::protobuf::internal::ZeroFieldsBase::MergeFrom;
  void MergeFrom(const PingReply& from) { ::google::protobuf::internal::ZeroFieldsBase::MergeImpl(*this, from); }

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.PingReply"; }

  explicit PingReply(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  PingReply(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PingReply& from);
  PingReply(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PingReply&& from) noexcept
      : PingReply(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.PingReply)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 0,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED PerProtocolCounters final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.PerProtocolCounters) */ {
 public:
  inline PerProtocolCounters() : PerProtocolCounters(nullptr) {}
  ~PerProtocolCounters() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(PerProtocolCounters* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(PerProtocolCounters));
  }
#endif

  template <typename = void>
  explicit constexpr PerProtocolCounters(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline PerProtocolCounters(const PerProtocolCounters& from) : PerProtocolCounters(nullptr, from) {}
  inline PerProtocolCounters(PerProtocolCounters&& from) noexcept : PerProtocolCounters(nullptr, ::std::move(from)) {}
  inline PerProtocolCounters& operator=(const PerProtocolCounters& from) {
    CopyFrom(from);
    return *this;
  }
  inline PerProtocolCounters& operator=(PerProtocolCounters&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const PerProtocolCounters& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<PerProtocolCounters>(&PerProtocolCounters_globals_);
  }
  static constexpr int kIndexInFileMessages = 12;
  friend void swap(PerProtocolCounters& a, PerProtocolCounters& b) { a.Swap(&b); }
  inline void Swap(PerProtocolCounters* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PerProtocolCounters* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] PerProtocolCounters* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<PerProtocolCounters>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const PerProtocolCounters& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const PerProtocolCounters& from) { PerProtocolCounters::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(PerProtocolCounters* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.PerProtocolCounters"; }

  explicit PerProtocolCounters(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  PerProtocolCounters(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PerProtocolCounters& from);
  PerProtocolCounters(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PerProtocolCounters&& from) noexcept
      : PerProtocolCounters(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kInBytesFieldNumber = 1,
    kOutBytesFieldNumber = 2,
    kInPacketsFieldNumber = 3,
    kOutPacketsFieldNumber = 4,
    kInFlowsFieldNumber = 5,
    kOutFlowsFieldNumber = 6,
    kFragmentedInPacketsFieldNumber = 7,
    kFragmentedOutPacketsFieldNumber = 8,
    kFragmentedInBytesFieldNumber = 9,
    kFragmentedOutBytesFieldNumber = 10,
    kDroppedInPacketsFieldNumber = 11,
    kDroppedOutPacketsFieldNumber = 12,
    kDroppedInBytesFieldNumber = 13,
    kDroppedOutBytesFieldNumber = 14,
    kTcpInPacketsFieldNumber = 15,
    kTcpOutPacketsFieldNumber = 16,
    kTcpInBytesFieldNumber = 17,
    kTcpOutBytesFieldNumber = 18,
    kTcpSynInPacketsFieldNumber = 19,
    kTcpSynOutPacketsFieldNumber = 20,
    kTcpSynInBytesFieldNumber = 21,
    kTcpSynOutBytesFieldNumber = 22,
    kUdpInPacketsFieldNumber = 23,
    kUdpOutPacketsFieldNumber = 24,
    kUdpInBytesFieldNumber = 25,
    kUdpOutBytesFieldNumber = 26,
    kIcmpInPacketsFieldNumber = 27,
    kIcmpOutPacketsFieldNumber = 28,
    kIcmpInBytesFieldNumber = 29,
    kIcmpOutBytesFieldNumber = 30,
  };
  // uint64 in_bytes = 1;
  void clear_in_bytes() ;
  [[nodiscard]] ::uint64_t in_bytes() const;
  void set_in_bytes(::uint64_t value);

  private:
  ::uint64_t _internal_in_bytes() const;
  void _internal_set_in_bytes(::uint64_t value);

  public:
  // uint64 out_bytes = 2;
  void clear_out_bytes() ;
  [[nodiscard]] ::uint64_t out_bytes() const;
  void set_out_bytes(::uint64_t value);

  private:
  ::uint64_t _internal_out_bytes() const;
  void _internal_set_out_bytes(::uint64_t value);

  public:
  // uint64 in_packets = 3;
  void clear_in_packets() ;
  [[nodiscard]] ::uint64_t in_packets() const;
  void set_in_packets(::uint64_t value);

  private:
  ::uint64_t _internal_in_packets() const;
  void _internal_set_in_packets(::uint64_t value);

  public:
  // uint64 out_packets = 4;
  void clear_out_packets() ;
  [[nodiscard]] ::uint64_t out_packets() const;
  void set_out_packets(::uint64_t value);

  private:
  ::uint64_t _internal_out_packets() const;
  void _internal_set_out_packets(::uint64_t value);

  public:
  // uint64 in_flows = 5;
  void clear_in_flows() ;
  [[nodiscard]] ::uint64_t in_flows() const;
  void set_in_flows(::uint64_t value);

  private:
  ::uint64_t _internal_in_flows() const;
  void _internal_set_in_flows(::uint64_t value);

  public:
  // uint64 out_flows = 6;
  void clear_out_flows() ;
  [[nodiscard]] ::uint64_t out_flows() const;
  void set_out_flows(::uint64_t value);

  private:
  ::uint64_t _internal_out_flows() const;
  void _internal_set_out_flows(::uint64_t value);

  public:
  // uint64 fragmented_in_packets = 7;
  void clear_fragmented_in_packets() ;
  [[nodiscard]] ::uint64_t fragmented_in_packets() const;
  void set_fragmented_in_packets(::uint64_t value);

  private:
  ::uint64_t _internal_fragmented_in_packets() const;
  void _internal_set_fragmented_in_packets(::uint64_t value);

  public:
  // uint64 fragmented_out_packets = 8;
  void clear_fragmented_out_packets() ;
  [[nodiscard]] ::uint64_t fragmented_out_packets() const;
  void set_fragmented_out_packets(::uint64_t value);

  private:
  ::uint64_t _internal_fragmented_out_packets() const;
  void _internal_set_fragmented_out_packets(::uint64_t value);

  public:
  // uint64 fragmented_in_bytes = 9;
  void clear_fragmented_in_bytes() ;
  [[nodiscard]] ::uint64_t fragmented_in_bytes() const;
  void set_fragmented_in_bytes(::uint64_t value);

  private:
  ::uint64_t _internal_fragmented_in_bytes() const;
  void _internal_set_fragmented_in_bytes(::uint64_t value);

  public:
  // uint64 fragmented_out_bytes = 10;
  void clear_fragmented_out_bytes() ;
  [[nodiscard]] ::uint64_t fragmented_out_bytes() const;
  void set_fragmented_out_bytes(::uint64_t value);

  private:
  ::uint64_t _internal_fragmented_out_bytes() const;
  void _internal_set_fragmented_out_bytes(::uint64_t value);

  public:
  // uint64 dropped_in_packets = 11;
  void clear_dropped_in_packets() ;
  [[nodiscard]] ::uint64_t dropped_in_packets() const;
  void set_dropped_in_packets(::uint64_t value);

  private:
  ::uint64_t _internal_dropped_in_packets() const;
  void _internal_set_dropped_in_packets(::uint64_t value);

  public:
  // uint64 dropped_out_packets = 12;
  void clear_dropped_out_packets() ;
  [[nodiscard]] ::uint64_t dropped_out_packets() const;
  void set_dropped_out_packets(::uint64_t value);

  private:
  ::uint64_t _internal_dropped_out_packets() const;
  void _internal_set_dropped_out_packets(::uint64_t value);

  public:
  // uint64 dropped_in_bytes = 13;
  void clear_dropped_in_bytes() ;
  [[nodiscard]] ::uint64_t dropped_in_bytes() const;
  void set_dropped_in_bytes(::uint64_t value);

  private:
  ::uint64_t _internal_dropped_in_bytes() const;
  void _internal_set_dropped_in_bytes(::uint64_t value);

  public:
  // uint64 dropped_out_bytes = 14;
  void clear_dropped_out_bytes() ;
  [[nodiscard]] ::uint64_t dropped_out_bytes() const;
  void set_dropped_out_bytes(::uint64_t value);

  private:
  ::uint64_t _internal_dropped_out_bytes() const;
  void _internal_set_dropped_out_bytes(::uint64_t value);

  public:
  // uint64 tcp_in_packets = 15;
  void clear_tcp_in_packets() ;
  [[nodiscard]] ::uint64_t tcp_in_packets() const;
  void set_tcp_in_packets(::uint64_t value);

  private:
  ::uint64_t _internal_tcp_in_packets() const;
  void _internal_set_tcp_in_packets(::uint64_t value);

  public:
  // uint64 tcp_out_packets = 16;
  void clear_tcp_out_packets() ;
  [[nodiscard]] ::uint64_t tcp_out_packets() const;
  void set_tcp_out_packets(::uint64_t value);

  private:
  ::uint64_t _internal_tcp_out_packets() const;
  void _internal_set_tcp_out_packets(::uint64_t value);

  public:
  // uint64 tcp_in_bytes = 17;
  void clear_tcp_in_bytes() ;
  [[nodiscard]] ::uint64_t tcp_in_bytes() const;
  void set_tcp_in_bytes(::uint64_t value);

  private:
  ::uint64_t _internal_tcp_in_bytes() const;
  void _internal_set_tcp_in_bytes(::uint64_t value);

  public:
  // uint64 tcp_out_bytes = 18;
  void clear_tcp_out_bytes() ;
  [[nodiscard]] ::uint64_t tcp_out_bytes() const;
  void set_tcp_out_bytes(::uint64_t value);

  private:
  ::uint64_t _internal_tcp_out_bytes() const;
  void _internal_set_tcp_out_bytes(::uint64_t value);

  public:
  // uint64 tcp_syn_in_packets = 19;
  void clear_tcp_syn_in_packets() ;
  [[nodiscard]] ::uint64_t tcp_syn_in_packets() const;
  void set_tcp_syn_in_packets(::uint64_t value);

  private:
  ::uint64_t _internal_tcp_syn_in_packets() const;
  void _internal_set_tcp_syn_in_packets(::uint64_t value);

  public:
  // uint64 tcp_syn_out_packets = 20;
  void clear_tcp_syn_out_packets() ;
  [[nodiscard]] ::uint64_t tcp_syn_out_packets() const;
  void set_tcp_syn_out_packets(::uint64_t value);

  private:
  ::uint64_t _internal_tcp_syn_out_packets() const;
  void _internal_set_tcp_syn_out_packets(::uint64_t value);

  public:
  // uint64 tcp_syn_in_bytes = 21;
  void clear_tcp_syn_in_bytes() ;
  [[nodiscard]] ::uint64_t tcp_syn_in_bytes() const;
  void set_tcp_syn_in_bytes(::uint64_t value);

  private:
  ::uint64_t _internal_tcp_syn_in_bytes() const;
  void _internal_set_tcp_syn_in_bytes(::uint64_t value);

  public:
  // uint64 tcp_syn_out_bytes = 22;
  void clear_tcp_syn_out_bytes() ;
  [[nodiscard]] ::uint64_t tcp_syn_out_bytes() const;
  void set_tcp_syn_out_bytes(::uint64_t value);

  private:
  ::uint64_t _internal_tcp_syn_out_bytes() const;
  void _internal_set_tcp_syn_out_bytes(::uint64_t value);

  public:
  // uint64 udp_in_packets = 23;
  void clear_udp_in_packets() ;
  [[nodiscard]] ::uint64_t udp_in_packets() const;
  void set_udp_in_packets(::uint64_t value);

  private:
  ::uint64_t _internal_udp_in_packets() const;
  void _internal_set_udp_in_packets(::uint64_t value);

  public:
  // uint64 udp_out_packets = 24;
  void clear_udp_out_packets() ;
  [[nodiscard]] ::uint64_t udp_out_packets() const;
  void set_udp_out_packets(::uint64_t value);

  private:
  ::uint64_t _internal_udp_out_packets() const;
  void _internal_set_udp_out_packets(::uint64_t value);

  public:
  // uint64 udp_in_bytes = 25;
  void clear_udp_in_bytes() ;
  [[nodiscard]] ::uint64_t udp_in_bytes() const;
  void set_udp_in_bytes(::uint64_t value);

  private:
  ::uint64_t _internal_udp_in_bytes() const;
  void _internal_set_udp_in_bytes(::uint64_t value);

  public:
  // uint64 udp_out_bytes = 26;
  void clear_udp_out_bytes() ;
  [[nodiscard]] ::uint64_t udp_out_bytes() const;
  void set_udp_out_bytes(::uint64_t value);

  private:
  ::uint64_t _internal_udp_out_bytes() const;
  void _internal_set_udp_out_bytes(::uint64_t value);

  public:
  // uint64 icmp_in_packets = 27;
  void clear_icmp_in_packets() ;
  [[nodiscard]] ::uint64_t icmp_in_packets() const;
  void set_icmp_in_packets(::uint64_t value);

  private:
  ::uint64_t _internal_icmp_in_packets() const;
  void _internal_set_icmp_in_packets(::uint64_t value);

  public:
  // uint64 icmp_out_packets = 28;
  void clear_icmp_out_packets() ;
  [[nodiscard]] ::uint64_t icmp_out_packets() const;
  void set_icmp_out_packets(::uint64_t value);

  private:
  ::uint64_t _internal_icmp_out_packets() const;
  void _internal_set_icmp_out_packets(::uint64_t value);

  public:
  // uint64 icmp_in_bytes = 29;
  void clear_icmp_in_bytes() ;
  [[nodiscard]] ::uint64_t icmp_in_bytes() const;
  void set_icmp_in_bytes(::uint64_t value);

  private:
  ::uint64_t _internal_icmp_in_bytes() const;
  void _internal_set_icmp_in_bytes(::uint64_t value);

  public:
  // uint64 icmp_out_bytes = 30;
  void clear_icmp_out_bytes() ;
  [[nodiscard]] ::uint64_t icmp_out_bytes() const;
  void set_icmp_out_bytes(::uint64_t value);

  private:
  ::uint64_t _internal_icmp_out_bytes() const;
  void _internal_set_icmp_out_bytes(::uint64_t value);

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.PerProtocolCounters)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<5, 30,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const PerProtocolCounters& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::uint64_t in_bytes_;
    ::uint64_t out_bytes_;
    ::uint64_t in_packets_;
    ::uint64_t out_packets_;
    ::uint64_t in_flows_;
    ::uint64_t out_flows_;
    ::uint64_t fragmented_in_packets_;
    ::uint64_t fragmented_out_packets_;
    ::uint64_t fragmented_in_bytes_;
    ::uint64_t fragmented_out_bytes_;
    ::uint64_t dropped_in_packets_;
    ::uint64_t dropped_out_packets_;
    ::uint64_t dropped_in_bytes_;
    ::uint64_t dropped_out_bytes_;
    ::uint64_t tcp_in_packets_;
    ::uint64_t tcp_out_packets_;
    ::uint64_t tcp_in_bytes_;
    ::uint64_t tcp_out_bytes_;
    ::uint64_t tcp_syn_in_packets_;
    ::uint64_t tcp_syn_out_packets_;
    ::uint64_t tcp_syn_in_bytes_;
    ::uint64_t tcp_syn_out_bytes_;
    ::uint64_t udp_in_packets_;
    ::uint64_t udp_out_packets_;
    ::uint64_t udp_in_bytes_;
    ::uint64_t udp_out_bytes_;
    ::uint64_t icmp_in_packets_;
    ::uint64_t icmp_out_packets_;
    ::uint64_t icmp_in_bytes_;
    ::uint64_t icmp_out_bytes_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Network final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.Network) */ {
 public:
  inline Network() : Network(nullptr) {}
  ~Network() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(Network* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(Network));
  }
#endif

  template <typename = void>
  explicit constexpr Network(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline Network(const Network& from) : Network(nullptr, from) {}
  inline Network(Network&& from) noexcept : Network(nullptr, ::std::move(from)) {}
  inline Network& operator=(const Network& from) {
    CopyFrom(from);
    return *this;
  }
  inline Network& operator=(Network&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Network& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Network>(&Network_globals_);
  }
  static constexpr int kIndexInFileMessages = 6;
  friend void swap(Network& a, Network& b) { a.Swap(&b); }
  inline void Swap(Network* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(Network* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] Network* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<Network>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const Network& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const Network& from) { Network::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(Network* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.Network"; }

  explicit Network(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Network(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Network& from);
  Network(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Network&& from) noexcept
      : Network(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kNetworkFieldNumber = 1,
  };
  // string network = 1;
  void clear_network() ;
  [[nodiscard]] const ::std::string& network() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_network(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_network();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_network();
  void set_allocated_network(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_network() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_network(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_network();

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.Network)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 1,
                          0, 42,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const Network& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr network_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED HostGroup final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.HostGroup) */ {
 public:
  inline HostGroup() : HostGroup(nullptr) {}
  ~HostGroup() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(HostGroup* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(HostGroup));
  }
#endif

  template <typename = void>
  explicit constexpr HostGroup(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline HostGroup(const HostGroup& from) : HostGroup(nullptr, from) {}
  inline HostGroup(HostGroup&& from) noexcept : HostGroup(nullptr, ::std::move(from)) {}
  inline HostGroup& operator=(const HostGroup& from) {
    CopyFrom(from);
    return *this;
  }
  inline HostGroup& operator=(HostGroup&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const HostGroup& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<HostGroup>(&HostGroup_globals_);
  }
  static constexpr int kIndexInFileMessages = 4;
  friend void swap(HostGroup& a, HostGroup& b) { a.Swap(&b); }
  inline void Swap(HostGroup* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(HostGroup* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] HostGroup* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<HostGroup>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const HostGroup& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const HostGroup& from) { HostGroup::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(HostGroup* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.HostGroup"; }

  explicit HostGroup(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  HostGroup(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const HostGroup& from);
  HostGroup(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, HostGroup&& from) noexcept
      : HostGroup(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kHostGroupNameFieldNumber = 1,
  };
  // string host_group_name = 1;
  void clear_host_group_name() ;
  [[nodiscard]] const ::std::string& host_group_name() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_host_group_name(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_host_group_name();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_host_group_name();
  void set_allocated_host_group_name(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_host_group_name() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_host_group_name(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_host_group_name();

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.HostGroup)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 1,
                          0, 52,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const HostGroup& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr host_group_name_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED GetTotalTrafficCountersRequest final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.GetTotalTrafficCountersRequest) */ {
 public:
  inline GetTotalTrafficCountersRequest() : GetTotalTrafficCountersRequest(nullptr) {}
  ~GetTotalTrafficCountersRequest() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(GetTotalTrafficCountersRequest* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(GetTotalTrafficCountersRequest));
  }
#endif

  template <typename = void>
  explicit constexpr GetTotalTrafficCountersRequest(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline GetTotalTrafficCountersRequest(const GetTotalTrafficCountersRequest& from) : GetTotalTrafficCountersRequest(nullptr, from) {}
  inline GetTotalTrafficCountersRequest(GetTotalTrafficCountersRequest&& from) noexcept : GetTotalTrafficCountersRequest(nullptr, ::std::move(from)) {}
  inline GetTotalTrafficCountersRequest& operator=(const GetTotalTrafficCountersRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline GetTotalTrafficCountersRequest& operator=(GetTotalTrafficCountersRequest&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const GetTotalTrafficCountersRequest& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<GetTotalTrafficCountersRequest>(&GetTotalTrafficCountersRequest_globals_);
  }
  static constexpr int kIndexInFileMessages = 14;
  friend void swap(GetTotalTrafficCountersRequest& a, GetTotalTrafficCountersRequest& b) { a.Swap(&b); }
  inline void Swap(GetTotalTrafficCountersRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(GetTotalTrafficCountersRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] GetTotalTrafficCountersRequest* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<GetTotalTrafficCountersRequest>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const GetTotalTrafficCountersRequest& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const GetTotalTrafficCountersRequest& from) { GetTotalTrafficCountersRequest::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(GetTotalTrafficCountersRequest* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.GetTotalTrafficCountersRequest"; }

  explicit GetTotalTrafficCountersRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  GetTotalTrafficCountersRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const GetTotalTrafficCountersRequest& from);
  GetTotalTrafficCountersRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, GetTotalTrafficCountersRequest&& from) noexcept
      : GetTotalTrafficCountersRequest(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kUnitFieldNumber = 2,
    kGetPerProtocolMetricsFieldNumber = 1,
  };
  // string unit = 2;
  void clear_unit() ;
  [[nodiscard]] const ::std::string& unit() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_unit(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_unit();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_unit();
  void set_allocated_unit(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_unit() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_unit(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_unit();

  public:
  // bool get_per_protocol_metrics = 1;
  void clear_get_per_protocol_metrics() ;
  [[nodiscard]] bool get_per_protocol_metrics() const;
  void set_get_per_protocol_metrics(bool value);

  private:
  bool _internal_get_per_protocol_metrics() const;
  void _internal_set_get_per_protocol_metrics(bool value);

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.GetTotalTrafficCountersRequest)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          0, 62,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const GetTotalTrafficCountersRequest& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr unit_;
    bool get_per_protocol_metrics_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED GetSystemCountersRequest final : public ::google::protobuf::internal::ZeroFieldsBase
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.GetSystemCountersRequest) */ {
 public:
  inline GetSystemCountersRequest() : GetSystemCountersRequest(nullptr) {}

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(GetSystemCountersRequest* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(GetSystemCountersRequest));
  }
#endif

  template <typename = void>
  explicit constexpr GetSystemCountersRequest(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline GetSystemCountersRequest(const GetSystemCountersRequest& from) : GetSystemCountersRequest(nullptr, from) {}
  inline GetSystemCountersRequest(GetSystemCountersRequest&& from) noexcept : GetSystemCountersRequest(nullptr, ::std::move(from)) {}
  inline GetSystemCountersRequest& operator=(const GetSystemCountersRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline GetSystemCountersRequest& operator=(GetSystemCountersRequest&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const GetSystemCountersRequest& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<GetSystemCountersRequest>(&GetSystemCountersRequest_globals_);
  }
  static constexpr int kIndexInFileMessages = 5;
  friend void swap(GetSystemCountersRequest& a, GetSystemCountersRequest& b) { a.Swap(&b); }
  inline void Swap(GetSystemCountersRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(GetSystemCountersRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] GetSystemCountersRequest* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::internal::ZeroFieldsBase::DefaultConstruct<GetSystemCountersRequest>(arena);
  }
  using ::google::protobuf::internal::ZeroFieldsBase::CopyFrom;
  inline void CopyFrom(const GetSystemCountersRequest& from) { ::google::protobuf::internal::ZeroFieldsBase::CopyImpl(*this, from); }
  using ::google::protobuf::internal::ZeroFieldsBase::MergeFrom;
  void MergeFrom(const GetSystemCountersRequest& from) { ::google::protobuf::internal::ZeroFieldsBase::MergeImpl(*this, from); }

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.GetSystemCountersRequest"; }

  explicit GetSystemCountersRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  GetSystemCountersRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const GetSystemCountersRequest& from);
  GetSystemCountersRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, GetSystemCountersRequest&& from) noexcept
      : GetSystemCountersRequest(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.GetSystemCountersRequest)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 0,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED GetRunningVersionRequest final : public ::google::protobuf::internal::ZeroFieldsBase
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.GetRunningVersionRequest) */ {
 public:
  inline GetRunningVersionRequest() : GetRunningVersionRequest(nullptr) {}

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(GetRunningVersionRequest* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(GetRunningVersionRequest));
  }
#endif

  template <typename = void>
  explicit constexpr GetRunningVersionRequest(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline GetRunningVersionRequest(const GetRunningVersionRequest& from) : GetRunningVersionRequest(nullptr, from) {}
  inline GetRunningVersionRequest(GetRunningVersionRequest&& from) noexcept : GetRunningVersionRequest(nullptr, ::std::move(from)) {}
  inline GetRunningVersionRequest& operator=(const GetRunningVersionRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline GetRunningVersionRequest& operator=(GetRunningVersionRequest&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const GetRunningVersionRequest& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<GetRunningVersionRequest>(&GetRunningVersionRequest_globals_);
  }
  static constexpr int kIndexInFileMessages = 0;
  friend void swap(GetRunningVersionRequest& a, GetRunningVersionRequest& b) { a.Swap(&b); }
  inline void Swap(GetRunningVersionRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(GetRunningVersionRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] GetRunningVersionRequest* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::internal::ZeroFieldsBase::DefaultConstruct<GetRunningVersionRequest>(arena);
  }
  using ::google::protobuf::internal::ZeroFieldsBase::CopyFrom;
  inline void CopyFrom(const GetRunningVersionRequest& from) { ::google::protobuf::internal::ZeroFieldsBase::CopyImpl(*this, from); }
  using ::google::protobuf::internal::ZeroFieldsBase::MergeFrom;
  void MergeFrom(const GetRunningVersionRequest& from) { ::google::protobuf::internal::ZeroFieldsBase::MergeImpl(*this, from); }

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.GetRunningVersionRequest"; }

  explicit GetRunningVersionRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  GetRunningVersionRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const GetRunningVersionRequest& from);
  GetRunningVersionRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, GetRunningVersionRequest&& from) noexcept
      : GetRunningVersionRequest(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.GetRunningVersionRequest)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 0,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED GetRunningVersionReply final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.GetRunningVersionReply) */ {
 public:
  inline GetRunningVersionReply() : GetRunningVersionReply(nullptr) {}
  ~GetRunningVersionReply() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(GetRunningVersionReply* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(GetRunningVersionReply));
  }
#endif

  template <typename = void>
  explicit constexpr GetRunningVersionReply(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline GetRunningVersionReply(const GetRunningVersionReply& from) : GetRunningVersionReply(nullptr, from) {}
  inline GetRunningVersionReply(GetRunningVersionReply&& from) noexcept : GetRunningVersionReply(nullptr, ::std::move(from)) {}
  inline GetRunningVersionReply& operator=(const GetRunningVersionReply& from) {
    CopyFrom(from);
    return *this;
  }
  inline GetRunningVersionReply& operator=(GetRunningVersionReply&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const GetRunningVersionReply& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<GetRunningVersionReply>(&GetRunningVersionReply_globals_);
  }
  static constexpr int kIndexInFileMessages = 1;
  friend void swap(GetRunningVersionReply& a, GetRunningVersionReply& b) { a.Swap(&b); }
  inline void Swap(GetRunningVersionReply* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(GetRunningVersionReply* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] GetRunningVersionReply* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<GetRunningVersionReply>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const GetRunningVersionReply& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const GetRunningVersionReply& from) { GetRunningVersionReply::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(GetRunningVersionReply* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.GetRunningVersionReply"; }

  explicit GetRunningVersionReply(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  GetRunningVersionReply(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const GetRunningVersionReply& from);
  GetRunningVersionReply(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, GetRunningVersionReply&& from) noexcept
      : GetRunningVersionReply(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kVersionMainFieldNumber = 1,
    kVersionGitFieldNumber = 2,
  };
  // string version_main = 1;
  void clear_version_main() ;
  [[nodiscard]] const ::std::string& version_main() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_version_main(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_version_main();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_version_main();
  void set_allocated_version_main(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_version_main() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_version_main(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_version_main();

  public:
  // string version_git = 2;
  void clear_version_git() ;
  [[nodiscard]] const ::std::string& version_git() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_version_git(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_version_git();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_version_git();
  void set_allocated_version_git(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_version_git() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_version_git(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_version_git();

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.GetRunningVersionReply)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          0, 73,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const GetRunningVersionReply& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr version_main_;
    ::google::protobuf::internal::ArenaStringPtr version_git_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED GetNetworkCountersV6Request final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.GetNetworkCountersV6Request) */ {
 public:
  inline GetNetworkCountersV6Request() : GetNetworkCountersV6Request(nullptr) {}
  ~GetNetworkCountersV6Request() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(GetNetworkCountersV6Request* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(GetNetworkCountersV6Request));
  }
#endif

  template <typename = void>
  explicit constexpr GetNetworkCountersV6Request(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline GetNetworkCountersV6Request(const GetNetworkCountersV6Request& from) : GetNetworkCountersV6Request(nullptr, from) {}
  inline GetNetworkCountersV6Request(GetNetworkCountersV6Request&& from) noexcept : GetNetworkCountersV6Request(nullptr, ::std::move(from)) {}
  inline GetNetworkCountersV6Request& operator=(const GetNetworkCountersV6Request& from) {
    CopyFrom(from);
    return *this;
  }
  inline GetNetworkCountersV6Request& operator=(GetNetworkCountersV6Request&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const GetNetworkCountersV6Request& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<GetNetworkCountersV6Request>(&GetNetworkCountersV6Request_globals_);
  }
  static constexpr int kIndexInFileMessages = 7;
  friend void swap(GetNetworkCountersV6Request& a, GetNetworkCountersV6Request& b) { a.Swap(&b); }
  inline void Swap(GetNetworkCountersV6Request* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(GetNetworkCountersV6Request* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] GetNetworkCountersV6Request* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<GetNetworkCountersV6Request>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const GetNetworkCountersV6Request& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const GetNetworkCountersV6Request& from) { GetNetworkCountersV6Request::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(GetNetworkCountersV6Request* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.GetNetworkCountersV6Request"; }

  explicit GetNetworkCountersV6Request(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  GetNetworkCountersV6Request(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const GetNetworkCountersV6Request& from);
  GetNetworkCountersV6Request(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, GetNetworkCountersV6Request&& from) noexcept
      : GetNetworkCountersV6Request(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kOrderByDirectionFieldNumber = 1,
    kOrderByFieldNumber = 2,
  };
  // .fastnetmoninternal.OrderingDirection order_by_direction = 1;
  void clear_order_by_direction() ;
  [[nodiscard]] ::fastnetmoninternal::OrderingDirection order_by_direction() const;
  void set_order_by_direction(::fastnetmoninternal::OrderingDirection value);

  private:
  ::fastnetmoninternal::OrderingDirection _internal_order_by_direction() const;
  void _internal_set_order_by_direction(::fastnetmoninternal::OrderingDirection value);

  public:
  // .fastnetmoninternal.OrderingType order_by = 2;
  void clear_order_by() ;
  [[nodiscard]] ::fastnetmoninternal::OrderingType order_by() const;
  void set_order_by(::fastnetmoninternal::OrderingType value);

  private:
  ::fastnetmoninternal::OrderingType _internal_order_by() const;
  void _internal_set_order_by(::fastnetmoninternal::OrderingType value);

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.GetNetworkCountersV6Request)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const GetNetworkCountersV6Request& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    int order_by_direction_;
    int order_by_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED GetNetworkCountersRequest final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.GetNetworkCountersRequest) */ {
 public:
  inline GetNetworkCountersRequest() : GetNetworkCountersRequest(nullptr) {}
  ~GetNetworkCountersRequest() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(GetNetworkCountersRequest* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(GetNetworkCountersRequest));
  }
#endif

  template <typename = void>
  explicit constexpr GetNetworkCountersRequest(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline GetNetworkCountersRequest(const GetNetworkCountersRequest& from) : GetNetworkCountersRequest(nullptr, from) {}
  inline GetNetworkCountersRequest(GetNetworkCountersRequest&& from) noexcept : GetNetworkCountersRequest(nullptr, ::std::move(from)) {}
  inline GetNetworkCountersRequest& operator=(const GetNetworkCountersRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline GetNetworkCountersRequest& operator=(GetNetworkCountersRequest&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const GetNetworkCountersRequest& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<GetNetworkCountersRequest>(&GetNetworkCountersRequest_globals_);
  }
  static constexpr int kIndexInFileMessages = 8;
  friend void swap(GetNetworkCountersRequest& a, GetNetworkCountersRequest& b) { a.Swap(&b); }
  inline void Swap(GetNetworkCountersRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(GetNetworkCountersRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] GetNetworkCountersRequest* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<GetNetworkCountersRequest>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const GetNetworkCountersRequest& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const GetNetworkCountersRequest& from) { GetNetworkCountersRequest::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(GetNetworkCountersRequest* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.GetNetworkCountersRequest"; }

  explicit GetNetworkCountersRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  GetNetworkCountersRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const GetNetworkCountersRequest& from);
  GetNetworkCountersRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, GetNetworkCountersRequest&& from) noexcept
      : GetNetworkCountersRequest(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kOrderByDirectionFieldNumber = 1,
    kOrderByFieldNumber = 2,
  };
  // .fastnetmoninternal.OrderingDirection order_by_direction = 1;
  void clear_order_by_direction() ;
  [[nodiscard]] ::fastnetmoninternal::OrderingDirection order_by_direction() const;
  void set_order_by_direction(::fastnetmoninternal::OrderingDirection value);

  private:
  ::fastnetmoninternal::OrderingDirection _internal_order_by_direction() const;
  void _internal_set_order_by_direction(::fastnetmoninternal::OrderingDirection value);

  public:
  // .fastnetmoninternal.OrderingType order_by = 2;
  void clear_order_by() ;
  [[nodiscard]] ::fastnetmoninternal::OrderingType order_by() const;
  void set_order_by(::fastnetmoninternal::OrderingType value);

  private:
  ::fastnetmoninternal::OrderingType _internal_order_by() const;
  void _internal_set_order_by(::fastnetmoninternal::OrderingType value);

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.GetNetworkCountersRequest)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const GetNetworkCountersRequest& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    int order_by_direction_;
    int order_by_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED GetHostCountersV6Request final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.GetHostCountersV6Request) */ {
 public:
  inline GetHostCountersV6Request() : GetHostCountersV6Request(nullptr) {}
  ~GetHostCountersV6Request() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(GetHostCountersV6Request* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(GetHostCountersV6Request));
  }
#endif

  template <typename = void>
  explicit constexpr GetHostCountersV6Request(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline GetHostCountersV6Request(const GetHostCountersV6Request& from) : GetHostCountersV6Request(nullptr, from) {}
  inline GetHostCountersV6Request(GetHostCountersV6Request&& from) noexcept : GetHostCountersV6Request(nullptr, ::std::move(from)) {}
  inline GetHostCountersV6Request& operator=(const GetHostCountersV6Request& from) {
    CopyFrom(from);
    return *this;
  }
  inline GetHostCountersV6Request& operator=(GetHostCountersV6Request&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const GetHostCountersV6Request& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<GetHostCountersV6Request>(&GetHostCountersV6Request_globals_);
  }
  static constexpr int kIndexInFileMessages = 9;
  friend void swap(GetHostCountersV6Request& a, GetHostCountersV6Request& b) { a.Swap(&b); }
  inline void Swap(GetHostCountersV6Request* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(GetHostCountersV6Request* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] GetHostCountersV6Request* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<GetHostCountersV6Request>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const GetHostCountersV6Request& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const GetHostCountersV6Request& from) { GetHostCountersV6Request::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(GetHostCountersV6Request* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.GetHostCountersV6Request"; }

  explicit GetHostCountersV6Request(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  GetHostCountersV6Request(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const GetHostCountersV6Request& from);
  GetHostCountersV6Request(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, GetHostCountersV6Request&& from) noexcept
      : GetHostCountersV6Request(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kOrderByDirectionFieldNumber = 1,
    kOrderByFieldNumber = 2,
    kNumberOfHostsFieldNumber = 3,
  };
  // .fastnetmoninternal.OrderingDirection order_by_direction = 1;
  void clear_order_by_direction() ;
  [[nodiscard]] ::fastnetmoninternal::OrderingDirection order_by_direction() const;
  void set_order_by_direction(::fastnetmoninternal::OrderingDirection value);

  private:
  ::fastnetmoninternal::OrderingDirection _internal_order_by_direction() const;
  void _internal_set_order_by_direction(::fastnetmoninternal::OrderingDirection value);

  public:
  // .fastnetmoninternal.OrderingType order_by = 2;
  void clear_order_by() ;
  [[nodiscard]] ::fastnetmoninternal::OrderingType order_by() const;
  void set_order_by(::fastnetmoninternal::OrderingType value);

  private:
  ::fastnetmoninternal::OrderingType _internal_order_by() const;
  void _internal_set_order_by(::fastnetmoninternal::OrderingType value);

  public:
  // uint32 number_of_hosts = 3;
  void clear_number_of_hosts() ;
  [[nodiscard]] ::uint32_t number_of_hosts() const;
  void set_number_of_hosts(::uint32_t value);

  private:
  ::uint32_t _internal_number_of_hosts() const;
  void _internal_set_number_of_hosts(::uint32_t value);

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.GetHostCountersV6Request)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<2, 3,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const GetHostCountersV6Request& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    int order_by_direction_;
    int order_by_;
    ::uint32_t number_of_hosts_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED GetHostCountersRequest final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.GetHostCountersRequest) */ {
 public:
  inline GetHostCountersRequest() : GetHostCountersRequest(nullptr) {}
  ~GetHostCountersRequest() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(GetHostCountersRequest* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(GetHostCountersRequest));
  }
#endif

  template <typename = void>
  explicit constexpr GetHostCountersRequest(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline GetHostCountersRequest(const GetHostCountersRequest& from) : GetHostCountersRequest(nullptr, from) {}
  inline GetHostCountersRequest(GetHostCountersRequest&& from) noexcept : GetHostCountersRequest(nullptr, ::std::move(from)) {}
  inline GetHostCountersRequest& operator=(const GetHostCountersRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline GetHostCountersRequest& operator=(GetHostCountersRequest&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const GetHostCountersRequest& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<GetHostCountersRequest>(&GetHostCountersRequest_globals_);
  }
  static constexpr int kIndexInFileMessages = 10;
  friend void swap(GetHostCountersRequest& a, GetHostCountersRequest& b) { a.Swap(&b); }
  inline void Swap(GetHostCountersRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(GetHostCountersRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] GetHostCountersRequest* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<GetHostCountersRequest>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const GetHostCountersRequest& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const GetHostCountersRequest& from) { GetHostCountersRequest::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(GetHostCountersRequest* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.GetHostCountersRequest"; }

  explicit GetHostCountersRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  GetHostCountersRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const GetHostCountersRequest& from);
  GetHostCountersRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, GetHostCountersRequest&& from) noexcept
      : GetHostCountersRequest(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kOrderByDirectionFieldNumber = 1,
    kOrderByFieldNumber = 2,
    kNumberOfHostsFieldNumber = 3,
  };
  // .fastnetmoninternal.OrderingDirection order_by_direction = 1;
  void clear_order_by_direction() ;
  [[nodiscard]] ::fastnetmoninternal::OrderingDirection order_by_direction() const;
  void set_order_by_direction(::fastnetmoninternal::OrderingDirection value);

  private:
  ::fastnetmoninternal::OrderingDirection _internal_order_by_direction() const;
  void _internal_set_order_by_direction(::fastnetmoninternal::OrderingDirection value);

  public:
  // .fastnetmoninternal.OrderingType order_by = 2;
  void clear_order_by() ;
  [[nodiscard]] ::fastnetmoninternal::OrderingType order_by() const;
  void set_order_by(::fastnetmoninternal::OrderingType value);

  private:
  ::fastnetmoninternal::OrderingType _internal_order_by() const;
  void _internal_set_order_by(::fastnetmoninternal::OrderingType value);

  public:
  // uint32 number_of_hosts = 3;
  void clear_number_of_hosts() ;
  [[nodiscard]] ::uint32_t number_of_hosts() const;
  void set_number_of_hosts(::uint32_t value);

  private:
  ::uint32_t _internal_number_of_hosts() const;
  void _internal_set_number_of_hosts(::uint32_t value);

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.GetHostCountersRequest)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<2, 3,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const GetHostCountersRequest& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    int order_by_direction_;
    int order_by_;
    ::uint32_t number_of_hosts_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED ExecuteBanRequest final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.ExecuteBanRequest) */ {
 public:
  inline ExecuteBanRequest() : ExecuteBanRequest(nullptr) {}
  ~ExecuteBanRequest() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(ExecuteBanRequest* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(ExecuteBanRequest));
  }
#endif

  template <typename = void>
  explicit constexpr ExecuteBanRequest(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline ExecuteBanRequest(const ExecuteBanRequest& from) : ExecuteBanRequest(nullptr, from) {}
  inline ExecuteBanRequest(ExecuteBanRequest&& from) noexcept : ExecuteBanRequest(nullptr, ::std::move(from)) {}
  inline ExecuteBanRequest& operator=(const ExecuteBanRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline ExecuteBanRequest& operator=(ExecuteBanRequest&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const ExecuteBanRequest& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<ExecuteBanRequest>(&ExecuteBanRequest_globals_);
  }
  static constexpr int kIndexInFileMessages = 23;
  friend void swap(ExecuteBanRequest& a, ExecuteBanRequest& b) { a.Swap(&b); }
  inline void Swap(ExecuteBanRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(ExecuteBanRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] ExecuteBanRequest* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<ExecuteBanRequest>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const ExecuteBanRequest& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const ExecuteBanRequest& from) { ExecuteBanRequest::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(ExecuteBanRequest* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.ExecuteBanRequest"; }

  explicit ExecuteBanRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  ExecuteBanRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const ExecuteBanRequest& from);
  ExecuteBanRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, ExecuteBanRequest&& from) noexcept
      : ExecuteBanRequest(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kIpAddressFieldNumber = 1,
  };
  // string ip_address = 1;
  void clear_ip_address() ;
  [[nodiscard]] const ::std::string& ip_address() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_ip_address(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_ip_address();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_ip_address();
  void set_allocated_ip_address(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_ip_address() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_ip_address(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_ip_address();

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.ExecuteBanRequest)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 1,
                          0, 55,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const ExecuteBanRequest& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr ip_address_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED ExecuteBanReply final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.ExecuteBanReply) */ {
 public:
  inline ExecuteBanReply() : ExecuteBanReply(nullptr) {}
  ~ExecuteBanReply() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(ExecuteBanReply* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(ExecuteBanReply));
  }
#endif

  template <typename = void>
  explicit constexpr ExecuteBanReply(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline ExecuteBanReply(const ExecuteBanReply& from) : ExecuteBanReply(nullptr, from) {}
  inline ExecuteBanReply(ExecuteBanReply&& from) noexcept : ExecuteBanReply(nullptr, ::std::move(from)) {}
  inline ExecuteBanReply& operator=(const ExecuteBanReply& from) {
    CopyFrom(from);
    return *this;
  }
  inline ExecuteBanReply& operator=(ExecuteBanReply&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const ExecuteBanReply& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<ExecuteBanReply>(&ExecuteBanReply_globals_);
  }
  static constexpr int kIndexInFileMessages = 24;
  friend void swap(ExecuteBanReply& a, ExecuteBanReply& b) { a.Swap(&b); }
  inline void Swap(ExecuteBanReply* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(ExecuteBanReply* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] ExecuteBanReply* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<ExecuteBanReply>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const ExecuteBanReply& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const ExecuteBanReply& from) { ExecuteBanReply::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(ExecuteBanReply* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.ExecuteBanReply"; }

  explicit ExecuteBanReply(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  ExecuteBanReply(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const ExecuteBanReply& from);
  ExecuteBanReply(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, ExecuteBanReply&& from) noexcept
      : ExecuteBanReply(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kResultFieldNumber = 1,
  };
  // bool result = 1;
  void clear_result() ;
  [[nodiscard]] bool result() const;
  void set_result(bool value);

  private:
  bool _internal_result() const;
  void _internal_set_result(bool value);

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.ExecuteBanReply)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 1,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const ExecuteBanReply& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    bool result_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED DisableMitigationRequest final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.DisableMitigationRequest) */ {
 public:
  inline DisableMitigationRequest() : DisableMitigationRequest(nullptr) {}
  ~DisableMitigationRequest() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(DisableMitigationRequest* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(DisableMitigationRequest));
  }
#endif

  template <typename = void>
  explicit constexpr DisableMitigationRequest(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline DisableMitigationRequest(const DisableMitigationRequest& from) : DisableMitigationRequest(nullptr, from) {}
  inline DisableMitigationRequest(DisableMitigationRequest&& from) noexcept : DisableMitigationRequest(nullptr, ::std::move(from)) {}
  inline DisableMitigationRequest& operator=(const DisableMitigationRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline DisableMitigationRequest& operator=(DisableMitigationRequest&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const DisableMitigationRequest& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<DisableMitigationRequest>(&DisableMitigationRequest_globals_);
  }
  static constexpr int kIndexInFileMessages = 17;
  friend void swap(DisableMitigationRequest& a, DisableMitigationRequest& b) { a.Swap(&b); }
  inline void Swap(DisableMitigationRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(DisableMitigationRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] DisableMitigationRequest* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<DisableMitigationRequest>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const DisableMitigationRequest& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const DisableMitigationRequest& from) { DisableMitigationRequest::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(DisableMitigationRequest* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.DisableMitigationRequest"; }

  explicit DisableMitigationRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  DisableMitigationRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const DisableMitigationRequest& from);
  DisableMitigationRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, DisableMitigationRequest&& from) noexcept
      : DisableMitigationRequest(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kMitigationUuidFieldNumber = 1,
  };
  // string mitigation_uuid = 1;
  void clear_mitigation_uuid() ;
  [[nodiscard]] const ::std::string& mitigation_uuid() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_mitigation_uuid(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_mitigation_uuid();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_mitigation_uuid();
  void set_allocated_mitigation_uuid(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_mitigation_uuid() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_mitigation_uuid(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_mitigation_uuid();

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.DisableMitigationRequest)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 1,
                          0, 67,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const DisableMitigationRequest& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr mitigation_uuid_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED DisableMitigationReply final : public ::google::protobuf::internal::ZeroFieldsBase
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.DisableMitigationReply) */ {
 public:
  inline DisableMitigationReply() : DisableMitigationReply(nullptr) {}

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(DisableMitigationReply* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(DisableMitigationReply));
  }
#endif

  template <typename = void>
  explicit constexpr DisableMitigationReply(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline DisableMitigationReply(const DisableMitigationReply& from) : DisableMitigationReply(nullptr, from) {}
  inline DisableMitigationReply(DisableMitigationReply&& from) noexcept : DisableMitigationReply(nullptr, ::std::move(from)) {}
  inline DisableMitigationReply& operator=(const DisableMitigationReply& from) {
    CopyFrom(from);
    return *this;
  }
  inline DisableMitigationReply& operator=(DisableMitigationReply&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const DisableMitigationReply& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<DisableMitigationReply>(&DisableMitigationReply_globals_);
  }
  static constexpr int kIndexInFileMessages = 18;
  friend void swap(DisableMitigationReply& a, DisableMitigationReply& b) { a.Swap(&b); }
  inline void Swap(DisableMitigationReply* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(DisableMitigationReply* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] DisableMitigationReply* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::internal::ZeroFieldsBase::DefaultConstruct<DisableMitigationReply>(arena);
  }
  using ::google::protobuf::internal::ZeroFieldsBase::CopyFrom;
  inline void CopyFrom(const DisableMitigationReply& from) { ::google::protobuf::internal::ZeroFieldsBase::CopyImpl(*this, from); }
  using ::google::protobuf::internal::ZeroFieldsBase::MergeFrom;
  void MergeFrom(const DisableMitigationReply& from) { ::google::protobuf::internal::ZeroFieldsBase::MergeImpl(*this, from); }

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.DisableMitigationReply"; }

  explicit DisableMitigationReply(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  DisableMitigationReply(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const DisableMitigationReply& from);
  DisableMitigationReply(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, DisableMitigationReply&& from) noexcept
      : DisableMitigationReply(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.DisableMitigationReply)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 0,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED BanListRequest final : public ::google::protobuf::internal::ZeroFieldsBase
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.BanListRequest) */ {
 public:
  inline BanListRequest() : BanListRequest(nullptr) {}

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(BanListRequest* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(BanListRequest));
  }
#endif

  template <typename = void>
  explicit constexpr BanListRequest(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline BanListRequest(const BanListRequest& from) : BanListRequest(nullptr, from) {}
  inline BanListRequest(BanListRequest&& from) noexcept : BanListRequest(nullptr, ::std::move(from)) {}
  inline BanListRequest& operator=(const BanListRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline BanListRequest& operator=(BanListRequest&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const BanListRequest& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<BanListRequest>(&BanListRequest_globals_);
  }
  static constexpr int kIndexInFileMessages = 19;
  friend void swap(BanListRequest& a, BanListRequest& b) { a.Swap(&b); }
  inline void Swap(BanListRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(BanListRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] BanListRequest* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::internal::ZeroFieldsBase::DefaultConstruct<BanListRequest>(arena);
  }
  using ::google::protobuf::internal::ZeroFieldsBase::CopyFrom;
  inline void CopyFrom(const BanListRequest& from) { ::google::protobuf::internal::ZeroFieldsBase::CopyImpl(*this, from); }
  using ::google::protobuf::internal::ZeroFieldsBase::MergeFrom;
  void MergeFrom(const BanListRequest& from) { ::google::protobuf::internal::ZeroFieldsBase::MergeImpl(*this, from); }

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.BanListRequest"; }

  explicit BanListRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  BanListRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const BanListRequest& from);
  BanListRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, BanListRequest&& from) noexcept
      : BanListRequest(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.BanListRequest)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 0,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED BanListReply final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.BanListReply) */ {
 public:
  inline BanListReply() : BanListReply(nullptr) {}
  ~BanListReply() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(BanListReply* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(BanListReply));
  }
#endif

  template <typename = void>
  explicit constexpr BanListReply(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline BanListReply(const BanListReply& from) : BanListReply(nullptr, from) {}
  inline BanListReply(BanListReply&& from) noexcept : BanListReply(nullptr, ::std::move(from)) {}
  inline BanListReply& operator=(const BanListReply& from) {
    CopyFrom(from);
    return *this;
  }
  inline BanListReply& operator=(BanListReply&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const BanListReply& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<BanListReply>(&BanListReply_globals_);
  }
  static constexpr int kIndexInFileMessages = 20;
  friend void swap(BanListReply& a, BanListReply& b) { a.Swap(&b); }
  inline void Swap(BanListReply* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(BanListReply* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] BanListReply* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<BanListReply>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const BanListReply& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const BanListReply& from) { BanListReply::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(BanListReply* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.BanListReply"; }

  explicit BanListReply(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  BanListReply(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const BanListReply& from);
  BanListReply(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, BanListReply&& from) noexcept
      : BanListReply(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kIpAddressFieldNumber = 1,
    kAnnounceUuidFieldNumber = 2,
  };
  // string ip_address = 1;
  void clear_ip_address() ;
  [[nodiscard]] const ::std::string& ip_address() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_ip_address(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_ip_address();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_ip_address();
  void set_allocated_ip_address(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_ip_address() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_ip_address(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_ip_address();

  public:
  // string announce_uuid = 2;
  void clear_announce_uuid() ;
  [[nodiscard]] const ::std::string& announce_uuid() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_announce_uuid(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_announce_uuid();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_announce_uuid();
  void set_allocated_announce_uuid(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_announce_uuid() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_announce_uuid(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_announce_uuid();

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.BanListReply)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          0, 63,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const BanListReply& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr ip_address_;
    ::google::protobuf::internal::ArenaStringPtr announce_uuid_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED BanListHostgroupRequest final : public ::google::protobuf::internal::ZeroFieldsBase
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.BanListHostgroupRequest) */ {
 public:
  inline BanListHostgroupRequest() : BanListHostgroupRequest(nullptr) {}

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(BanListHostgroupRequest* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(BanListHostgroupRequest));
  }
#endif

  template <typename = void>
  explicit constexpr BanListHostgroupRequest(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline BanListHostgroupRequest(const BanListHostgroupRequest& from) : BanListHostgroupRequest(nullptr, from) {}
  inline BanListHostgroupRequest(BanListHostgroupRequest&& from) noexcept : BanListHostgroupRequest(nullptr, ::std::move(from)) {}
  inline BanListHostgroupRequest& operator=(const BanListHostgroupRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline BanListHostgroupRequest& operator=(BanListHostgroupRequest&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const BanListHostgroupRequest& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<BanListHostgroupRequest>(&BanListHostgroupRequest_globals_);
  }
  static constexpr int kIndexInFileMessages = 21;
  friend void swap(BanListHostgroupRequest& a, BanListHostgroupRequest& b) { a.Swap(&b); }
  inline void Swap(BanListHostgroupRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(BanListHostgroupRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] BanListHostgroupRequest* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::internal::ZeroFieldsBase::DefaultConstruct<BanListHostgroupRequest>(arena);
  }
  using ::google::protobuf::internal::ZeroFieldsBase::CopyFrom;
  inline void CopyFrom(const BanListHostgroupRequest& from) { ::google::protobuf::internal::ZeroFieldsBase::CopyImpl(*this, from); }
  using ::google::protobuf::internal::ZeroFieldsBase::MergeFrom;
  void MergeFrom(const BanListHostgroupRequest& from) { ::google::protobuf::internal::ZeroFieldsBase::MergeImpl(*this, from); }

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.BanListHostgroupRequest"; }

  explicit BanListHostgroupRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  BanListHostgroupRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const BanListHostgroupRequest& from);
  BanListHostgroupRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, BanListHostgroupRequest&& from) noexcept
      : BanListHostgroupRequest(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.BanListHostgroupRequest)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 0,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED BanListHostgroupReply final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.BanListHostgroupReply) */ {
 public:
  inline BanListHostgroupReply() : BanListHostgroupReply(nullptr) {}
  ~BanListHostgroupReply() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(BanListHostgroupReply* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(BanListHostgroupReply));
  }
#endif

  template <typename = void>
  explicit constexpr BanListHostgroupReply(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline BanListHostgroupReply(const BanListHostgroupReply& from) : BanListHostgroupReply(nullptr, from) {}
  inline BanListHostgroupReply(BanListHostgroupReply&& from) noexcept : BanListHostgroupReply(nullptr, ::std::move(from)) {}
  inline BanListHostgroupReply& operator=(const BanListHostgroupReply& from) {
    CopyFrom(from);
    return *this;
  }
  inline BanListHostgroupReply& operator=(BanListHostgroupReply&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const BanListHostgroupReply& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<BanListHostgroupReply>(&BanListHostgroupReply_globals_);
  }
  static constexpr int kIndexInFileMessages = 22;
  friend void swap(BanListHostgroupReply& a, BanListHostgroupReply& b) { a.Swap(&b); }
  inline void Swap(BanListHostgroupReply* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(BanListHostgroupReply* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] BanListHostgroupReply* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<BanListHostgroupReply>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const BanListHostgroupReply& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const BanListHostgroupReply& from) { BanListHostgroupReply::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(BanListHostgroupReply* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.BanListHostgroupReply"; }

  explicit BanListHostgroupReply(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  BanListHostgroupReply(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const BanListHostgroupReply& from);
  BanListHostgroupReply(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, BanListHostgroupReply&& from) noexcept
      : BanListHostgroupReply(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kHostgroupNameFieldNumber = 1,
    kAnnounceUuidFieldNumber = 2,
  };
  // string hostgroup_name = 1;
  void clear_hostgroup_name() ;
  [[nodiscard]] const ::std::string& hostgroup_name() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_hostgroup_name(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_hostgroup_name();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_hostgroup_name();
  void set_allocated_hostgroup_name(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_hostgroup_name() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_hostgroup_name(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_hostgroup_name();

  public:
  // string announce_uuid = 2;
  void clear_announce_uuid() ;
  [[nodiscard]] const ::std::string& announce_uuid() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_announce_uuid(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_announce_uuid();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_announce_uuid();
  void set_allocated_announce_uuid(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_announce_uuid() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_announce_uuid(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_announce_uuid();

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.BanListHostgroupReply)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          0, 76,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const BanListHostgroupReply& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr hostgroup_name_;
    ::google::protobuf::internal::ArenaStringPtr announce_uuid_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED NetworkCounter final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.NetworkCounter) */ {
 public:
  inline NetworkCounter() : NetworkCounter(nullptr) {}
  ~NetworkCounter() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(NetworkCounter* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(NetworkCounter));
  }
#endif

  template <typename = void>
  explicit constexpr NetworkCounter(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline NetworkCounter(const NetworkCounter& from) : NetworkCounter(nullptr, from) {}
  inline NetworkCounter(NetworkCounter&& from) noexcept : NetworkCounter(nullptr, ::std::move(from)) {}
  inline NetworkCounter& operator=(const NetworkCounter& from) {
    CopyFrom(from);
    return *this;
  }
  inline NetworkCounter& operator=(NetworkCounter&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const NetworkCounter& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<NetworkCounter>(&NetworkCounter_globals_);
  }
  static constexpr int kIndexInFileMessages = 11;
  friend void swap(NetworkCounter& a, NetworkCounter& b) { a.Swap(&b); }
  inline void Swap(NetworkCounter* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(NetworkCounter* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] NetworkCounter* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<NetworkCounter>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const NetworkCounter& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const NetworkCounter& from) { NetworkCounter::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(NetworkCounter* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.NetworkCounter"; }

  explicit NetworkCounter(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  NetworkCounter(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const NetworkCounter& from);
  NetworkCounter(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, NetworkCounter&& from) noexcept
      : NetworkCounter(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kNetworkNameFieldNumber = 1,
    kMetricsFieldNumber = 2,
  };
  // string network_name = 1;
  void clear_network_name() ;
  [[nodiscard]] const ::std::string& network_name() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_network_name(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_network_name();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_network_name();
  void set_allocated_network_name(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_network_name() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_network_name(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_network_name();

  public:
  // .fastnetmoninternal.PerProtocolCounters metrics = 2;
  [[nodiscard]] bool has_metrics()
      const;
  void clear_metrics() ;
  [[nodiscard]] const ::fastnetmoninternal::PerProtocolCounters& metrics() const;
  [[nodiscard]] ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE release_metrics();
  ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NONNULL mutable_metrics();
  void set_allocated_metrics(::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_metrics(::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE value);
  ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE unsafe_arena_release_metrics();

  private:
  const ::fastnetmoninternal::PerProtocolCounters& _internal_metrics() const;
  ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NONNULL _internal_mutable_metrics();

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.NetworkCounter)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          1, 54,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const NetworkCounter& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr network_name_;
    ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE metrics_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED HostCounter final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:fastnetmoninternal.HostCounter) */ {
 public:
  inline HostCounter() : HostCounter(nullptr) {}
  ~HostCounter() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(HostCounter* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(HostCounter));
  }
#endif

  template <typename = void>
  explicit constexpr HostCounter(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline HostCounter(const HostCounter& from) : HostCounter(nullptr, from) {}
  inline HostCounter(HostCounter&& from) noexcept : HostCounter(nullptr, ::std::move(from)) {}
  inline HostCounter& operator=(const HostCounter& from) {
    CopyFrom(from);
    return *this;
  }
  inline HostCounter& operator=(HostCounter&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const HostCounter& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<HostCounter>(&HostCounter_globals_);
  }
  static constexpr int kIndexInFileMessages = 13;
  friend void swap(HostCounter& a, HostCounter& b) { a.Swap(&b); }
  inline void Swap(HostCounter* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(HostCounter* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  [[nodiscard]] HostCounter* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<HostCounter>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const HostCounter& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const HostCounter& from) { HostCounter::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  [[nodiscard]] bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  [[nodiscard]] static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  [[nodiscard]] static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(HostCounter* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "fastnetmoninternal.HostCounter"; }

  explicit HostCounter(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  HostCounter(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const HostCounter& from);
  HostCounter(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, HostCounter&& from) noexcept
      : HostCounter(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kHostNameFieldNumber = 1,
    kMetricsFieldNumber = 2,
  };
  // string host_name = 1;
  void clear_host_name() ;
  [[nodiscard]] const ::std::string& host_name() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_host_name(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_host_name();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_host_name();
  void set_allocated_host_name(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_host_name() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_host_name(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_host_name();

  public:
  // .fastnetmoninternal.PerProtocolCounters metrics = 2;
  [[nodiscard]] bool has_metrics()
      const;
  void clear_metrics() ;
  [[nodiscard]] const ::fastnetmoninternal::PerProtocolCounters& metrics() const;
  [[nodiscard]] ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE release_metrics();
  ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NONNULL mutable_metrics();
  void set_allocated_metrics(::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_metrics(::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE value);
  ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE unsafe_arena_release_metrics();

  private:
  const ::fastnetmoninternal::PerProtocolCounters& _internal_metrics() const;
  ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NONNULL _internal_mutable_metrics();

  public:
  // @@protoc_insertion_point(class_scope:fastnetmoninternal.HostCounter)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          1, 48,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const HostCounter& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr host_name_;
    ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE metrics_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_fastnetmon_5finternal_5fapi_2eproto;
};

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




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


#ifdef __GNUC__
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wstrict-aliasing"
#endif  // __GNUC__
// -------------------------------------------------------------------

// GetRunningVersionRequest

// -------------------------------------------------------------------

// GetRunningVersionReply

// string version_main = 1;
inline void GetRunningVersionReply::clear_version_main() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.version_main_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& GetRunningVersionReply::version_main() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.GetRunningVersionReply.version_main)
  return _internal_version_main();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void GetRunningVersionReply::set_version_main(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.version_main_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.GetRunningVersionReply.version_main)
}
inline ::std::string* PROTOBUF_NONNULL GetRunningVersionReply::mutable_version_main()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_version_main();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.GetRunningVersionReply.version_main)
  return _s;
}
inline const ::std::string& GetRunningVersionReply::_internal_version_main() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.version_main_.Get();
}
inline void GetRunningVersionReply::_internal_set_version_main(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.version_main_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL GetRunningVersionReply::_internal_mutable_version_main() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.version_main_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE GetRunningVersionReply::release_version_main() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.GetRunningVersionReply.version_main)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.version_main_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.version_main_.Set("", GetArena());
  }
  return released;
}
inline void GetRunningVersionReply::set_allocated_version_main(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.version_main_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.version_main_.IsDefault()) {
    _impl_.version_main_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.GetRunningVersionReply.version_main)
}

// string version_git = 2;
inline void GetRunningVersionReply::clear_version_git() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.version_git_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::std::string& GetRunningVersionReply::version_git() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.GetRunningVersionReply.version_git)
  return _internal_version_git();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void GetRunningVersionReply::set_version_git(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  _impl_.version_git_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.GetRunningVersionReply.version_git)
}
inline ::std::string* PROTOBUF_NONNULL GetRunningVersionReply::mutable_version_git()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::std::string* _s = _internal_mutable_version_git();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.GetRunningVersionReply.version_git)
  return _s;
}
inline const ::std::string& GetRunningVersionReply::_internal_version_git() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.version_git_.Get();
}
inline void GetRunningVersionReply::_internal_set_version_git(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.version_git_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL GetRunningVersionReply::_internal_mutable_version_git() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.version_git_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE GetRunningVersionReply::release_version_git() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.GetRunningVersionReply.version_git)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000002U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  auto* released = _impl_.version_git_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.version_git_.Set("", GetArena());
  }
  return released;
}
inline void GetRunningVersionReply::set_allocated_version_git(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }
  _impl_.version_git_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.version_git_.IsDefault()) {
    _impl_.version_git_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.GetRunningVersionReply.version_git)
}

// -------------------------------------------------------------------

// PingRequest

// -------------------------------------------------------------------

// PingReply

// -------------------------------------------------------------------

// HostGroup

// string host_group_name = 1;
inline void HostGroup::clear_host_group_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.host_group_name_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& HostGroup::host_group_name() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.HostGroup.host_group_name)
  return _internal_host_group_name();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void HostGroup::set_host_group_name(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.host_group_name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.HostGroup.host_group_name)
}
inline ::std::string* PROTOBUF_NONNULL HostGroup::mutable_host_group_name()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_host_group_name();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.HostGroup.host_group_name)
  return _s;
}
inline const ::std::string& HostGroup::_internal_host_group_name() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.host_group_name_.Get();
}
inline void HostGroup::_internal_set_host_group_name(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.host_group_name_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL HostGroup::_internal_mutable_host_group_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.host_group_name_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE HostGroup::release_host_group_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.HostGroup.host_group_name)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.host_group_name_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.host_group_name_.Set("", GetArena());
  }
  return released;
}
inline void HostGroup::set_allocated_host_group_name(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.host_group_name_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.host_group_name_.IsDefault()) {
    _impl_.host_group_name_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.HostGroup.host_group_name)
}

// -------------------------------------------------------------------

// GetSystemCountersRequest

// -------------------------------------------------------------------

// Network

// string network = 1;
inline void Network::clear_network() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.network_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& Network::network() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.Network.network)
  return _internal_network();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Network::set_network(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.network_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.Network.network)
}
inline ::std::string* PROTOBUF_NONNULL Network::mutable_network()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_network();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.Network.network)
  return _s;
}
inline const ::std::string& Network::_internal_network() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.network_.Get();
}
inline void Network::_internal_set_network(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.network_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Network::_internal_mutable_network() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.network_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Network::release_network() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.Network.network)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.network_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.network_.Set("", GetArena());
  }
  return released;
}
inline void Network::set_allocated_network(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.network_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.network_.IsDefault()) {
    _impl_.network_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.Network.network)
}

// -------------------------------------------------------------------

// GetNetworkCountersV6Request

// .fastnetmoninternal.OrderingDirection order_by_direction = 1;
inline void GetNetworkCountersV6Request::clear_order_by_direction() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_direction_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline ::fastnetmoninternal::OrderingDirection GetNetworkCountersV6Request::order_by_direction() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.GetNetworkCountersV6Request.order_by_direction)
  return _internal_order_by_direction();
}
inline void GetNetworkCountersV6Request::set_order_by_direction(::fastnetmoninternal::OrderingDirection value) {
  _internal_set_order_by_direction(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.GetNetworkCountersV6Request.order_by_direction)
}
inline ::fastnetmoninternal::OrderingDirection GetNetworkCountersV6Request::_internal_order_by_direction() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return static_cast<::fastnetmoninternal::OrderingDirection>(_impl_.order_by_direction_);
}
inline void GetNetworkCountersV6Request::_internal_set_order_by_direction(::fastnetmoninternal::OrderingDirection value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_direction_ = value;
}

// .fastnetmoninternal.OrderingType order_by = 2;
inline void GetNetworkCountersV6Request::clear_order_by() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline ::fastnetmoninternal::OrderingType GetNetworkCountersV6Request::order_by() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.GetNetworkCountersV6Request.order_by)
  return _internal_order_by();
}
inline void GetNetworkCountersV6Request::set_order_by(::fastnetmoninternal::OrderingType value) {
  _internal_set_order_by(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.GetNetworkCountersV6Request.order_by)
}
inline ::fastnetmoninternal::OrderingType GetNetworkCountersV6Request::_internal_order_by() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return static_cast<::fastnetmoninternal::OrderingType>(_impl_.order_by_);
}
inline void GetNetworkCountersV6Request::_internal_set_order_by(::fastnetmoninternal::OrderingType value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_ = value;
}

// -------------------------------------------------------------------

// GetNetworkCountersRequest

// .fastnetmoninternal.OrderingDirection order_by_direction = 1;
inline void GetNetworkCountersRequest::clear_order_by_direction() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_direction_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline ::fastnetmoninternal::OrderingDirection GetNetworkCountersRequest::order_by_direction() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.GetNetworkCountersRequest.order_by_direction)
  return _internal_order_by_direction();
}
inline void GetNetworkCountersRequest::set_order_by_direction(::fastnetmoninternal::OrderingDirection value) {
  _internal_set_order_by_direction(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.GetNetworkCountersRequest.order_by_direction)
}
inline ::fastnetmoninternal::OrderingDirection GetNetworkCountersRequest::_internal_order_by_direction() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return static_cast<::fastnetmoninternal::OrderingDirection>(_impl_.order_by_direction_);
}
inline void GetNetworkCountersRequest::_internal_set_order_by_direction(::fastnetmoninternal::OrderingDirection value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_direction_ = value;
}

// .fastnetmoninternal.OrderingType order_by = 2;
inline void GetNetworkCountersRequest::clear_order_by() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline ::fastnetmoninternal::OrderingType GetNetworkCountersRequest::order_by() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.GetNetworkCountersRequest.order_by)
  return _internal_order_by();
}
inline void GetNetworkCountersRequest::set_order_by(::fastnetmoninternal::OrderingType value) {
  _internal_set_order_by(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.GetNetworkCountersRequest.order_by)
}
inline ::fastnetmoninternal::OrderingType GetNetworkCountersRequest::_internal_order_by() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return static_cast<::fastnetmoninternal::OrderingType>(_impl_.order_by_);
}
inline void GetNetworkCountersRequest::_internal_set_order_by(::fastnetmoninternal::OrderingType value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_ = value;
}

// -------------------------------------------------------------------

// GetHostCountersV6Request

// .fastnetmoninternal.OrderingDirection order_by_direction = 1;
inline void GetHostCountersV6Request::clear_order_by_direction() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_direction_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline ::fastnetmoninternal::OrderingDirection GetHostCountersV6Request::order_by_direction() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.GetHostCountersV6Request.order_by_direction)
  return _internal_order_by_direction();
}
inline void GetHostCountersV6Request::set_order_by_direction(::fastnetmoninternal::OrderingDirection value) {
  _internal_set_order_by_direction(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.GetHostCountersV6Request.order_by_direction)
}
inline ::fastnetmoninternal::OrderingDirection GetHostCountersV6Request::_internal_order_by_direction() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return static_cast<::fastnetmoninternal::OrderingDirection>(_impl_.order_by_direction_);
}
inline void GetHostCountersV6Request::_internal_set_order_by_direction(::fastnetmoninternal::OrderingDirection value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_direction_ = value;
}

// .fastnetmoninternal.OrderingType order_by = 2;
inline void GetHostCountersV6Request::clear_order_by() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline ::fastnetmoninternal::OrderingType GetHostCountersV6Request::order_by() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.GetHostCountersV6Request.order_by)
  return _internal_order_by();
}
inline void GetHostCountersV6Request::set_order_by(::fastnetmoninternal::OrderingType value) {
  _internal_set_order_by(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.GetHostCountersV6Request.order_by)
}
inline ::fastnetmoninternal::OrderingType GetHostCountersV6Request::_internal_order_by() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return static_cast<::fastnetmoninternal::OrderingType>(_impl_.order_by_);
}
inline void GetHostCountersV6Request::_internal_set_order_by(::fastnetmoninternal::OrderingType value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_ = value;
}

// uint32 number_of_hosts = 3;
inline void GetHostCountersV6Request::clear_number_of_hosts() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.number_of_hosts_ = 0u;
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline ::uint32_t GetHostCountersV6Request::number_of_hosts() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.GetHostCountersV6Request.number_of_hosts)
  return _internal_number_of_hosts();
}
inline void GetHostCountersV6Request::set_number_of_hosts(::uint32_t value) {
  _internal_set_number_of_hosts(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.GetHostCountersV6Request.number_of_hosts)
}
inline ::uint32_t GetHostCountersV6Request::_internal_number_of_hosts() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.number_of_hosts_;
}
inline void GetHostCountersV6Request::_internal_set_number_of_hosts(::uint32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.number_of_hosts_ = value;
}

// -------------------------------------------------------------------

// GetHostCountersRequest

// .fastnetmoninternal.OrderingDirection order_by_direction = 1;
inline void GetHostCountersRequest::clear_order_by_direction() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_direction_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline ::fastnetmoninternal::OrderingDirection GetHostCountersRequest::order_by_direction() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.GetHostCountersRequest.order_by_direction)
  return _internal_order_by_direction();
}
inline void GetHostCountersRequest::set_order_by_direction(::fastnetmoninternal::OrderingDirection value) {
  _internal_set_order_by_direction(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.GetHostCountersRequest.order_by_direction)
}
inline ::fastnetmoninternal::OrderingDirection GetHostCountersRequest::_internal_order_by_direction() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return static_cast<::fastnetmoninternal::OrderingDirection>(_impl_.order_by_direction_);
}
inline void GetHostCountersRequest::_internal_set_order_by_direction(::fastnetmoninternal::OrderingDirection value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_direction_ = value;
}

// .fastnetmoninternal.OrderingType order_by = 2;
inline void GetHostCountersRequest::clear_order_by() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline ::fastnetmoninternal::OrderingType GetHostCountersRequest::order_by() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.GetHostCountersRequest.order_by)
  return _internal_order_by();
}
inline void GetHostCountersRequest::set_order_by(::fastnetmoninternal::OrderingType value) {
  _internal_set_order_by(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.GetHostCountersRequest.order_by)
}
inline ::fastnetmoninternal::OrderingType GetHostCountersRequest::_internal_order_by() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return static_cast<::fastnetmoninternal::OrderingType>(_impl_.order_by_);
}
inline void GetHostCountersRequest::_internal_set_order_by(::fastnetmoninternal::OrderingType value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.order_by_ = value;
}

// uint32 number_of_hosts = 3;
inline void GetHostCountersRequest::clear_number_of_hosts() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.number_of_hosts_ = 0u;
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline ::uint32_t GetHostCountersRequest::number_of_hosts() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.GetHostCountersRequest.number_of_hosts)
  return _internal_number_of_hosts();
}
inline void GetHostCountersRequest::set_number_of_hosts(::uint32_t value) {
  _internal_set_number_of_hosts(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.GetHostCountersRequest.number_of_hosts)
}
inline ::uint32_t GetHostCountersRequest::_internal_number_of_hosts() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.number_of_hosts_;
}
inline void GetHostCountersRequest::_internal_set_number_of_hosts(::uint32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.number_of_hosts_ = value;
}

// -------------------------------------------------------------------

// NetworkCounter

// string network_name = 1;
inline void NetworkCounter::clear_network_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.network_name_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& NetworkCounter::network_name() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.NetworkCounter.network_name)
  return _internal_network_name();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void NetworkCounter::set_network_name(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.network_name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.NetworkCounter.network_name)
}
inline ::std::string* PROTOBUF_NONNULL NetworkCounter::mutable_network_name()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_network_name();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.NetworkCounter.network_name)
  return _s;
}
inline const ::std::string& NetworkCounter::_internal_network_name() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.network_name_.Get();
}
inline void NetworkCounter::_internal_set_network_name(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.network_name_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL NetworkCounter::_internal_mutable_network_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.network_name_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE NetworkCounter::release_network_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.NetworkCounter.network_name)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.network_name_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.network_name_.Set("", GetArena());
  }
  return released;
}
inline void NetworkCounter::set_allocated_network_name(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.network_name_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.network_name_.IsDefault()) {
    _impl_.network_name_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.NetworkCounter.network_name)
}

// .fastnetmoninternal.PerProtocolCounters metrics = 2;
inline bool NetworkCounter::has_metrics() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
  PROTOBUF_ASSUME(!value || _impl_.metrics_ != nullptr);
  return value;
}
inline void NetworkCounter::clear_metrics() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.metrics_ != nullptr) _impl_.metrics_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::fastnetmoninternal::PerProtocolCounters& NetworkCounter::_internal_metrics() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::fastnetmoninternal::PerProtocolCounters* p = _impl_.metrics_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::fastnetmoninternal::PerProtocolCounters>(&::fastnetmoninternal::PerProtocolCounters_globals_);
}
inline const ::fastnetmoninternal::PerProtocolCounters& NetworkCounter::metrics() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.NetworkCounter.metrics)
  return _internal_metrics();
}
inline void NetworkCounter::unsafe_arena_set_allocated_metrics(
    ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.metrics_);
  }
  _impl_.metrics_ = reinterpret_cast<::fastnetmoninternal::PerProtocolCounters*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:fastnetmoninternal.NetworkCounter.metrics)
}
inline ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE NetworkCounter::release_metrics() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::fastnetmoninternal::PerProtocolCounters* released = _impl_.metrics_;
  _impl_.metrics_ = nullptr;
  if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
    auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
    released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    if (GetArena() == nullptr) {
      delete old;
    }
  } else {
    if (GetArena() != nullptr) {
      released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    }
  }
  return released;
}
inline ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE NetworkCounter::unsafe_arena_release_metrics() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.NetworkCounter.metrics)

  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::fastnetmoninternal::PerProtocolCounters* temp = _impl_.metrics_;
  _impl_.metrics_ = nullptr;
  return temp;
}
inline ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NONNULL NetworkCounter::_internal_mutable_metrics() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.metrics_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::fastnetmoninternal::PerProtocolCounters>(GetArena());
    _impl_.metrics_ = reinterpret_cast<::fastnetmoninternal::PerProtocolCounters*>(p);
  }
  return _impl_.metrics_;
}
inline ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NONNULL NetworkCounter::mutable_metrics()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::fastnetmoninternal::PerProtocolCounters* _msg = _internal_mutable_metrics();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.NetworkCounter.metrics)
  return _msg;
}
inline void NetworkCounter::set_allocated_metrics(::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE value) {
  ::google::protobuf::Arena* message_arena = GetArena();
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (message_arena == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.metrics_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = value->GetArena();
    if (message_arena != submessage_arena) {
      value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
    }
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }

  _impl_.metrics_ = reinterpret_cast<::fastnetmoninternal::PerProtocolCounters*>(value);
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.NetworkCounter.metrics)
}

// -------------------------------------------------------------------

// PerProtocolCounters

// uint64 in_bytes = 1;
inline void PerProtocolCounters::clear_in_bytes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.in_bytes_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline ::uint64_t PerProtocolCounters::in_bytes() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.in_bytes)
  return _internal_in_bytes();
}
inline void PerProtocolCounters::set_in_bytes(::uint64_t value) {
  _internal_set_in_bytes(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.in_bytes)
}
inline ::uint64_t PerProtocolCounters::_internal_in_bytes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.in_bytes_;
}
inline void PerProtocolCounters::_internal_set_in_bytes(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.in_bytes_ = value;
}

// uint64 out_bytes = 2;
inline void PerProtocolCounters::clear_out_bytes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.out_bytes_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline ::uint64_t PerProtocolCounters::out_bytes() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.out_bytes)
  return _internal_out_bytes();
}
inline void PerProtocolCounters::set_out_bytes(::uint64_t value) {
  _internal_set_out_bytes(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.out_bytes)
}
inline ::uint64_t PerProtocolCounters::_internal_out_bytes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.out_bytes_;
}
inline void PerProtocolCounters::_internal_set_out_bytes(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.out_bytes_ = value;
}

// uint64 in_packets = 3;
inline void PerProtocolCounters::clear_in_packets() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.in_packets_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline ::uint64_t PerProtocolCounters::in_packets() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.in_packets)
  return _internal_in_packets();
}
inline void PerProtocolCounters::set_in_packets(::uint64_t value) {
  _internal_set_in_packets(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.in_packets)
}
inline ::uint64_t PerProtocolCounters::_internal_in_packets() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.in_packets_;
}
inline void PerProtocolCounters::_internal_set_in_packets(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.in_packets_ = value;
}

// uint64 out_packets = 4;
inline void PerProtocolCounters::clear_out_packets() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.out_packets_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
}
inline ::uint64_t PerProtocolCounters::out_packets() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.out_packets)
  return _internal_out_packets();
}
inline void PerProtocolCounters::set_out_packets(::uint64_t value) {
  _internal_set_out_packets(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.out_packets)
}
inline ::uint64_t PerProtocolCounters::_internal_out_packets() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.out_packets_;
}
inline void PerProtocolCounters::_internal_set_out_packets(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.out_packets_ = value;
}

// uint64 in_flows = 5;
inline void PerProtocolCounters::clear_in_flows() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.in_flows_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
}
inline ::uint64_t PerProtocolCounters::in_flows() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.in_flows)
  return _internal_in_flows();
}
inline void PerProtocolCounters::set_in_flows(::uint64_t value) {
  _internal_set_in_flows(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.in_flows)
}
inline ::uint64_t PerProtocolCounters::_internal_in_flows() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.in_flows_;
}
inline void PerProtocolCounters::_internal_set_in_flows(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.in_flows_ = value;
}

// uint64 out_flows = 6;
inline void PerProtocolCounters::clear_out_flows() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.out_flows_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000020U);
}
inline ::uint64_t PerProtocolCounters::out_flows() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.out_flows)
  return _internal_out_flows();
}
inline void PerProtocolCounters::set_out_flows(::uint64_t value) {
  _internal_set_out_flows(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000020U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.out_flows)
}
inline ::uint64_t PerProtocolCounters::_internal_out_flows() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.out_flows_;
}
inline void PerProtocolCounters::_internal_set_out_flows(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.out_flows_ = value;
}

// uint64 fragmented_in_packets = 7;
inline void PerProtocolCounters::clear_fragmented_in_packets() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.fragmented_in_packets_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000040U);
}
inline ::uint64_t PerProtocolCounters::fragmented_in_packets() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.fragmented_in_packets)
  return _internal_fragmented_in_packets();
}
inline void PerProtocolCounters::set_fragmented_in_packets(::uint64_t value) {
  _internal_set_fragmented_in_packets(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000040U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.fragmented_in_packets)
}
inline ::uint64_t PerProtocolCounters::_internal_fragmented_in_packets() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.fragmented_in_packets_;
}
inline void PerProtocolCounters::_internal_set_fragmented_in_packets(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.fragmented_in_packets_ = value;
}

// uint64 fragmented_out_packets = 8;
inline void PerProtocolCounters::clear_fragmented_out_packets() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.fragmented_out_packets_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000080U);
}
inline ::uint64_t PerProtocolCounters::fragmented_out_packets() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.fragmented_out_packets)
  return _internal_fragmented_out_packets();
}
inline void PerProtocolCounters::set_fragmented_out_packets(::uint64_t value) {
  _internal_set_fragmented_out_packets(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000080U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.fragmented_out_packets)
}
inline ::uint64_t PerProtocolCounters::_internal_fragmented_out_packets() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.fragmented_out_packets_;
}
inline void PerProtocolCounters::_internal_set_fragmented_out_packets(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.fragmented_out_packets_ = value;
}

// uint64 fragmented_in_bytes = 9;
inline void PerProtocolCounters::clear_fragmented_in_bytes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.fragmented_in_bytes_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000100U);
}
inline ::uint64_t PerProtocolCounters::fragmented_in_bytes() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.fragmented_in_bytes)
  return _internal_fragmented_in_bytes();
}
inline void PerProtocolCounters::set_fragmented_in_bytes(::uint64_t value) {
  _internal_set_fragmented_in_bytes(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000100U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.fragmented_in_bytes)
}
inline ::uint64_t PerProtocolCounters::_internal_fragmented_in_bytes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.fragmented_in_bytes_;
}
inline void PerProtocolCounters::_internal_set_fragmented_in_bytes(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.fragmented_in_bytes_ = value;
}

// uint64 fragmented_out_bytes = 10;
inline void PerProtocolCounters::clear_fragmented_out_bytes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.fragmented_out_bytes_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000200U);
}
inline ::uint64_t PerProtocolCounters::fragmented_out_bytes() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.fragmented_out_bytes)
  return _internal_fragmented_out_bytes();
}
inline void PerProtocolCounters::set_fragmented_out_bytes(::uint64_t value) {
  _internal_set_fragmented_out_bytes(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000200U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.fragmented_out_bytes)
}
inline ::uint64_t PerProtocolCounters::_internal_fragmented_out_bytes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.fragmented_out_bytes_;
}
inline void PerProtocolCounters::_internal_set_fragmented_out_bytes(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.fragmented_out_bytes_ = value;
}

// uint64 dropped_in_packets = 11;
inline void PerProtocolCounters::clear_dropped_in_packets() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.dropped_in_packets_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000400U);
}
inline ::uint64_t PerProtocolCounters::dropped_in_packets() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.dropped_in_packets)
  return _internal_dropped_in_packets();
}
inline void PerProtocolCounters::set_dropped_in_packets(::uint64_t value) {
  _internal_set_dropped_in_packets(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000400U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.dropped_in_packets)
}
inline ::uint64_t PerProtocolCounters::_internal_dropped_in_packets() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.dropped_in_packets_;
}
inline void PerProtocolCounters::_internal_set_dropped_in_packets(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.dropped_in_packets_ = value;
}

// uint64 dropped_out_packets = 12;
inline void PerProtocolCounters::clear_dropped_out_packets() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.dropped_out_packets_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000800U);
}
inline ::uint64_t PerProtocolCounters::dropped_out_packets() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.dropped_out_packets)
  return _internal_dropped_out_packets();
}
inline void PerProtocolCounters::set_dropped_out_packets(::uint64_t value) {
  _internal_set_dropped_out_packets(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000800U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.dropped_out_packets)
}
inline ::uint64_t PerProtocolCounters::_internal_dropped_out_packets() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.dropped_out_packets_;
}
inline void PerProtocolCounters::_internal_set_dropped_out_packets(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.dropped_out_packets_ = value;
}

// uint64 dropped_in_bytes = 13;
inline void PerProtocolCounters::clear_dropped_in_bytes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.dropped_in_bytes_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00001000U);
}
inline ::uint64_t PerProtocolCounters::dropped_in_bytes() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.dropped_in_bytes)
  return _internal_dropped_in_bytes();
}
inline void PerProtocolCounters::set_dropped_in_bytes(::uint64_t value) {
  _internal_set_dropped_in_bytes(value);
  SetHasBit(_impl_._has_bits_[0], 0x00001000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.dropped_in_bytes)
}
inline ::uint64_t PerProtocolCounters::_internal_dropped_in_bytes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.dropped_in_bytes_;
}
inline void PerProtocolCounters::_internal_set_dropped_in_bytes(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.dropped_in_bytes_ = value;
}

// uint64 dropped_out_bytes = 14;
inline void PerProtocolCounters::clear_dropped_out_bytes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.dropped_out_bytes_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00002000U);
}
inline ::uint64_t PerProtocolCounters::dropped_out_bytes() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.dropped_out_bytes)
  return _internal_dropped_out_bytes();
}
inline void PerProtocolCounters::set_dropped_out_bytes(::uint64_t value) {
  _internal_set_dropped_out_bytes(value);
  SetHasBit(_impl_._has_bits_[0], 0x00002000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.dropped_out_bytes)
}
inline ::uint64_t PerProtocolCounters::_internal_dropped_out_bytes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.dropped_out_bytes_;
}
inline void PerProtocolCounters::_internal_set_dropped_out_bytes(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.dropped_out_bytes_ = value;
}

// uint64 tcp_in_packets = 15;
inline void PerProtocolCounters::clear_tcp_in_packets() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_in_packets_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00004000U);
}
inline ::uint64_t PerProtocolCounters::tcp_in_packets() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.tcp_in_packets)
  return _internal_tcp_in_packets();
}
inline void PerProtocolCounters::set_tcp_in_packets(::uint64_t value) {
  _internal_set_tcp_in_packets(value);
  SetHasBit(_impl_._has_bits_[0], 0x00004000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.tcp_in_packets)
}
inline ::uint64_t PerProtocolCounters::_internal_tcp_in_packets() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.tcp_in_packets_;
}
inline void PerProtocolCounters::_internal_set_tcp_in_packets(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_in_packets_ = value;
}

// uint64 tcp_out_packets = 16;
inline void PerProtocolCounters::clear_tcp_out_packets() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_out_packets_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00008000U);
}
inline ::uint64_t PerProtocolCounters::tcp_out_packets() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.tcp_out_packets)
  return _internal_tcp_out_packets();
}
inline void PerProtocolCounters::set_tcp_out_packets(::uint64_t value) {
  _internal_set_tcp_out_packets(value);
  SetHasBit(_impl_._has_bits_[0], 0x00008000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.tcp_out_packets)
}
inline ::uint64_t PerProtocolCounters::_internal_tcp_out_packets() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.tcp_out_packets_;
}
inline void PerProtocolCounters::_internal_set_tcp_out_packets(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_out_packets_ = value;
}

// uint64 tcp_in_bytes = 17;
inline void PerProtocolCounters::clear_tcp_in_bytes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_in_bytes_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00010000U);
}
inline ::uint64_t PerProtocolCounters::tcp_in_bytes() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.tcp_in_bytes)
  return _internal_tcp_in_bytes();
}
inline void PerProtocolCounters::set_tcp_in_bytes(::uint64_t value) {
  _internal_set_tcp_in_bytes(value);
  SetHasBit(_impl_._has_bits_[0], 0x00010000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.tcp_in_bytes)
}
inline ::uint64_t PerProtocolCounters::_internal_tcp_in_bytes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.tcp_in_bytes_;
}
inline void PerProtocolCounters::_internal_set_tcp_in_bytes(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_in_bytes_ = value;
}

// uint64 tcp_out_bytes = 18;
inline void PerProtocolCounters::clear_tcp_out_bytes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_out_bytes_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00020000U);
}
inline ::uint64_t PerProtocolCounters::tcp_out_bytes() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.tcp_out_bytes)
  return _internal_tcp_out_bytes();
}
inline void PerProtocolCounters::set_tcp_out_bytes(::uint64_t value) {
  _internal_set_tcp_out_bytes(value);
  SetHasBit(_impl_._has_bits_[0], 0x00020000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.tcp_out_bytes)
}
inline ::uint64_t PerProtocolCounters::_internal_tcp_out_bytes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.tcp_out_bytes_;
}
inline void PerProtocolCounters::_internal_set_tcp_out_bytes(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_out_bytes_ = value;
}

// uint64 tcp_syn_in_packets = 19;
inline void PerProtocolCounters::clear_tcp_syn_in_packets() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_syn_in_packets_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00040000U);
}
inline ::uint64_t PerProtocolCounters::tcp_syn_in_packets() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.tcp_syn_in_packets)
  return _internal_tcp_syn_in_packets();
}
inline void PerProtocolCounters::set_tcp_syn_in_packets(::uint64_t value) {
  _internal_set_tcp_syn_in_packets(value);
  SetHasBit(_impl_._has_bits_[0], 0x00040000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.tcp_syn_in_packets)
}
inline ::uint64_t PerProtocolCounters::_internal_tcp_syn_in_packets() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.tcp_syn_in_packets_;
}
inline void PerProtocolCounters::_internal_set_tcp_syn_in_packets(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_syn_in_packets_ = value;
}

// uint64 tcp_syn_out_packets = 20;
inline void PerProtocolCounters::clear_tcp_syn_out_packets() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_syn_out_packets_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00080000U);
}
inline ::uint64_t PerProtocolCounters::tcp_syn_out_packets() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.tcp_syn_out_packets)
  return _internal_tcp_syn_out_packets();
}
inline void PerProtocolCounters::set_tcp_syn_out_packets(::uint64_t value) {
  _internal_set_tcp_syn_out_packets(value);
  SetHasBit(_impl_._has_bits_[0], 0x00080000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.tcp_syn_out_packets)
}
inline ::uint64_t PerProtocolCounters::_internal_tcp_syn_out_packets() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.tcp_syn_out_packets_;
}
inline void PerProtocolCounters::_internal_set_tcp_syn_out_packets(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_syn_out_packets_ = value;
}

// uint64 tcp_syn_in_bytes = 21;
inline void PerProtocolCounters::clear_tcp_syn_in_bytes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_syn_in_bytes_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00100000U);
}
inline ::uint64_t PerProtocolCounters::tcp_syn_in_bytes() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.tcp_syn_in_bytes)
  return _internal_tcp_syn_in_bytes();
}
inline void PerProtocolCounters::set_tcp_syn_in_bytes(::uint64_t value) {
  _internal_set_tcp_syn_in_bytes(value);
  SetHasBit(_impl_._has_bits_[0], 0x00100000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.tcp_syn_in_bytes)
}
inline ::uint64_t PerProtocolCounters::_internal_tcp_syn_in_bytes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.tcp_syn_in_bytes_;
}
inline void PerProtocolCounters::_internal_set_tcp_syn_in_bytes(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_syn_in_bytes_ = value;
}

// uint64 tcp_syn_out_bytes = 22;
inline void PerProtocolCounters::clear_tcp_syn_out_bytes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_syn_out_bytes_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00200000U);
}
inline ::uint64_t PerProtocolCounters::tcp_syn_out_bytes() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.tcp_syn_out_bytes)
  return _internal_tcp_syn_out_bytes();
}
inline void PerProtocolCounters::set_tcp_syn_out_bytes(::uint64_t value) {
  _internal_set_tcp_syn_out_bytes(value);
  SetHasBit(_impl_._has_bits_[0], 0x00200000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.tcp_syn_out_bytes)
}
inline ::uint64_t PerProtocolCounters::_internal_tcp_syn_out_bytes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.tcp_syn_out_bytes_;
}
inline void PerProtocolCounters::_internal_set_tcp_syn_out_bytes(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tcp_syn_out_bytes_ = value;
}

// uint64 udp_in_packets = 23;
inline void PerProtocolCounters::clear_udp_in_packets() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.udp_in_packets_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00400000U);
}
inline ::uint64_t PerProtocolCounters::udp_in_packets() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.udp_in_packets)
  return _internal_udp_in_packets();
}
inline void PerProtocolCounters::set_udp_in_packets(::uint64_t value) {
  _internal_set_udp_in_packets(value);
  SetHasBit(_impl_._has_bits_[0], 0x00400000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.udp_in_packets)
}
inline ::uint64_t PerProtocolCounters::_internal_udp_in_packets() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.udp_in_packets_;
}
inline void PerProtocolCounters::_internal_set_udp_in_packets(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.udp_in_packets_ = value;
}

// uint64 udp_out_packets = 24;
inline void PerProtocolCounters::clear_udp_out_packets() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.udp_out_packets_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00800000U);
}
inline ::uint64_t PerProtocolCounters::udp_out_packets() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.udp_out_packets)
  return _internal_udp_out_packets();
}
inline void PerProtocolCounters::set_udp_out_packets(::uint64_t value) {
  _internal_set_udp_out_packets(value);
  SetHasBit(_impl_._has_bits_[0], 0x00800000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.udp_out_packets)
}
inline ::uint64_t PerProtocolCounters::_internal_udp_out_packets() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.udp_out_packets_;
}
inline void PerProtocolCounters::_internal_set_udp_out_packets(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.udp_out_packets_ = value;
}

// uint64 udp_in_bytes = 25;
inline void PerProtocolCounters::clear_udp_in_bytes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.udp_in_bytes_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x01000000U);
}
inline ::uint64_t PerProtocolCounters::udp_in_bytes() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.udp_in_bytes)
  return _internal_udp_in_bytes();
}
inline void PerProtocolCounters::set_udp_in_bytes(::uint64_t value) {
  _internal_set_udp_in_bytes(value);
  SetHasBit(_impl_._has_bits_[0], 0x01000000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.udp_in_bytes)
}
inline ::uint64_t PerProtocolCounters::_internal_udp_in_bytes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.udp_in_bytes_;
}
inline void PerProtocolCounters::_internal_set_udp_in_bytes(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.udp_in_bytes_ = value;
}

// uint64 udp_out_bytes = 26;
inline void PerProtocolCounters::clear_udp_out_bytes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.udp_out_bytes_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x02000000U);
}
inline ::uint64_t PerProtocolCounters::udp_out_bytes() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.udp_out_bytes)
  return _internal_udp_out_bytes();
}
inline void PerProtocolCounters::set_udp_out_bytes(::uint64_t value) {
  _internal_set_udp_out_bytes(value);
  SetHasBit(_impl_._has_bits_[0], 0x02000000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.udp_out_bytes)
}
inline ::uint64_t PerProtocolCounters::_internal_udp_out_bytes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.udp_out_bytes_;
}
inline void PerProtocolCounters::_internal_set_udp_out_bytes(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.udp_out_bytes_ = value;
}

// uint64 icmp_in_packets = 27;
inline void PerProtocolCounters::clear_icmp_in_packets() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.icmp_in_packets_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x04000000U);
}
inline ::uint64_t PerProtocolCounters::icmp_in_packets() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.icmp_in_packets)
  return _internal_icmp_in_packets();
}
inline void PerProtocolCounters::set_icmp_in_packets(::uint64_t value) {
  _internal_set_icmp_in_packets(value);
  SetHasBit(_impl_._has_bits_[0], 0x04000000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.icmp_in_packets)
}
inline ::uint64_t PerProtocolCounters::_internal_icmp_in_packets() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.icmp_in_packets_;
}
inline void PerProtocolCounters::_internal_set_icmp_in_packets(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.icmp_in_packets_ = value;
}

// uint64 icmp_out_packets = 28;
inline void PerProtocolCounters::clear_icmp_out_packets() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.icmp_out_packets_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x08000000U);
}
inline ::uint64_t PerProtocolCounters::icmp_out_packets() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.icmp_out_packets)
  return _internal_icmp_out_packets();
}
inline void PerProtocolCounters::set_icmp_out_packets(::uint64_t value) {
  _internal_set_icmp_out_packets(value);
  SetHasBit(_impl_._has_bits_[0], 0x08000000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.icmp_out_packets)
}
inline ::uint64_t PerProtocolCounters::_internal_icmp_out_packets() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.icmp_out_packets_;
}
inline void PerProtocolCounters::_internal_set_icmp_out_packets(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.icmp_out_packets_ = value;
}

// uint64 icmp_in_bytes = 29;
inline void PerProtocolCounters::clear_icmp_in_bytes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.icmp_in_bytes_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x10000000U);
}
inline ::uint64_t PerProtocolCounters::icmp_in_bytes() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.icmp_in_bytes)
  return _internal_icmp_in_bytes();
}
inline void PerProtocolCounters::set_icmp_in_bytes(::uint64_t value) {
  _internal_set_icmp_in_bytes(value);
  SetHasBit(_impl_._has_bits_[0], 0x10000000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.icmp_in_bytes)
}
inline ::uint64_t PerProtocolCounters::_internal_icmp_in_bytes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.icmp_in_bytes_;
}
inline void PerProtocolCounters::_internal_set_icmp_in_bytes(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.icmp_in_bytes_ = value;
}

// uint64 icmp_out_bytes = 30;
inline void PerProtocolCounters::clear_icmp_out_bytes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.icmp_out_bytes_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x20000000U);
}
inline ::uint64_t PerProtocolCounters::icmp_out_bytes() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.PerProtocolCounters.icmp_out_bytes)
  return _internal_icmp_out_bytes();
}
inline void PerProtocolCounters::set_icmp_out_bytes(::uint64_t value) {
  _internal_set_icmp_out_bytes(value);
  SetHasBit(_impl_._has_bits_[0], 0x20000000U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.PerProtocolCounters.icmp_out_bytes)
}
inline ::uint64_t PerProtocolCounters::_internal_icmp_out_bytes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.icmp_out_bytes_;
}
inline void PerProtocolCounters::_internal_set_icmp_out_bytes(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.icmp_out_bytes_ = value;
}

// -------------------------------------------------------------------

// HostCounter

// string host_name = 1;
inline void HostCounter::clear_host_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.host_name_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& HostCounter::host_name() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.HostCounter.host_name)
  return _internal_host_name();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void HostCounter::set_host_name(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.host_name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.HostCounter.host_name)
}
inline ::std::string* PROTOBUF_NONNULL HostCounter::mutable_host_name()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_host_name();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.HostCounter.host_name)
  return _s;
}
inline const ::std::string& HostCounter::_internal_host_name() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.host_name_.Get();
}
inline void HostCounter::_internal_set_host_name(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.host_name_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL HostCounter::_internal_mutable_host_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.host_name_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE HostCounter::release_host_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.HostCounter.host_name)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.host_name_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.host_name_.Set("", GetArena());
  }
  return released;
}
inline void HostCounter::set_allocated_host_name(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.host_name_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.host_name_.IsDefault()) {
    _impl_.host_name_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.HostCounter.host_name)
}

// .fastnetmoninternal.PerProtocolCounters metrics = 2;
inline bool HostCounter::has_metrics() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
  PROTOBUF_ASSUME(!value || _impl_.metrics_ != nullptr);
  return value;
}
inline void HostCounter::clear_metrics() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.metrics_ != nullptr) _impl_.metrics_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::fastnetmoninternal::PerProtocolCounters& HostCounter::_internal_metrics() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::fastnetmoninternal::PerProtocolCounters* p = _impl_.metrics_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::fastnetmoninternal::PerProtocolCounters>(&::fastnetmoninternal::PerProtocolCounters_globals_);
}
inline const ::fastnetmoninternal::PerProtocolCounters& HostCounter::metrics() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.HostCounter.metrics)
  return _internal_metrics();
}
inline void HostCounter::unsafe_arena_set_allocated_metrics(
    ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.metrics_);
  }
  _impl_.metrics_ = reinterpret_cast<::fastnetmoninternal::PerProtocolCounters*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:fastnetmoninternal.HostCounter.metrics)
}
inline ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE HostCounter::release_metrics() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::fastnetmoninternal::PerProtocolCounters* released = _impl_.metrics_;
  _impl_.metrics_ = nullptr;
  if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
    auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
    released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    if (GetArena() == nullptr) {
      delete old;
    }
  } else {
    if (GetArena() != nullptr) {
      released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    }
  }
  return released;
}
inline ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE HostCounter::unsafe_arena_release_metrics() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.HostCounter.metrics)

  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::fastnetmoninternal::PerProtocolCounters* temp = _impl_.metrics_;
  _impl_.metrics_ = nullptr;
  return temp;
}
inline ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NONNULL HostCounter::_internal_mutable_metrics() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.metrics_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::fastnetmoninternal::PerProtocolCounters>(GetArena());
    _impl_.metrics_ = reinterpret_cast<::fastnetmoninternal::PerProtocolCounters*>(p);
  }
  return _impl_.metrics_;
}
inline ::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NONNULL HostCounter::mutable_metrics()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::fastnetmoninternal::PerProtocolCounters* _msg = _internal_mutable_metrics();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.HostCounter.metrics)
  return _msg;
}
inline void HostCounter::set_allocated_metrics(::fastnetmoninternal::PerProtocolCounters* PROTOBUF_NULLABLE value) {
  ::google::protobuf::Arena* message_arena = GetArena();
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (message_arena == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.metrics_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = value->GetArena();
    if (message_arena != submessage_arena) {
      value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
    }
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }

  _impl_.metrics_ = reinterpret_cast<::fastnetmoninternal::PerProtocolCounters*>(value);
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.HostCounter.metrics)
}

// -------------------------------------------------------------------

// GetTotalTrafficCountersRequest

// bool get_per_protocol_metrics = 1;
inline void GetTotalTrafficCountersRequest::clear_get_per_protocol_metrics() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.get_per_protocol_metrics_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline bool GetTotalTrafficCountersRequest::get_per_protocol_metrics() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.GetTotalTrafficCountersRequest.get_per_protocol_metrics)
  return _internal_get_per_protocol_metrics();
}
inline void GetTotalTrafficCountersRequest::set_get_per_protocol_metrics(bool value) {
  _internal_set_get_per_protocol_metrics(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.GetTotalTrafficCountersRequest.get_per_protocol_metrics)
}
inline bool GetTotalTrafficCountersRequest::_internal_get_per_protocol_metrics() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.get_per_protocol_metrics_;
}
inline void GetTotalTrafficCountersRequest::_internal_set_get_per_protocol_metrics(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.get_per_protocol_metrics_ = value;
}

// string unit = 2;
inline void GetTotalTrafficCountersRequest::clear_unit() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.unit_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& GetTotalTrafficCountersRequest::unit() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.GetTotalTrafficCountersRequest.unit)
  return _internal_unit();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void GetTotalTrafficCountersRequest::set_unit(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.unit_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.GetTotalTrafficCountersRequest.unit)
}
inline ::std::string* PROTOBUF_NONNULL GetTotalTrafficCountersRequest::mutable_unit()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_unit();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.GetTotalTrafficCountersRequest.unit)
  return _s;
}
inline const ::std::string& GetTotalTrafficCountersRequest::_internal_unit() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.unit_.Get();
}
inline void GetTotalTrafficCountersRequest::_internal_set_unit(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.unit_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL GetTotalTrafficCountersRequest::_internal_mutable_unit() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.unit_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE GetTotalTrafficCountersRequest::release_unit() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.GetTotalTrafficCountersRequest.unit)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.unit_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.unit_.Set("", GetArena());
  }
  return released;
}
inline void GetTotalTrafficCountersRequest::set_allocated_unit(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.unit_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.unit_.IsDefault()) {
    _impl_.unit_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.GetTotalTrafficCountersRequest.unit)
}

// -------------------------------------------------------------------

// SixtyFourNamedCounter

// string counter_name = 1;
inline void SixtyFourNamedCounter::clear_counter_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_name_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& SixtyFourNamedCounter::counter_name() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.SixtyFourNamedCounter.counter_name)
  return _internal_counter_name();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void SixtyFourNamedCounter::set_counter_name(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.counter_name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.SixtyFourNamedCounter.counter_name)
}
inline ::std::string* PROTOBUF_NONNULL SixtyFourNamedCounter::mutable_counter_name()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_counter_name();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.SixtyFourNamedCounter.counter_name)
  return _s;
}
inline const ::std::string& SixtyFourNamedCounter::_internal_counter_name() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.counter_name_.Get();
}
inline void SixtyFourNamedCounter::_internal_set_counter_name(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_name_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL SixtyFourNamedCounter::_internal_mutable_counter_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.counter_name_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE SixtyFourNamedCounter::release_counter_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.SixtyFourNamedCounter.counter_name)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.counter_name_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.counter_name_.Set("", GetArena());
  }
  return released;
}
inline void SixtyFourNamedCounter::set_allocated_counter_name(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.counter_name_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.counter_name_.IsDefault()) {
    _impl_.counter_name_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.SixtyFourNamedCounter.counter_name)
}

// uint64 counter_value = 2;
inline void SixtyFourNamedCounter::clear_counter_value() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_value_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
}
inline ::uint64_t SixtyFourNamedCounter::counter_value() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.SixtyFourNamedCounter.counter_value)
  return _internal_counter_value();
}
inline void SixtyFourNamedCounter::set_counter_value(::uint64_t value) {
  _internal_set_counter_value(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.SixtyFourNamedCounter.counter_value)
}
inline ::uint64_t SixtyFourNamedCounter::_internal_counter_value() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.counter_value_;
}
inline void SixtyFourNamedCounter::_internal_set_counter_value(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_value_ = value;
}

// string counter_unit = 3;
inline void SixtyFourNamedCounter::clear_counter_unit() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_unit_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::std::string& SixtyFourNamedCounter::counter_unit() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.SixtyFourNamedCounter.counter_unit)
  return _internal_counter_unit();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void SixtyFourNamedCounter::set_counter_unit(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  _impl_.counter_unit_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.SixtyFourNamedCounter.counter_unit)
}
inline ::std::string* PROTOBUF_NONNULL SixtyFourNamedCounter::mutable_counter_unit()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::std::string* _s = _internal_mutable_counter_unit();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.SixtyFourNamedCounter.counter_unit)
  return _s;
}
inline const ::std::string& SixtyFourNamedCounter::_internal_counter_unit() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.counter_unit_.Get();
}
inline void SixtyFourNamedCounter::_internal_set_counter_unit(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_unit_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL SixtyFourNamedCounter::_internal_mutable_counter_unit() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.counter_unit_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE SixtyFourNamedCounter::release_counter_unit() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.SixtyFourNamedCounter.counter_unit)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000002U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  auto* released = _impl_.counter_unit_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.counter_unit_.Set("", GetArena());
  }
  return released;
}
inline void SixtyFourNamedCounter::set_allocated_counter_unit(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }
  _impl_.counter_unit_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.counter_unit_.IsDefault()) {
    _impl_.counter_unit_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.SixtyFourNamedCounter.counter_unit)
}

// string counter_description = 4;
inline void SixtyFourNamedCounter::clear_counter_description() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_description_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline const ::std::string& SixtyFourNamedCounter::counter_description() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.SixtyFourNamedCounter.counter_description)
  return _internal_counter_description();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void SixtyFourNamedCounter::set_counter_description(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  _impl_.counter_description_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.SixtyFourNamedCounter.counter_description)
}
inline ::std::string* PROTOBUF_NONNULL SixtyFourNamedCounter::mutable_counter_description()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  ::std::string* _s = _internal_mutable_counter_description();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.SixtyFourNamedCounter.counter_description)
  return _s;
}
inline const ::std::string& SixtyFourNamedCounter::_internal_counter_description() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.counter_description_.Get();
}
inline void SixtyFourNamedCounter::_internal_set_counter_description(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_description_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL SixtyFourNamedCounter::_internal_mutable_counter_description() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.counter_description_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE SixtyFourNamedCounter::release_counter_description() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.SixtyFourNamedCounter.counter_description)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000004U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  auto* released = _impl_.counter_description_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.counter_description_.Set("", GetArena());
  }
  return released;
}
inline void SixtyFourNamedCounter::set_allocated_counter_description(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  }
  _impl_.counter_description_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.counter_description_.IsDefault()) {
    _impl_.counter_description_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.SixtyFourNamedCounter.counter_description)
}

// -------------------------------------------------------------------

// SystemCounter

// string counter_name = 1;
inline void SystemCounter::clear_counter_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_name_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& SystemCounter::counter_name() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.SystemCounter.counter_name)
  return _internal_counter_name();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void SystemCounter::set_counter_name(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.counter_name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.SystemCounter.counter_name)
}
inline ::std::string* PROTOBUF_NONNULL SystemCounter::mutable_counter_name()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_counter_name();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.SystemCounter.counter_name)
  return _s;
}
inline const ::std::string& SystemCounter::_internal_counter_name() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.counter_name_.Get();
}
inline void SystemCounter::_internal_set_counter_name(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_name_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL SystemCounter::_internal_mutable_counter_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.counter_name_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE SystemCounter::release_counter_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.SystemCounter.counter_name)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.counter_name_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.counter_name_.Set("", GetArena());
  }
  return released;
}
inline void SystemCounter::set_allocated_counter_name(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.counter_name_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.counter_name_.IsDefault()) {
    _impl_.counter_name_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.SystemCounter.counter_name)
}

// string counter_type = 2;
inline void SystemCounter::clear_counter_type() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_type_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::std::string& SystemCounter::counter_type() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.SystemCounter.counter_type)
  return _internal_counter_type();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void SystemCounter::set_counter_type(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  _impl_.counter_type_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.SystemCounter.counter_type)
}
inline ::std::string* PROTOBUF_NONNULL SystemCounter::mutable_counter_type()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::std::string* _s = _internal_mutable_counter_type();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.SystemCounter.counter_type)
  return _s;
}
inline const ::std::string& SystemCounter::_internal_counter_type() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.counter_type_.Get();
}
inline void SystemCounter::_internal_set_counter_type(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_type_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL SystemCounter::_internal_mutable_counter_type() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.counter_type_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE SystemCounter::release_counter_type() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.SystemCounter.counter_type)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000002U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  auto* released = _impl_.counter_type_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.counter_type_.Set("", GetArena());
  }
  return released;
}
inline void SystemCounter::set_allocated_counter_type(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }
  _impl_.counter_type_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.counter_type_.IsDefault()) {
    _impl_.counter_type_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.SystemCounter.counter_type)
}

// uint64 counter_value = 3;
inline void SystemCounter::clear_counter_value() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_value_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
}
inline ::uint64_t SystemCounter::counter_value() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.SystemCounter.counter_value)
  return _internal_counter_value();
}
inline void SystemCounter::set_counter_value(::uint64_t value) {
  _internal_set_counter_value(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.SystemCounter.counter_value)
}
inline ::uint64_t SystemCounter::_internal_counter_value() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.counter_value_;
}
inline void SystemCounter::_internal_set_counter_value(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_value_ = value;
}

// double counter_value_double = 4;
inline void SystemCounter::clear_counter_value_double() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_value_double_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000020U);
}
inline double SystemCounter::counter_value_double() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.SystemCounter.counter_value_double)
  return _internal_counter_value_double();
}
inline void SystemCounter::set_counter_value_double(double value) {
  _internal_set_counter_value_double(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000020U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.SystemCounter.counter_value_double)
}
inline double SystemCounter::_internal_counter_value_double() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.counter_value_double_;
}
inline void SystemCounter::_internal_set_counter_value_double(double value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_value_double_ = value;
}

// string counter_unit = 5;
inline void SystemCounter::clear_counter_unit() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_unit_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline const ::std::string& SystemCounter::counter_unit() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.SystemCounter.counter_unit)
  return _internal_counter_unit();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void SystemCounter::set_counter_unit(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  _impl_.counter_unit_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.SystemCounter.counter_unit)
}
inline ::std::string* PROTOBUF_NONNULL SystemCounter::mutable_counter_unit()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  ::std::string* _s = _internal_mutable_counter_unit();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.SystemCounter.counter_unit)
  return _s;
}
inline const ::std::string& SystemCounter::_internal_counter_unit() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.counter_unit_.Get();
}
inline void SystemCounter::_internal_set_counter_unit(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_unit_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL SystemCounter::_internal_mutable_counter_unit() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.counter_unit_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE SystemCounter::release_counter_unit() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.SystemCounter.counter_unit)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000004U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  auto* released = _impl_.counter_unit_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.counter_unit_.Set("", GetArena());
  }
  return released;
}
inline void SystemCounter::set_allocated_counter_unit(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  }
  _impl_.counter_unit_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.counter_unit_.IsDefault()) {
    _impl_.counter_unit_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.SystemCounter.counter_unit)
}

// string counter_description = 6;
inline void SystemCounter::clear_counter_description() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_description_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
}
inline const ::std::string& SystemCounter::counter_description() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.SystemCounter.counter_description)
  return _internal_counter_description();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void SystemCounter::set_counter_description(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  _impl_.counter_description_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.SystemCounter.counter_description)
}
inline ::std::string* PROTOBUF_NONNULL SystemCounter::mutable_counter_description()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  ::std::string* _s = _internal_mutable_counter_description();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.SystemCounter.counter_description)
  return _s;
}
inline const ::std::string& SystemCounter::_internal_counter_description() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.counter_description_.Get();
}
inline void SystemCounter::_internal_set_counter_description(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.counter_description_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL SystemCounter::_internal_mutable_counter_description() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.counter_description_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE SystemCounter::release_counter_description() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.SystemCounter.counter_description)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000008U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  auto* released = _impl_.counter_description_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.counter_description_.Set("", GetArena());
  }
  return released;
}
inline void SystemCounter::set_allocated_counter_description(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  }
  _impl_.counter_description_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.counter_description_.IsDefault()) {
    _impl_.counter_description_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.SystemCounter.counter_description)
}

// -------------------------------------------------------------------

// DisableMitigationRequest

// string mitigation_uuid = 1;
inline void DisableMitigationRequest::clear_mitigation_uuid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mitigation_uuid_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& DisableMitigationRequest::mitigation_uuid() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.DisableMitigationRequest.mitigation_uuid)
  return _internal_mitigation_uuid();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void DisableMitigationRequest::set_mitigation_uuid(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.mitigation_uuid_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.DisableMitigationRequest.mitigation_uuid)
}
inline ::std::string* PROTOBUF_NONNULL DisableMitigationRequest::mutable_mitigation_uuid()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_mitigation_uuid();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.DisableMitigationRequest.mitigation_uuid)
  return _s;
}
inline const ::std::string& DisableMitigationRequest::_internal_mitigation_uuid() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.mitigation_uuid_.Get();
}
inline void DisableMitigationRequest::_internal_set_mitigation_uuid(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mitigation_uuid_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL DisableMitigationRequest::_internal_mutable_mitigation_uuid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.mitigation_uuid_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE DisableMitigationRequest::release_mitigation_uuid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.DisableMitigationRequest.mitigation_uuid)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.mitigation_uuid_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.mitigation_uuid_.Set("", GetArena());
  }
  return released;
}
inline void DisableMitigationRequest::set_allocated_mitigation_uuid(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.mitigation_uuid_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.mitigation_uuid_.IsDefault()) {
    _impl_.mitigation_uuid_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.DisableMitigationRequest.mitigation_uuid)
}

// -------------------------------------------------------------------

// DisableMitigationReply

// -------------------------------------------------------------------

// BanListRequest

// -------------------------------------------------------------------

// BanListReply

// string ip_address = 1;
inline void BanListReply::clear_ip_address() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.ip_address_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& BanListReply::ip_address() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.BanListReply.ip_address)
  return _internal_ip_address();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void BanListReply::set_ip_address(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.ip_address_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.BanListReply.ip_address)
}
inline ::std::string* PROTOBUF_NONNULL BanListReply::mutable_ip_address()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_ip_address();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.BanListReply.ip_address)
  return _s;
}
inline const ::std::string& BanListReply::_internal_ip_address() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.ip_address_.Get();
}
inline void BanListReply::_internal_set_ip_address(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.ip_address_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL BanListReply::_internal_mutable_ip_address() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.ip_address_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE BanListReply::release_ip_address() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.BanListReply.ip_address)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.ip_address_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.ip_address_.Set("", GetArena());
  }
  return released;
}
inline void BanListReply::set_allocated_ip_address(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.ip_address_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.ip_address_.IsDefault()) {
    _impl_.ip_address_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.BanListReply.ip_address)
}

// string announce_uuid = 2;
inline void BanListReply::clear_announce_uuid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.announce_uuid_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::std::string& BanListReply::announce_uuid() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.BanListReply.announce_uuid)
  return _internal_announce_uuid();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void BanListReply::set_announce_uuid(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  _impl_.announce_uuid_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.BanListReply.announce_uuid)
}
inline ::std::string* PROTOBUF_NONNULL BanListReply::mutable_announce_uuid()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::std::string* _s = _internal_mutable_announce_uuid();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.BanListReply.announce_uuid)
  return _s;
}
inline const ::std::string& BanListReply::_internal_announce_uuid() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.announce_uuid_.Get();
}
inline void BanListReply::_internal_set_announce_uuid(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.announce_uuid_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL BanListReply::_internal_mutable_announce_uuid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.announce_uuid_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE BanListReply::release_announce_uuid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.BanListReply.announce_uuid)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000002U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  auto* released = _impl_.announce_uuid_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.announce_uuid_.Set("", GetArena());
  }
  return released;
}
inline void BanListReply::set_allocated_announce_uuid(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }
  _impl_.announce_uuid_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.announce_uuid_.IsDefault()) {
    _impl_.announce_uuid_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.BanListReply.announce_uuid)
}

// -------------------------------------------------------------------

// BanListHostgroupRequest

// -------------------------------------------------------------------

// BanListHostgroupReply

// string hostgroup_name = 1;
inline void BanListHostgroupReply::clear_hostgroup_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.hostgroup_name_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& BanListHostgroupReply::hostgroup_name() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.BanListHostgroupReply.hostgroup_name)
  return _internal_hostgroup_name();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void BanListHostgroupReply::set_hostgroup_name(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.hostgroup_name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.BanListHostgroupReply.hostgroup_name)
}
inline ::std::string* PROTOBUF_NONNULL BanListHostgroupReply::mutable_hostgroup_name()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_hostgroup_name();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.BanListHostgroupReply.hostgroup_name)
  return _s;
}
inline const ::std::string& BanListHostgroupReply::_internal_hostgroup_name() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.hostgroup_name_.Get();
}
inline void BanListHostgroupReply::_internal_set_hostgroup_name(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.hostgroup_name_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL BanListHostgroupReply::_internal_mutable_hostgroup_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.hostgroup_name_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE BanListHostgroupReply::release_hostgroup_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.BanListHostgroupReply.hostgroup_name)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.hostgroup_name_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.hostgroup_name_.Set("", GetArena());
  }
  return released;
}
inline void BanListHostgroupReply::set_allocated_hostgroup_name(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.hostgroup_name_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.hostgroup_name_.IsDefault()) {
    _impl_.hostgroup_name_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.BanListHostgroupReply.hostgroup_name)
}

// string announce_uuid = 2;
inline void BanListHostgroupReply::clear_announce_uuid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.announce_uuid_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::std::string& BanListHostgroupReply::announce_uuid() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.BanListHostgroupReply.announce_uuid)
  return _internal_announce_uuid();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void BanListHostgroupReply::set_announce_uuid(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  _impl_.announce_uuid_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.BanListHostgroupReply.announce_uuid)
}
inline ::std::string* PROTOBUF_NONNULL BanListHostgroupReply::mutable_announce_uuid()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::std::string* _s = _internal_mutable_announce_uuid();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.BanListHostgroupReply.announce_uuid)
  return _s;
}
inline const ::std::string& BanListHostgroupReply::_internal_announce_uuid() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.announce_uuid_.Get();
}
inline void BanListHostgroupReply::_internal_set_announce_uuid(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.announce_uuid_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL BanListHostgroupReply::_internal_mutable_announce_uuid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.announce_uuid_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE BanListHostgroupReply::release_announce_uuid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.BanListHostgroupReply.announce_uuid)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000002U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  auto* released = _impl_.announce_uuid_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.announce_uuid_.Set("", GetArena());
  }
  return released;
}
inline void BanListHostgroupReply::set_allocated_announce_uuid(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }
  _impl_.announce_uuid_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.announce_uuid_.IsDefault()) {
    _impl_.announce_uuid_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.BanListHostgroupReply.announce_uuid)
}

// -------------------------------------------------------------------

// ExecuteBanRequest

// string ip_address = 1;
inline void ExecuteBanRequest::clear_ip_address() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.ip_address_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& ExecuteBanRequest::ip_address() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.ExecuteBanRequest.ip_address)
  return _internal_ip_address();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void ExecuteBanRequest::set_ip_address(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.ip_address_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:fastnetmoninternal.ExecuteBanRequest.ip_address)
}
inline ::std::string* PROTOBUF_NONNULL ExecuteBanRequest::mutable_ip_address()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_ip_address();
  // @@protoc_insertion_point(field_mutable:fastnetmoninternal.ExecuteBanRequest.ip_address)
  return _s;
}
inline const ::std::string& ExecuteBanRequest::_internal_ip_address() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.ip_address_.Get();
}
inline void ExecuteBanRequest::_internal_set_ip_address(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.ip_address_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL ExecuteBanRequest::_internal_mutable_ip_address() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.ip_address_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE ExecuteBanRequest::release_ip_address() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:fastnetmoninternal.ExecuteBanRequest.ip_address)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.ip_address_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.ip_address_.Set("", GetArena());
  }
  return released;
}
inline void ExecuteBanRequest::set_allocated_ip_address(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.ip_address_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.ip_address_.IsDefault()) {
    _impl_.ip_address_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:fastnetmoninternal.ExecuteBanRequest.ip_address)
}

// -------------------------------------------------------------------

// ExecuteBanReply

// bool result = 1;
inline void ExecuteBanReply::clear_result() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.result_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline bool ExecuteBanReply::result() const {
  // @@protoc_insertion_point(field_get:fastnetmoninternal.ExecuteBanReply.result)
  return _internal_result();
}
inline void ExecuteBanReply::set_result(bool value) {
  _internal_set_result(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_set:fastnetmoninternal.ExecuteBanReply.result)
}
inline bool ExecuteBanReply::_internal_result() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.result_;
}
inline void ExecuteBanReply::_internal_set_result(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.result_ = value;
}

#ifdef __GNUC__
#pragma GCC diagnostic pop
#endif  // __GNUC__

// @@protoc_insertion_point(namespace_scope)
}  // namespace fastnetmoninternal


namespace google {
namespace protobuf {

template <>
struct is_proto_enum<::fastnetmoninternal::OrderingType> : std::true_type {};
template <>
inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::fastnetmoninternal::OrderingType>() {
  return ::fastnetmoninternal::OrderingType_descriptor();
}
template <>
struct is_proto_enum<::fastnetmoninternal::OrderingDirection> : std::true_type {};
template <>
inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::fastnetmoninternal::OrderingDirection>() {
  return ::fastnetmoninternal::OrderingDirection_descriptor();
}

}  // namespace protobuf
}  // namespace google

// @@protoc_insertion_point(global_scope)

#include "google/protobuf/port_undef.inc"
// clang-format on

#endif  // fastnetmon_5finternal_5fapi_2eproto_2epb_2eh
